[FFmpeg-cvslog] lavfi/avcodec: deprecate avfilter_fill_frame_from_*_buffer_ref API

Stefano Sabatini git at videolan.org
Mon Jun 25 13:57:28 CEST 2012


ffmpeg | branch: master | Stefano Sabatini <stefasab at gmail.com> | Fri Jun 22 11:56:55 2012 +0200| [43583fb85c75ce66f57a6654ca65b55c1c026aae] | committer: Stefano Sabatini

lavfi/avcodec: deprecate avfilter_fill_frame_from_*_buffer_ref API

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.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=43583fb85c75ce66f57a6654ca65b55c1c026aae
---

 ffmpeg.c              |    2 +-
 ffplay.c              |    2 +-
 libavfilter/avcodec.c |    2 ++
 libavfilter/avcodec.h |    8 ++++++++
 libavfilter/version.h |    3 +++
 5 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index fea712d..03b1f36 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1964,7 +1964,7 @@ static int poll_filters(void)
 
                 switch (ost->filter->filter->inputs[0]->type) {
                 case AVMEDIA_TYPE_VIDEO:
-                    avfilter_fill_frame_from_video_buffer_ref(filtered_frame, picref);
+                    avfilter_copy_buf_props(filtered_frame, picref);
                     filtered_frame->pts = frame_pts;
                     if (!ost->frame_aspect_ratio)
                         ost->st->codec->sample_aspect_ratio = picref->video->sample_aspect_ratio;
diff --git a/ffplay.c b/ffplay.c
index b9104ec..9a749a1 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..b7965da 100644
--- a/libavfilter/avcodec.h
+++ b/libavfilter/avcodec.h
@@ -66,6 +66,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 +74,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 +87,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 +100,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 a5aa29c..a3f6816 100644
--- a/libavfilter/version.h
+++ b/libavfilter/version.h
@@ -74,5 +74,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 < 4)
+#endif
 
 #endif // AVFILTER_VERSION_H



More information about the ffmpeg-cvslog mailing list