From 7a5f44476696b495e0de658ed859bcb8520b93d4 Mon Sep 17 00:00:00 2001 From: Stephen Hutchinson Date: Thu, 2 Apr 2015 15:39:26 -0400 Subject: [PATCH] avisynth: Bump minimum required version to interface version 6 The AVSC_API changes in the new headers mean that the 2.6 alphas are just as incompatible as 2.5 is. Signed-off-by: Diego Biurrun --- doc/general.texi | 4 ++-- libavformat/avisynth.c | 11 ++++++----- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/doc/general.texi b/doc/general.texi index 3fa4377474..6b76f7f4bf 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -151,8 +151,8 @@ by Libav. Once you have the appropriate header, pass @code{--enable-avisynth} to configure to enable AviSynth support. For Windows, supported AviSynth variants are -@url{http://avisynth.nl, AviSynth 2.6} for 32-bit builds and -@url{http://avs-plus.net, AviSynth+ 0.1} for 32-bit and 64-bit builds. +@url{http://avisynth.nl, AviSynth 2.6 RC1 or higher} for 32-bit builds and +@url{http://avs-plus.net, AviSynth+ r1718 or higher} for 32-bit and 64-bit builds. @url{https://github.com/AviSynth/AviSynthPlus, AviSynth+'s git repository} provides a GNU-style Makefile which can install just the headers using @code{make install PREFIX=/install/prefix}. diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c index a2f0550a3f..a5cf4e728a 100644 --- a/libavformat/avisynth.c +++ b/libavformat/avisynth.c @@ -407,13 +407,14 @@ static int avisynth_open_file(AVFormatContext *s) avs->vi = avs_library.avs_get_video_info(avs->clip); #ifdef USING_AVISYNTH - /* libav only supports AviSynth 2.6 on Windows. Since AvxSynth - * identifies itself as interface version 3 like 2.5.8, this - * needs to be special-cased. */ + /* On Windows, libav supports AviSynth interface version 6 or higher. + * This includes AviSynth 2.6 RC1 or higher, and AviSynth+ r1718 or higher, + * and excludes 2.5 and the 2.6 alphas. Since AvxSynth identifies itself + * as interface version 3 like 2.5.8, this needs to be special-cased. */ - if (avs_library.avs_get_version(avs->clip) == 3) { + if (avs_library.avs_get_version(avs->clip) < 6) { av_log(s, AV_LOG_ERROR, - "AviSynth 2.5.8 not supported. Please upgrade to 2.6.\n"); + "AviSynth version is too old. Please upgrade to either AviSynth 2.6 >= RC1 or AviSynth+ >= r1718.\n"); ret = AVERROR_UNKNOWN; goto fail; }