[FFmpeg-devel] [PATCH] avformat: avisynth demuxer rewrite
Ramiro Polla
ramiro.polla at gmail.com
Sat Oct 20 18:53:32 CEST 2012
Hi,
On 09/22/2012 05:27 PM, d s wrote:
> Dear ffmpeg-devel,
>
> The current Avisynth demuxer is misnamed; rather, it would be more
> appropriately described as a VfW demuxer. This email contains a
> rewrite of the demuxer that uses the Avisynth library directly, with
> the following benefits:
>
> 1) useful error messages instead of video clips with error text
> 2) no dependency on VfW, and hence no requirement for the related SDKs/libraries
> 3) able to support AvxSynth (https://github.com/avxsynth/avxsynth/wiki) on Linux
>
> I have tested the demuxer on both Windows and Linux and verified that
> I was able to ffprobe YV12, YUY2, and RGB32 scripts as well as encode
> them to rawvideo.
>
> Review and comments would be appreciated.
Will there be any change in the way avisynth is used in ffmpeg's command
line? This change could use some documentation.
> --- configure.orig 2012-06-07 17:01:19.000000000 -0400
> +++ configure 2012-09-10 02:07:56.300063208 -0400
> @@ -3204,7 +3204,9 @@
> check_mathfunc truncf
>
> # these are off by default, so fail if requested and not available
> -enabled avisynth && require2 vfw32 "windows.h vfw.h" AVIFileInit -lavifil32
> +enabled avisynth && { { check_lib2 "windows.h" LoadLibrary && check_header "avisynth_c.h"; } ||
> + { check_lib2 "dlfcn.h" dlopen -ldl && check_header "avxsynth_c.h"; } ||
> + die "ERROR: avisynth and/or LoadLibrary/dlopen not found"; }
Why is avxsynth_c.h not installed with avxsynth? Where can users find
instructions on how to properly install the library so it is
detected/used by ffmpeg? This should be documented somewhere. Same thing
goes to finding avisynth_c.h.
Using avxsynth_c.h provided with avxsynth I get some errors such as:
error: unknown type name ‘avs_create_script_environment_func’
I can try again once I can actually test.
> enabled fontconfig && require_pkg_config fontconfig "fontconfig/fontconfig.h" FcInit
> enabled frei0r && { check_header frei0r.h || die "ERROR: frei0r.h header not found"; }
> enabled gnutls && require_pkg_config gnutls gnutls/gnutls.h gnutls_global_init
More information about the ffmpeg-devel
mailing list