[FFmpeg-soc] [soc]: r3947 - libavfilter/diffs/01_ffplay_filters.diff

stefano subversion at mplayerhq.hu
Sun Jan 11 20:05:48 CET 2009


Author: stefano
Date: Sun Jan 11 20:05:48 2009
New Revision: 3947

Log:
Make input_request_frame() call get_video_frame() until it gets a
decoded picture. Fix playback of res_change_ffmpeg_aspect.ts.

Modified:
   libavfilter/diffs/01_ffplay_filters.diff

Modified: libavfilter/diffs/01_ffplay_filters.diff
==============================================================================
--- libavfilter/diffs/01_ffplay_filters.diff	Sun Jan 11 14:21:10 2009	(r3946)
+++ libavfilter/diffs/01_ffplay_filters.diff	Sun Jan 11 20:05:48 2009	(r3947)
@@ -211,7 +211,7 @@ Index: ffplay.c
          /* update the bitmap content */
          SDL_UnlockYUVOverlay(vp->bmp);
  
-@@ -1334,54 +1405,261 @@
+@@ -1334,54 +1405,264 @@
      return queue_picture(is, src_frame, pts);
  }
  
@@ -282,8 +282,11 @@ Index: ffplay.c
 +    AVFilterPicRef *picref;
 +    uint64_t pts = 0;
 +    AVPacket pkt;
++    int ret;
 +
-+    if(get_video_frame(priv->is, priv->frame, &pts, &pkt) < 0)
++    while (!(ret = get_video_frame(priv->is, priv->frame, &pts, &pkt)))
++        av_free_packet(&pkt);
++    if (ret < 0)
 +        return -1;
 +
 +    /* FIXME: until I figure out how to hook everything up to the codec
@@ -504,7 +507,7 @@ Index: ffplay.c
      av_free(frame);
      return 0;
  }
-@@ -2161,6 +2439,12 @@
+@@ -2161,6 +2442,12 @@
      /* free all pictures */
      for(i=0;i<VIDEO_PICTURE_QUEUE_SIZE; i++) {
          vp = &is->pictq[i];
@@ -517,7 +520,7 @@ Index: ffplay.c
          if (vp->bmp) {
              SDL_FreeYUVOverlay(vp->bmp);
              vp->bmp = NULL;
-@@ -2498,6 +2782,9 @@
+@@ -2498,6 +2785,9 @@
      { "ec", OPT_INT | HAS_ARG | OPT_EXPERT, {(void*)&error_concealment}, "set error concealment options",  "bit_mask" },
      { "sync", HAS_ARG | OPT_FUNC2 | OPT_EXPERT, {(void*)opt_sync}, "set audio-video sync. type (type=audio/video/ext)", "type" },
      { "threads", HAS_ARG | OPT_FUNC2 | OPT_EXPERT, {(void*)opt_thread_count}, "thread count", "count" },
@@ -527,7 +530,7 @@ Index: ffplay.c
      { "default", OPT_FUNC2 | HAS_ARG | OPT_AUDIO | OPT_VIDEO | OPT_EXPERT, {(void*)opt_default}, "generic catch all option", "" },
      { NULL, },
  };
-@@ -2546,7 +2833,9 @@
+@@ -2546,7 +2836,9 @@
          avctx_opts[i]= avcodec_alloc_context2(i);
      }
      avformat_opts = av_alloc_format_context();



More information about the FFmpeg-soc mailing list