OSDN Git Service

Avoid link_dpad() overuse in avfilter_start_frame()
authorVitor Sessak <vitor1001@gmail.com>
Fri, 15 Feb 2008 21:41:03 +0000 (21:41 +0000)
committerVitor Sessak <vitor1001@gmail.com>
Fri, 15 Feb 2008 21:41:03 +0000 (21:41 +0000)
Commited in SoC by Vitor Sessak on 2008-02-10 09:53:00

Originally committed as revision 12048 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavfilter/avfilter.c

index 08a7484..28fc39e 100644 (file)
@@ -201,13 +201,14 @@ int avfilter_poll_frame(AVFilterLink *link)
 void avfilter_start_frame(AVFilterLink *link, AVFilterPicRef *picref)
 {
     void (*start_frame)(AVFilterLink *, AVFilterPicRef *);
+    AVFilterPad *dst = &link_dpad(link);
 
-    if(!(start_frame = link_dpad(link).start_frame))
+    if(!(start_frame = dst->start_frame))
         start_frame = avfilter_default_start_frame;
 
     /* prepare to copy the picture if it has insufficient permissions */
-    if((link_dpad(link).min_perms & picref->perms) != link_dpad(link).min_perms ||
-        link_dpad(link).rej_perms & picref->perms) {
+    if((dst->min_perms & picref->perms) != dst->min_perms ||
+        dst->rej_perms & picref->perms) {
         /*
         av_log(link->dst, AV_LOG_INFO,
                 "frame copy needed (have perms %x, need %x, reject %x)\n",
@@ -215,7 +216,7 @@ void avfilter_start_frame(AVFilterLink *link, AVFilterPicRef *picref)
                 link_dpad(link).min_perms, link_dpad(link).rej_perms);
         */
 
-        link->cur_pic = avfilter_default_get_video_buffer(link, link_dpad(link).min_perms);
+        link->cur_pic = avfilter_default_get_video_buffer(link, dst->min_perms);
         link->srcpic = picref;
         link->cur_pic->pts = link->srcpic->pts;
     }