[PATCH 1/7] Move link_dpad and link_spad macros from avfilter.c to internal.h, so they can be shared with other files, and renamed them FF_LINK_DSTPAD and FF_LINK_SRCPAD.

Stefano Sabatini stefano.sabatini-lala
Mon Jul 19 12:53:57 CEST 2010


---
 libavfilter/avfilter.c |   40 ++++++++++++++++++----------------------
 libavfilter/internal.h |    4 ++++
 2 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/libavfilter/avfilter.c b/libavfilter/avfilter.c
index bc8c67e..ec33261 100644
--- a/libavfilter/avfilter.c
+++ b/libavfilter/avfilter.c
@@ -42,10 +42,6 @@ const char *avfilter_license(void)
     return LICENSE_PREFIX FFMPEG_LICENSE + sizeof(LICENSE_PREFIX) - 1;
 }
 
-/** helper macros to get the in/out pad on the dst/src filter */
-#define link_dpad(link)     link->dst-> input_pads[link->dstpad]
-#define link_spad(link)     link->src->output_pads[link->srcpad]
-
 AVFilterBufferRef *avfilter_ref_buffer(AVFilterBufferRef *ref, int pmask)
 {
     AVFilterBufferRef *ret = av_malloc(sizeof(AVFilterBufferRef));
@@ -175,13 +171,13 @@ int avfilter_config_links(AVFilterContext *filter)
             if (avfilter_config_links(link->src))
                 return -1;
 
-            if (!(config_link = link_spad(link).config_props))
+            if (!(config_link = FF_LINK_SRCPAD(link).config_props))
                 config_link  = avfilter_default_config_output_link;
             if (config_link(link))
                 return -1;
 
-            if ((config_link = link_dpad(link).config_props))
-                if (config_link(link))
+            if ((config_link = FF_LINK_DSTPAD(link).config_props))
+                if(config_link(link))
                     return -1;
 
             link->init_state = AVLINK_INIT;
@@ -249,8 +245,8 @@ AVFilterBufferRef *avfilter_get_video_buffer(AVFilterLink *link, int perms, int
     FF_DPRINTF_START(NULL, get_video_buffer); ff_dprintf_link(NULL, link, 0);
     dprintf(NULL, " perms:%s w:%d h:%d\n", ff_get_ref_perms_string(buf, sizeof(buf), perms), w, h);
 
-    if (link_dpad(link).get_video_buffer)
-        ret = link_dpad(link).get_video_buffer(link, perms, w, h);
+    if (FF_LINK_DSTPAD(link).get_video_buffer)
+        ret = FF_LINK_DSTPAD(link).get_video_buffer(link, perms, w, h);
 
     if (!ret)
         ret = avfilter_default_get_video_buffer(link, perms, w, h);
@@ -269,8 +265,8 @@ AVFilterBufferRef *avfilter_get_audio_buffer(AVFilterLink *link, int perms,
 {
     AVFilterBufferRef *ret = NULL;
 
-    if (link_dpad(link).get_audio_buffer)
-        ret = link_dpad(link).get_audio_buffer(link, perms, sample_fmt, size, channel_layout, planar);
+    if (FF_LINK_DSTPAD(link).get_audio_buffer)
+        ret = FF_LINK_DSTPAD(link).get_audio_buffer(link, perms, sample_fmt, size, channel_layout, planar);
 
     if (!ret)
         ret = avfilter_default_get_audio_buffer(link, perms, sample_fmt, size, channel_layout, planar);
@@ -285,9 +281,9 @@ int avfilter_request_frame(AVFilterLink *link)
 {
     FF_DPRINTF_START(NULL, request_frame); ff_dprintf_link(NULL, link, 1);
 
-    if (link_spad(link).request_frame)
-        return link_spad(link).request_frame(link);
-    else if (link->src->inputs[0])
+    if (FF_LINK_SRCPAD(link).request_frame)
+        return FF_LINK_SRCPAD(link).request_frame(link);
+    else if(link->src->inputs[0])
         return avfilter_request_frame(link->src->inputs[0]);
     else return -1;
 }
@@ -296,8 +292,8 @@ int avfilter_poll_frame(AVFilterLink *link)
 {
     int i, min = INT_MAX;
 
-    if (link_spad(link).poll_frame)
-        return link_spad(link).poll_frame(link);
+    if (FF_LINK_SRCPAD(link).poll_frame)
+        return FF_LINK_SRCPAD(link).poll_frame(link);
 
     for (i = 0; i < link->src->input_count; i++) {
         int val;
@@ -315,7 +311,7 @@ int avfilter_poll_frame(AVFilterLink *link)
 void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
 {
     void (*start_frame)(AVFilterLink *, AVFilterBufferRef *);
-    AVFilterPad *dst = &link_dpad(link);
+    AVFilterPad *dst = &FF_LINK_DSTPAD(link);
 
     FF_DPRINTF_START(NULL, start_frame); ff_dprintf_link(NULL, link, 0); dprintf(NULL, " "); ff_dprintf_ref(NULL, picref, 1);
 
@@ -328,7 +324,7 @@ void avfilter_start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
         av_log(link->dst, AV_LOG_DEBUG,
                 "frame copy needed (have perms %x, need %x, reject %x)\n",
                 picref->perms,
-                link_dpad(link).min_perms, link_dpad(link).rej_perms);
+                FF_LINK_DSTPAD(link).min_perms, FF_LINK_DSTPAD(link).rej_perms);
 
         link->cur_buf = avfilter_get_video_buffer(link, dst->min_perms, link->w, link->h);
         link->src_buf = picref;
@@ -344,7 +340,7 @@ void avfilter_end_frame(AVFilterLink *link)
 {
     void (*end_frame)(AVFilterLink *);
 
-    if (!(end_frame = link_dpad(link).end_frame))
+    if (!(end_frame = FF_LINK_DSTPAD(link).end_frame))
         end_frame = avfilter_default_end_frame;
 
     end_frame(link);
@@ -393,7 +389,7 @@ void avfilter_draw_slice(AVFilterLink *link, int y, int h, int slice_dir)
         }
     }
 
-    if (!(draw_slice = link_dpad(link).draw_slice))
+    if (!(draw_slice = FF_LINK_DSTPAD(link).draw_slice))
         draw_slice = avfilter_default_draw_slice;
     draw_slice(link, y, h, slice_dir);
 }
@@ -401,7 +397,7 @@ void avfilter_draw_slice(AVFilterLink *link, int y, int h, int slice_dir)
 void avfilter_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref)
 {
     void (*filter_samples)(AVFilterLink *, AVFilterBufferRef *);
-    AVFilterPad *dst = &link_dpad(link);
+    AVFilterPad *dst = &FF_LINK_DSTPAD(link);
 
     if (!(filter_samples = dst->filter_samples))
         filter_samples = avfilter_default_filter_samples;
@@ -412,7 +408,7 @@ void avfilter_filter_samples(AVFilterLink *link, AVFilterBufferRef *samplesref)
 
         av_log(link->dst, AV_LOG_DEBUG,
                "Copying audio data in avfilter (have perms %x, need %x, reject %x)\n",
-               samplesref->perms, link_dpad(link).min_perms, link_dpad(link).rej_perms);
+               samplesref->perms, FF_LINK_DSTPAD(link).min_perms, FF_LINK_DSTPAD(link).rej_perms);
 
         link->cur_buf = avfilter_default_get_audio_buffer(link, dst->min_perms,
                                                           samplesref->format,
diff --git a/libavfilter/internal.h b/libavfilter/internal.h
index 2f0dde1..38913be 100644
--- a/libavfilter/internal.h
+++ b/libavfilter/internal.h
@@ -26,6 +26,10 @@
 
 #include "avfilter.h"
 
+/** helper macros to get the in/out pad on the dst/src filter */
+#define FF_LINK_DSTPAD(link)   link->dst-> input_pads[link->dstpad]
+#define FF_LINK_SRCPAD(link)   link->src->output_pads[link->srcpad]
+
 void ff_dprintf_ref(void *ctx, AVFilterBufferRef *ref, int end);
 
 char *ff_get_ref_perms_string(char *buf, size_t buf_size, int perms);
-- 
1.7.1


--gBBFr7Ir9EOA20Yy--



More information about the ffmpeg-devel mailing list