diff options
author | Steve L'Homme <slhomme@divxcorp.com> | 2006-08-29 07:34:58 +0000 |
---|---|---|
committer | Guillaume Poirier <gpoirier@mplayerhq.hu> | 2006-08-29 07:34:58 +0000 |
commit | 8ac17293d328b3642872445fc77e1f98eca90175 (patch) | |
tree | 01294c09093f60841c7e516d5ed07bba862d8330 | |
parent | 776fe466b280a960485509d92e1ece3656efb8f1 (diff) | |
download | ffmpeg-8ac17293d328b3642872445fc77e1f98eca90175.tar.gz |
AVISynth support, patch by Steve Lhomme % slhomme A divxcorp P com %
Original Thread:
Date: Aug 16, 2006 11:45 PM
Subject: [Ffmpeg-devel] [PATCH] AVISynth support
Originally committed as revision 6122 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | Changelog | 1 | ||||
-rwxr-xr-x | configure | 26 | ||||
-rw-r--r-- | libavformat/Makefile | 1 | ||||
-rw-r--r-- | libavformat/allformats.c | 3 | ||||
-rw-r--r-- | libavformat/allformats.h | 1 |
5 files changed, 32 insertions, 0 deletions
@@ -54,6 +54,7 @@ version <next> - MXF demuxer - VC-1/WMV3/WMV9 video decoder - MacIntel support +- AVISynth support version 0.4.9-pre1: @@ -58,6 +58,7 @@ show_help(){ echo " --enable-dc1394 enable IIDC-1394 grabbing using libdc1394" echo " and libraw1394 [default=no]" echo " --enable-swscaler software scaler support [default=no]" + echo " --enable-avisynth allow reading AVISynth script files [default=no]" echo " --enable-gpl allow use of GPL code, the resulting libav*" echo " and ffmpeg will be under GPL [default=no]" echo "" @@ -440,6 +441,7 @@ bigendian="no" inttypes="yes" emu_fast_int="no" vhook="default" +avisynth="no" dlfcn="no" dlopen="no" mpegaudio_hp="yes" @@ -769,6 +771,8 @@ for opt do ;; --enable-x264) x264="yes" ;; + --enable-avisynth) avisynth="yes"; + ;; --enable-dc1394) dc1394="yes" pkg_requires="$pkg_requires libraw1394" ;; @@ -1304,6 +1308,22 @@ EOF restore_flags fi +# Ugh, avisynth uses WINAPI calls. Generic tests won't work. +if enabled avisynth; then + save_flags + temp_extralibs -lvfw32 + check_ld <<EOF && add_extralibs -lvfw32 || die "ERROR: vfw32 not found" +#include <windows.h> +#include <vfw.h> +int main(){ + AVIFileInit(); + return 0; +} +EOF + restore_flags +fi + + # test for lrintf in math.h check_exec <<EOF && have_lrintf=yes || have_lrintf=no #define _ISOC9X_SOURCE 1 @@ -1527,6 +1547,7 @@ echo "a52 dlopened $a52bin" echo "DTS support $dts" echo "pp support $pp" echo "Software Scaler enabled $swscaler" +echo "AVISynth enabled $avisynth" echo "debug symbols $debug" echo "strip symbols $dostrip" echo "optimize $optimize" @@ -1935,6 +1956,11 @@ if test "$x264" = "yes" ; then echo "CONFIG_X264=yes" >> config.mak fi +if test "$avisynth" = "yes" ; then + echo "#define CONFIG_AVISYNTH 1" >> $TMPH + echo "CONFIG_AVISYNTH=yes" >> config.mak +fi + if test "$mingw32" = "yes" ; then echo "CONFIG_MINGW=yes" >> config.mak echo "HAVE_W32THREADS=yes" >> config.mak diff --git a/libavformat/Makefile b/libavformat/Makefile index eecbcb25bf..eb413951db 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -27,6 +27,7 @@ OBJS-$(CONFIG_AU_DEMUXER) += au.o riff.o OBJS-$(CONFIG_AU_MUXER) += au.o riff.o OBJS-$(CONFIG_AVI_DEMUXER) += avidec.o riff.o OBJS-$(CONFIG_AVI_MUXER) += avienc.o riff.o +OBJS-$(CONFIG_AVISYNTH) += avisynth.o OBJS-$(CONFIG_AVS_DEMUXER) += avs.o OBJS-$(CONFIG_CRC_MUXER) += crc.o OBJS-$(CONFIG_FRAMECRC_MUXER) += crc.o diff --git a/libavformat/allformats.c b/libavformat/allformats.c index 74d97cb81e..2cb66ffa98 100644 --- a/libavformat/allformats.c +++ b/libavformat/allformats.c @@ -83,6 +83,9 @@ void av_register_all(void) #ifdef CONFIG_AVI_MUXER av_register_output_format(&avi_muxer); #endif +#ifdef CONFIG_AVISYNTH + av_register_input_format(&avisynth_demuxer); +#endif #ifdef CONFIG_AVS_DEMUXER av_register_input_format(&avs_demuxer); #endif diff --git a/libavformat/allformats.h b/libavformat/allformats.h index 89e1ae7d06..946519ed71 100644 --- a/libavformat/allformats.h +++ b/libavformat/allformats.h @@ -16,6 +16,7 @@ extern AVInputFormat audio_demuxer; extern AVOutputFormat audio_muxer; extern AVInputFormat avi_demuxer; extern AVOutputFormat avi_muxer; +extern AVInputFormat avisynth_demuxer; extern AVInputFormat avs_demuxer; extern AVOutputFormat crc_muxer; extern AVOutputFormat framecrc_muxer; |