[FFmpeg-soc] [soc]: r5618 - in libavfilter: checkout.sh diffs/01_ffplay_filters.diff diffs/02_ffmpeg_filters.diff diffs/03_libavfilter_doc.diff

stefano subversion at mplayerhq.hu
Sat Feb 6 02:55:22 CET 2010


Author: stefano
Date: Sat Feb  6 02:55:22 2010
New Revision: 5618

Log:
Update to FFmpeg r21650 / libswscale r30520.

Modified:
   libavfilter/checkout.sh
   libavfilter/diffs/01_ffplay_filters.diff
   libavfilter/diffs/02_ffmpeg_filters.diff
   libavfilter/diffs/03_libavfilter_doc.diff

Modified: libavfilter/checkout.sh
==============================================================================
--- libavfilter/checkout.sh	Thu Feb  4 01:55:07 2010	(r5617)
+++ libavfilter/checkout.sh	Sat Feb  6 02:55:22 2010	(r5618)
@@ -1,11 +1,11 @@
 #! /bin/sh
 
 echo "checking out pristine ffmpeg"
-svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk/ ffmpeg -r21600
+svn checkout svn://svn.ffmpeg.org/ffmpeg/trunk/ ffmpeg -r21650
 
 echo "downloading the corresponding version of swscale"
 cd ffmpeg/libswscale
-svn up -r30474
+svn up -r30520
 cd ../..
 
 echo "patching ffmpeg"

Modified: libavfilter/diffs/01_ffplay_filters.diff
==============================================================================
--- libavfilter/diffs/01_ffplay_filters.diff	Thu Feb  4 01:55:07 2010	(r5617)
+++ libavfilter/diffs/01_ffplay_filters.diff	Sat Feb  6 02:55:22 2010	(r5618)
@@ -1,10 +1,10 @@
 Index: ffplay.c
 ===================================================================
---- ffplay.c	(revision 21600)
+--- ffplay.c	(revision 21650)
 +++ ffplay.c	(working copy)
-@@ -31,6 +31,12 @@
- #include "libavcodec/colorspace.h"
+@@ -32,6 +32,12 @@
  #include "libavcodec/opt.h"
+ #include "libavcodec/dsputil.h"
  
 +#if CONFIG_AVFILTER
 +# include "libavfilter/avfilter.h"
@@ -15,7 +15,7 @@ Index: ffplay.c
  #include "cmdutils.h"
  
  #include <SDL.h>
-@@ -71,7 +77,9 @@
+@@ -72,7 +78,9 @@
  /* NOTE: the size must be big enough to compensate the hardware audio buffersize size */
  #define SAMPLE_ARRAY_SIZE (2*65536)
  
@@ -25,7 +25,7 @@ Index: ffplay.c
  
  typedef struct PacketQueue {
      AVPacketList *first_pkt, *last_pkt;
-@@ -91,6 +99,11 @@
+@@ -93,6 +101,11 @@
      int width, height; /* source height & width */
      int allocated;
      SDL_TimerID timer_id;
@@ -37,7 +37,7 @@ Index: ffplay.c
  } VideoPicture;
  
  typedef struct SubPicture {
-@@ -174,7 +187,9 @@
+@@ -180,7 +193,9 @@
      int pictq_size, pictq_rindex, pictq_windex;
      SDL_mutex *pictq_mutex;
      SDL_cond *pictq_cond;
@@ -47,7 +47,7 @@ Index: ffplay.c
  
      //    QETimer *video_timer;
      char filename[1024];
-@@ -185,6 +200,9 @@
+@@ -191,6 +206,9 @@
      int64_t last_dts_for_fault_detection;
      int64_t last_pts_for_fault_detection;
  
@@ -57,17 +57,17 @@ Index: ffplay.c
  } VideoState;
  
  static void show_help(void);
-@@ -225,6 +243,9 @@
- static int error_recognition = FF_ER_CAREFUL;
+@@ -232,6 +250,9 @@
  static int error_concealment = 3;
  static int decoder_reorder_pts= -1;
+ static int autoexit;
 +#if CONFIG_AVFILTER
 +static char *vfilters = NULL;
 +#endif
  
  /* current context */
  static int is_full_screen;
-@@ -659,6 +680,13 @@
+@@ -666,6 +687,13 @@
  
      vp = &is->pictq[is->pictq_rindex];
      if (vp->bmp) {
@@ -81,7 +81,7 @@ Index: ffplay.c
          /* XXX: use variable in the frame */
          if (is->video_st->sample_aspect_ratio.num)
              aspect_ratio = av_q2d(is->video_st->sample_aspect_ratio);
-@@ -666,9 +694,10 @@
+@@ -673,9 +701,10 @@
              aspect_ratio = av_q2d(is->video_st->codec->sample_aspect_ratio);
          else
              aspect_ratio = 0;
@@ -93,7 +93,7 @@ Index: ffplay.c
          /* if an active format is indicated, then it overrides the
             mpeg format */
  #if 0
-@@ -871,9 +900,15 @@
+@@ -925,9 +954,15 @@
      } else if(!is_full_screen && screen_width){
          w = screen_width;
          h = screen_height;
@@ -109,7 +109,7 @@ Index: ffplay.c
      } else {
          w = 640;
          h = 480;
-@@ -1184,12 +1219,23 @@
+@@ -1239,12 +1274,23 @@
      if (vp->bmp)
          SDL_FreeYUVOverlay(vp->bmp);
  
@@ -137,7 +137,7 @@ Index: ffplay.c
  
      SDL_LockMutex(is->pictq_mutex);
      vp->allocated = 1;
-@@ -1205,7 +1251,9 @@
+@@ -1260,7 +1306,9 @@
  {
      VideoPicture *vp;
      int dst_pix_fmt;
@@ -148,7 +148,7 @@ Index: ffplay.c
      /* wait until we have space to put a new picture */
      SDL_LockMutex(is->pictq_mutex);
      while (is->pictq_size >= VIDEO_PICTURE_QUEUE_SIZE &&
-@@ -1221,8 +1269,13 @@
+@@ -1276,8 +1324,13 @@
  
      /* alloc or resize hardware picture buffer */
      if (!vp->bmp ||
@@ -162,7 +162,7 @@ Index: ffplay.c
          SDL_Event event;
  
          vp->allocated = 0;
-@@ -1247,6 +1300,11 @@
+@@ -1302,6 +1355,11 @@
      /* if the frame is not skipped, then display it */
      if (vp->bmp) {
          AVPicture pict;
@@ -174,7 +174,7 @@ Index: ffplay.c
  
          /* get a pointer on the bitmap */
          SDL_LockYUVOverlay (vp->bmp);
-@@ -1260,18 +1318,30 @@
+@@ -1315,18 +1373,30 @@
          pict.linesize[0] = vp->bmp->pitches[0];
          pict.linesize[1] = vp->bmp->pitches[2];
          pict.linesize[2] = vp->bmp->pitches[1];
@@ -209,8 +209,8 @@ Index: ffplay.c
          /* update the bitmap content */
          SDL_UnlockYUVOverlay(vp->bmp);
  
-@@ -1328,87 +1398,303 @@
-     return queue_picture(is, src_frame, pts);
+@@ -1384,89 +1454,308 @@
+     return queue_picture(is, src_frame, pts, pos);
  }
  
 -static int video_thread(void *arg)
@@ -255,21 +255,25 @@ Index: ffplay.c
 -            while (is->pictq_size && !is->videoq.abort_request) {
 -                SDL_CondWait(is->pictq_cond, is->pictq_mutex);
 -            }
+-            is->video_current_pos= -1;
 -            SDL_UnlockMutex(is->pictq_mutex);
 +        }
 +        while (is->pictq_size && !is->videoq.abort_request) {
 +            SDL_CondWait(is->pictq_cond, is->pictq_mutex);
 +        }
++        is->video_current_pos= -1;
 +        SDL_UnlockMutex(is->pictq_mutex);
  
 -            is->last_dts_for_fault_detection=
 -            is->last_pts_for_fault_detection= INT64_MIN;
 -            is->frame_last_pts= AV_NOPTS_VALUE;
 -            is->frame_last_delay = 0;
+-            is->frame_timer = (double)av_gettime() / 1000000.0;
 +        is->last_dts_for_fault_detection=
 +        is->last_pts_for_fault_detection= INT64_MIN;
 +        is->frame_last_pts= AV_NOPTS_VALUE;
 +        is->frame_last_delay = 0;
++        is->frame_timer = (double)av_gettime() / 1000000.0;
  
 -            continue;
 -        }
@@ -336,7 +340,7 @@ Index: ffplay.c
  //            if (len1 < 0)
  //                break;
 -        if (got_picture) {
--            if (output_picture2(is, frame, pts) < 0)
+-            if (output_picture2(is, frame, pts, pkt->pos) < 0)
 -                goto the_end;
 -        }
 -        av_free_packet(pkt);
@@ -555,8 +559,11 @@ Index: ffplay.c
 +
 +        pts  = pts_int;
 +        pts /= AV_TIME_BASE;
-+        ret = output_picture2(is, frame, pts);
-+#if !CONFIG_AVFILTER
++
++#if CONFIG_AVFILTER
++        ret = output_picture2(is, frame, pts,  -1); /* fixme: unknown pos */
++#else
++        ret = output_picture2(is, frame, pts,  pkt->pos);
 +        av_free_packet(&pkt);
 +#endif
 +        if (ret < 0)
@@ -574,7 +581,7 @@ Index: ffplay.c
      av_free(frame);
      return 0;
  }
-@@ -2187,6 +2473,12 @@
+@@ -2251,6 +2540,12 @@
      /* free all pictures */
      for(i=0;i<VIDEO_PICTURE_QUEUE_SIZE; i++) {
          vp = &is->pictq[i];
@@ -587,7 +594,7 @@ Index: ffplay.c
          if (vp->bmp) {
              SDL_FreeYUVOverlay(vp->bmp);
              vp->bmp = NULL;
-@@ -2196,8 +2488,10 @@
+@@ -2260,8 +2555,10 @@
      SDL_DestroyCond(is->pictq_cond);
      SDL_DestroyMutex(is->subpq_mutex);
      SDL_DestroyCond(is->subpq_cond);
@@ -598,7 +605,7 @@ Index: ffplay.c
      av_free(is);
  }
  
-@@ -2289,6 +2583,9 @@
+@@ -2353,6 +2650,9 @@
          av_free(avcodec_opts[i]);
      av_free(avformat_opts);
      av_free(sws_opts);
@@ -608,17 +615,17 @@ Index: ffplay.c
      if (show_status)
          printf("\n");
      SDL_Quit();
-@@ -2539,6 +2836,9 @@
-     { "ec", OPT_INT | HAS_ARG | OPT_EXPERT, {(void*)&error_concealment}, "set error concealment options",  "bit_mask" },
+@@ -2623,6 +2923,9 @@
      { "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" },
+     { "autoexit", OPT_BOOL | OPT_EXPERT, {(void*)&autoexit}, "exit at the end", "" },
 +#if CONFIG_AVFILTER
 +    { "vfilters", OPT_STRING | HAS_ARG, {(void*)&vfilters}, "video filters", "filter list" },
 +#endif
      { "default", OPT_FUNC2 | HAS_ARG | OPT_AUDIO | OPT_VIDEO | OPT_EXPERT, {(void*)opt_default}, "generic catch all option", "" },
      { NULL, },
  };
-@@ -2586,13 +2886,18 @@
+@@ -2670,13 +2973,18 @@
      /* register all codecs, demux and protocols */
      avcodec_register_all();
      avdevice_register_all();

Modified: libavfilter/diffs/02_ffmpeg_filters.diff
==============================================================================
--- libavfilter/diffs/02_ffmpeg_filters.diff	Thu Feb  4 01:55:07 2010	(r5617)
+++ libavfilter/diffs/02_ffmpeg_filters.diff	Sat Feb  6 02:55:22 2010	(r5618)
@@ -1,6 +1,6 @@
 Index: ffmpeg.c
 ===================================================================
---- ffmpeg.c	(revision 21600)
+--- ffmpeg.c	(revision 21650)
 +++ ffmpeg.c	(working copy)
 @@ -42,6 +42,13 @@
  #include "libavutil/avstring.h"
@@ -338,7 +338,7 @@ Index: ffmpeg.c
                              do_video_out(os, ost, ist, &picture, &frame_size);
                              if (vstats_filename && frame_size)
                                  do_video_stats(os, ost, frame_size);
-@@ -1521,7 +1753,17 @@
+@@ -1524,7 +1756,17 @@
                          av_free_packet(&opkt);
                      }
                  }
@@ -356,7 +356,7 @@ Index: ffmpeg.c
          av_free(buffer_to_free);
          /* XXX: allocate the subtitles in the codec ? */
          if (subtitle_to_free) {
-@@ -1975,9 +2217,10 @@
+@@ -1978,9 +2220,10 @@
                          av_exit(1);
                      }
  
@@ -368,7 +368,7 @@ Index: ffmpeg.c
                      codec->bits_per_raw_sample= 0;
                  }
                  ost->resample_height = icodec->height - (frame_topBand  + frame_bottomBand);
-@@ -1985,6 +2228,13 @@
+@@ -1988,6 +2231,13 @@
                  ost->resample_pix_fmt= icodec->pix_fmt;
                  ost->encoding_needed = 1;
                  ist->decoding_needed = 1;
@@ -382,7 +382,7 @@ Index: ffmpeg.c
                  break;
              case CODEC_TYPE_SUBTITLE:
                  ost->encoding_needed = 1;
-@@ -2375,6 +2625,12 @@
+@@ -2388,6 +2638,12 @@
              avcodec_close(ist->st->codec);
          }
      }
@@ -395,7 +395,7 @@ Index: ffmpeg.c
  
      /* finished ! */
      ret = 0;
-@@ -3929,6 +4185,9 @@
+@@ -3942,6 +4198,9 @@
      { "psnr", OPT_BOOL | OPT_EXPERT | OPT_VIDEO, {(void*)&do_psnr}, "calculate PSNR of compressed frames" },
      { "vstats", OPT_EXPERT | OPT_VIDEO, {(void*)&opt_vstats}, "dump video coding statistics to file" },
      { "vstats_file", HAS_ARG | OPT_EXPERT | OPT_VIDEO, {(void*)opt_vstats_file}, "dump video coding statistics to file", "file" },
@@ -405,7 +405,7 @@ Index: ffmpeg.c
      { "intra_matrix", HAS_ARG | OPT_EXPERT | OPT_VIDEO, {(void*)opt_intra_matrix}, "specify intra matrix coeffs", "matrix" },
      { "inter_matrix", HAS_ARG | OPT_EXPERT | OPT_VIDEO, {(void*)opt_inter_matrix}, "specify inter matrix coeffs", "matrix" },
      { "top", HAS_ARG | OPT_EXPERT | OPT_VIDEO, {(void*)opt_top_field_first}, "top=1/bottom=0/auto=-1 field first", "" },
-@@ -3989,6 +4248,9 @@
+@@ -4002,6 +4261,9 @@
  
      avcodec_register_all();
      avdevice_register_all();

Modified: libavfilter/diffs/03_libavfilter_doc.diff
==============================================================================
--- libavfilter/diffs/03_libavfilter_doc.diff	Thu Feb  4 01:55:07 2010	(r5617)
+++ libavfilter/diffs/03_libavfilter_doc.diff	Sat Feb  6 02:55:22 2010	(r5618)
@@ -1,6 +1,6 @@
 Index: doc/libavfilter.texi
 ===================================================================
---- doc/libavfilter.texi	(revision 21600)
+--- doc/libavfilter.texi	(revision 21650)
 +++ doc/libavfilter.texi	(working copy)
 @@ -111,6 +111,20 @@
  


More information about the FFmpeg-soc mailing list