[FFmpeg-devel] [PATCH 5/9] lavfi/avcodec: deprecate avfilter_fill_frame_from_*_buffer_ref API

Stefano Sabatini stefasab at gmail.com
Fri Jun 22 12:11:19 CEST 2012


Deprecate functions:
avfilter_fill_frame_from_buffer_ref
avfilter_fill_frame_from_audio_buffer_ref
avfilter_fill_frame_from_video_buffer_ref

and schedule to drop them at the next API major bump.

The function avfilter_copy_buf_props() should be used instead.
---
 ffplay.c              |    2 +-
 libavfilter/avcodec.c |    2 ++
 libavfilter/avcodec.h |    9 +++++++++
 libavfilter/version.h |    3 +++
 4 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/ffplay.c b/ffplay.c
index 55c7825..5421968 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -1732,7 +1732,7 @@ static int video_thread(void *arg)
             if (fabs(is->frame_last_filter_delay) > AV_NOSYNC_THRESHOLD / 10.0)
                 is->frame_last_filter_delay = 0;
 
-            avfilter_fill_frame_from_video_buffer_ref(frame, picref);
+            avfilter_copy_buf_props(frame, picref);
 
             pts_int = picref->pts;
             tb      = filt_out->inputs[0]->time_base;
diff --git a/libavfilter/avcodec.c b/libavfilter/avcodec.c
index ce53ed9..c50cd18 100644
--- a/libavfilter/avcodec.c
+++ b/libavfilter/avcodec.c
@@ -131,6 +131,7 @@ int avfilter_copy_buf_props(AVFrame *dst, const AVFilterBufferRef *src)
     return 0;
 }
 
+#ifdef FF_API_FILL_FRAME
 int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
                                               const AVFilterBufferRef *samplesref)
 {
@@ -148,3 +149,4 @@ int avfilter_fill_frame_from_buffer_ref(AVFrame *frame,
 {
     return avfilter_copy_buf_props(frame, ref);
 }
+#endif
diff --git a/libavfilter/avcodec.h b/libavfilter/avcodec.h
index 9636cfd..36ee4eb 100644
--- a/libavfilter/avcodec.h
+++ b/libavfilter/avcodec.h
@@ -48,6 +48,7 @@ int avfilter_copy_frame_props(AVFilterBufferRef *dst, const AVFrame *src);
  */
 int avfilter_copy_buf_props(AVFrame *dst, const AVFilterBufferRef *src);
 
+
 /**
  * Create and return a picref reference from the data and properties
  * contained in frame.
@@ -66,6 +67,7 @@ AVFilterBufferRef *avfilter_get_video_buffer_ref_from_frame(const AVFrame *frame
 AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame,
                                                             int perms);
 
+#ifdef FF_API_FILL_FRAME
 /**
  * Fill an AVFrame with the information stored in samplesref.
  *
@@ -73,7 +75,9 @@ AVFilterBufferRef *avfilter_get_audio_buffer_ref_from_frame(const AVFrame *frame
  * @param samplesref an audio buffer reference
  * @return 0 in case of success, a negative AVERROR code in case of
  * failure
+ * @deprecated Use avfilter_copy_buf_props() instead.
  */
+attribute_deprecated
 int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
                                               const AVFilterBufferRef *samplesref);
 
@@ -84,7 +88,9 @@ int avfilter_fill_frame_from_audio_buffer_ref(AVFrame *frame,
  * @param picref a video buffer reference
  * @return 0 in case of success, a negative AVERROR code in case of
  * failure
+ * @deprecated Use avfilter_copy_buf_props() instead.
  */
+attribute_deprecated
 int avfilter_fill_frame_from_video_buffer_ref(AVFrame *frame,
                                               const AVFilterBufferRef *picref);
 
@@ -95,9 +101,12 @@ int avfilter_fill_frame_from_video_buffer_ref(AVFrame *frame,
  * @param ref a video or audio buffer reference
  * @return 0 in case of success, a negative AVERROR code in case of
  * failure
+ * @deprecated Use avfilter_copy_buf_props() instead.
  */
+attribute_deprecated
 int avfilter_fill_frame_from_buffer_ref(AVFrame *frame,
                                         const AVFilterBufferRef *ref);
+#endif
 
 /**
  * Add frame data to buffer_src.
diff --git a/libavfilter/version.h b/libavfilter/version.h
index 221a0de..32426f4 100644
--- a/libavfilter/version.h
+++ b/libavfilter/version.h
@@ -68,5 +68,8 @@
 #ifndef FF_API_FOO_COUNT
 #define FF_API_FOO_COUNT                    (LIBAVFILTER_VERSION_MAJOR < 4)
 #endif
+#ifndef FF_API_FILL_FRAME
+#define FF_API_FILL_FRAME                   (LIBAVFILTER_VERSION_MAJOR < 3)
+#endif
 
 #endif // AVFILTER_VERSION_H
-- 
1.7.5.4



More information about the ffmpeg-devel mailing list