diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2012-06-10 03:08:19 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2012-06-10 03:08:19 +0200 |
commit | 7b0d362567983c7b22db98177be721bfe4bfec6e (patch) | |
tree | 4e0c1a787e0dd053b2dcb42acccb062e10a9017a /libavfilter | |
parent | 8836b41a782ff832bc9ff500d2f0b54e309475a3 (diff) | |
download | ffmpeg-7b0d362567983c7b22db98177be721bfe4bfec6e.tar.gz |
libavfilter: make ff_null_start_frame_keep_ref() a non static inline function.
Its only used through the start_frame pointer and thus cannot be inlined easily.
It also appears to break compilation with some unidentified compiler on darwin.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter')
-rw-r--r-- | libavfilter/internal.h | 10 | ||||
-rw-r--r-- | libavfilter/video.c | 6 | ||||
-rw-r--r-- | libavfilter/video.h | 5 |
3 files changed, 12 insertions, 9 deletions
diff --git a/libavfilter/internal.h b/libavfilter/internal.h index c208edf229..2b997301e7 100644 --- a/libavfilter/internal.h +++ b/libavfilter/internal.h @@ -27,6 +27,7 @@ #include "avfilter.h" #include "avfiltergraph.h" #include "formats.h" +#include "video.h" #define POOL_SIZE 32 typedef struct AVFilterPool { @@ -119,15 +120,6 @@ int ff_parse_sample_format(int *ret, const char *arg, void *log_ctx); */ int ff_parse_channel_layout(int64_t *ret, const char *arg, void *log_ctx); -/** - * Pass video frame along and keep an internal reference for later use. - */ -static inline void ff_null_start_frame_keep_ref(AVFilterLink *inlink, - AVFilterBufferRef *picref) -{ - avfilter_start_frame(inlink->dst->outputs[0], avfilter_ref_buffer(picref, ~0)); -} - void ff_update_link_current_pts(AVFilterLink *link, int64_t pts); void ff_free_pool(AVFilterPool *pool); diff --git a/libavfilter/video.c b/libavfilter/video.c index d443885df2..f23592e907 100644 --- a/libavfilter/video.c +++ b/libavfilter/video.c @@ -215,6 +215,12 @@ void ff_start_frame(AVFilterLink *link, AVFilterBufferRef *picref) ff_update_link_current_pts(link, link->cur_buf->pts); } +void ff_null_start_frame_keep_ref(AVFilterLink *inlink, + AVFilterBufferRef *picref) +{ + avfilter_start_frame(inlink->dst->outputs[0], avfilter_ref_buffer(picref, ~0)); +} + void ff_null_end_frame(AVFilterLink *link) { ff_end_frame(link->dst->outputs[0]); diff --git a/libavfilter/video.h b/libavfilter/video.h index 1fed45f925..b6886a6e8d 100644 --- a/libavfilter/video.h +++ b/libavfilter/video.h @@ -45,6 +45,11 @@ void ff_null_end_frame(AVFilterLink *link); void ff_start_frame(AVFilterLink *link, AVFilterBufferRef *picref); /** + * Pass video frame along and keep an internal reference for later use. + */ +void ff_null_start_frame_keep_ref(AVFilterLink *inlink, AVFilterBufferRef *picref); + +/** * Notify the next filter that the current frame has finished. * * @param link the output link the frame was sent over |