[SCM] libav/experimental: 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

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:50:21 UTC 2013


The following commit has been merged in the experimental branch:
commit 8ac17293d328b3642872445fc77e1f98eca90175
Author: Steve L'Homme <slhomme at divxcorp.com>
Date:   Tue Aug 29 07:34:58 2006 +0000

    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

diff --git a/Changelog b/Changelog
index a3c89dd..bfccb86 100644
--- a/Changelog
+++ b/Changelog
@@ -54,6 +54,7 @@ version <next>
 - MXF demuxer
 - VC-1/WMV3/WMV9 video decoder
 - MacIntel support
+- AVISynth support
 
 version 0.4.9-pre1:
 
diff --git a/configure b/configure
index 01f7678..3f61ad8 100755
--- a/configure
+++ b/configure
@@ -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 eecbcb2..eb41395 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 74d97cb..2cb66ff 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 89e1ae7..946519e 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;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list