[FFmpeg-devel] [PATCH] ffplay: factorize code calling output_packet() in video_thread()

Stefano Sabatini stefano.sabatini-lala at poste.it
Fri Apr 22 12:04:39 CEST 2011


Slightly simplify.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala at poste.it>
---
 ffplay.c |    8 +++-----
 1 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/ffplay.c b/ffplay.c
index 1577356..fc349f9 100644
--- a/ffplay.c
+++ b/ffplay.c
@@ -1803,14 +1803,13 @@ static int video_thread(void *arg)
 {
     VideoState *is = arg;
     AVFrame *frame= avcodec_alloc_frame();
-    int64_t pts_int;
+    int64_t pts_int, pos;
     double pts;
     int ret;
 
 #if CONFIG_AVFILTER
     AVFilterGraph *graph = avfilter_graph_alloc();
     AVFilterContext *filt_out = NULL;
-    int64_t pos;
 
     if ((ret = configure_video_filters(graph, is, vfilters)) < 0)
         goto the_end;
@@ -1844,6 +1843,7 @@ static int video_thread(void *arg)
         }
 #else
         ret = get_video_frame(is, frame, &pts_int, &pkt);
+        pos = pkt.pos;
 #endif
 
         if (ret < 0) goto the_end;
@@ -1853,10 +1853,8 @@ static int video_thread(void *arg)
 
         pts = pts_int*av_q2d(is->video_st->time_base);
 
-#if CONFIG_AVFILTER
         ret = output_picture(is, frame, pts, pos);
-#else
-        ret = output_picture(is, frame, pts,  pkt.pos);
+#if !CONFIG_AVFILTER
         av_free_packet(&pkt);
 #endif
         if (ret < 0)
-- 
1.7.2.3



More information about the ffmpeg-devel mailing list