diff options
author | Alexis Ballier <aballier@gentoo.org> | 2013-07-26 16:41:38 -0400 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2013-08-01 16:12:02 -0400 |
commit | b3e4dc7f94879651e25a4f3f70f5b80fbb91d4c8 (patch) | |
tree | 840c3465e2810927914949ee1b0698730bd46cda /lib | |
parent | 486a701e0f2f331cd50741eb4a01437f845d3c2d (diff) |
Use avfilter_graph_parse_ptr when available (Fixes a deprecation warning with FFmpeg 2.0).
Include the libav API for avfilter_graph_parse which should help porting to libav.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/DllAvFilter.h | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/lib/DllAvFilter.h b/lib/DllAvFilter.h index c8582f6627..0c2feb8dd0 100644 --- a/lib/DllAvFilter.h +++ b/lib/DllAvFilter.h @@ -66,7 +66,11 @@ extern "C" { #endif #if ( defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,78,100) ) -#define HAVE_AVFILTER_GRAPH_PARSE_PTR + #define HAVE_AVFILTER_GRAPH_PARSE_PTR +#elif defined(LIBAVFILTER_FROM_LIBAV) + #define AVFILTER_GRAPH_PARSE_TAKES_SINGLE_PTR_ARG +#else + #define AVFILTER_GRAPH_PARSE_TAKES_PTR_PTR_ARG #endif #include "threads/SingleLock.h" @@ -84,8 +88,11 @@ public: virtual void avfilter_inout_free(AVFilterInOut **inout)=0; #if defined(HAVE_AVFILTER_GRAPH_PARSE_PTR) virtual int avfilter_graph_parse_ptr(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)=0; -#endif +#elif defined(AVFILTER_GRAPH_PARSE_TAKES_PTR_PTR_ARG) virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx)=0; +#else + virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut *inputs, AVFilterInOut *outputs, void *log_ctx)=0; +#endif virtual int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx)=0; #if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) @@ -150,12 +157,19 @@ public: CSingleLock lock(DllAvCodec::m_critSection); return ::avfilter_graph_parse_ptr(graph, filters, inputs, outputs, log_ctx); } -#endif +#elif defined(AVFILTER_GRAPH_PARSE_TAKES_PTR_PTR_ARG) virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx) { CSingleLock lock(DllAvCodec::m_critSection); return ::avfilter_graph_parse(graph, filters, inputs, outputs, log_ctx); } +#else + virtual int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut *inputs, AVFilterInOut *outputs, void *log_ctx) + { + CSingleLock lock(DllAvCodec::m_critSection); + return ::avfilter_graph_parse(graph, filters, inputs, outputs, log_ctx); + } +#endif virtual int avfilter_graph_config(AVFilterGraph *graphctx, void *log_ctx) { return ::avfilter_graph_config(graphctx, log_ctx); @@ -208,8 +222,11 @@ class DllAvFilter : public DllDynamic, DllAvFilterInterface DEFINE_METHOD1(void, avfilter_inout_free_dont_call, (AVFilterInOut **p1)) #if defined(HAVE_AVFILTER_GRAPH_PARSE_PTR) DEFINE_FUNC_ALIGNED5(int, __cdecl, avfilter_graph_parse_ptr_dont_call, AVFilterGraph *, const char *, AVFilterInOut **, AVFilterInOut **, void *) -#endif +#elif defined(AVFILTER_GRAPH_PARSE_TAKES_PTR_PTR_ARG) DEFINE_FUNC_ALIGNED5(int, __cdecl, avfilter_graph_parse_dont_call, AVFilterGraph *, const char *, AVFilterInOut **, AVFilterInOut **, void *) +#else + DEFINE_FUNC_ALIGNED5(int, __cdecl, avfilter_graph_parse_dont_call, AVFilterGraph *, const char *, AVFilterInOut *, AVFilterInOut *, void *) +#endif DEFINE_FUNC_ALIGNED2(int, __cdecl, avfilter_graph_config_dont_call, AVFilterGraph *, void *) #if (defined(LIBAVFILTER_FROM_LIBAV) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,5,0)) || \ (defined(LIBAVFILTER_FROM_FFMPEG) && LIBAVFILTER_VERSION_INT >= AV_VERSION_INT(3,43,100)) @@ -244,8 +261,9 @@ class DllAvFilter : public DllDynamic, DllAvFilterInterface RESOLVE_METHOD_RENAME(avfilter_inout_free, avfilter_inout_free_dont_call) #if defined(HAVE_AVFILTER_GRAPH_PARSE_PTR) RESOLVE_METHOD_RENAME(avfilter_graph_parse_ptr, avfilter_graph_parse_ptr_dont_call) -#endif +#else RESOLVE_METHOD_RENAME(avfilter_graph_parse, avfilter_graph_parse_dont_call) +#endif RESOLVE_METHOD_RENAME(avfilter_graph_config, avfilter_graph_config_dont_call) #if LIBAVFILTER_VERSION_INT < AV_VERSION_INT(3,0,0) RESOLVE_METHOD(av_vsrc_buffer_add_frame) @@ -299,12 +317,19 @@ public: CSingleLock lock(DllAvCodec::m_critSection); return avfilter_graph_parse_ptr_dont_call(graph, filters, inputs, outputs, log_ctx); } -#endif +#elif defined(AVFILTER_GRAPH_PARSE_TAKES_PTR_PTR_ARG) int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut **inputs, AVFilterInOut **outputs, void *log_ctx) { CSingleLock lock(DllAvCodec::m_critSection); return avfilter_graph_parse_dont_call(graph, filters, inputs, outputs, log_ctx); } +#else + int avfilter_graph_parse(AVFilterGraph *graph, const char *filters, AVFilterInOut *inputs, AVFilterInOut *outputs, void *log_ctx) + { + CSingleLock lock(DllAvCodec::m_critSection); + return avfilter_graph_parse_dont_call(graph, filters, inputs, outputs, log_ctx); + } +#endif void avfilter_inout_free(AVFilterInOut **inout) { CSingleLock lock(DllAvCodec::m_critSection); |