Merge remote-tracking branch 'newdev/master'
authorMichael Niedermayer <michaelni@gmx.at>
Thu, 17 Mar 2011 15:53:58 +0000 (16:53 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Thu, 17 Mar 2011 16:22:52 +0000 (17:22 +0100)
Conflicts:
Changelog
doc/APIchanges
doc/optimization.txt
libavformat/avio.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
69 files changed:
1  2 
Changelog
cmdutils.c
configure
doc/APIchanges
doc/developer.texi
doc/faq.texi
doc/filters.texi
doc/git-howto.txt
doc/indevs.texi
doc/libavfilter.texi
doc/optimization.txt
libavcodec/dsputil.h
libavcodec/utils.c
libavformat/4xm.c
libavformat/aiffdec.c
libavformat/amr.c
libavformat/anm.c
libavformat/ape.c
libavformat/applehttp.c
libavformat/applehttpproto.c
libavformat/asfdec.c
libavformat/avidec.c
libavformat/avio.h
libavformat/aviobuf.c
libavformat/bethsoftvid.c
libavformat/bfi.c
libavformat/cafdec.c
libavformat/daud.c
libavformat/dxa.c
libavformat/electronicarts.c
libavformat/ffmdec.c
libavformat/filmstripdec.c
libavformat/flacdec.c
libavformat/flvdec.c
libavformat/gxf.c
libavformat/id3v2.c
libavformat/idcin.c
libavformat/idroqdec.c
libavformat/iff.c
libavformat/img2.c
libavformat/ipmovie.c
libavformat/lxfdec.c
libavformat/matroskadec.c
libavformat/mmf.c
libavformat/mov.c
libavformat/movenc.c
libavformat/mpc8.c
libavformat/mpeg.c
libavformat/mpegts.c
libavformat/msnwc_tcp.c
libavformat/mxfdec.c
libavformat/ncdec.c
libavformat/nsvdec.c
libavformat/nutdec.c
libavformat/nuv.c
libavformat/qcp.c
libavformat/rmdec.c
libavformat/soxdec.c
libavformat/spdifdec.c
libavformat/swfdec.c
libavformat/tmv.c
libavformat/txd.c
libavformat/utils.c
libavformat/vc1test.c
libavformat/wav.c
libavformat/wc3movie.c
libavformat/wtv.c
libavformat/wv.c
version.sh

diff --cc Changelog
+++ b/Changelog
@@@ -78,7 -78,7 +78,8 @@@ version <next>
  - movie source added
  - Bink version 'b' audio and video decoder
  - Bitmap Brothers JV playback system
 +- Linux framebuffer input device added
+ - Apple HTTP Live Streaming protocol handler
  
  
  version 0.6:
diff --cc cmdutils.c
Simple merge
diff --cc configure
Simple merge
diff --cc doc/APIchanges
@@@ -12,9 -12,11 +12,14 @@@ libavutil:   2009-03-0
  
  API changes, most recent first:
  
 +2011-XX-XX - XXXXXXX - lavu  XX.XXX.X - pixfmt.h
 +  Add PIX_FMT_BGR48LE and PIX_FMT_BGR48BE pixel formats
 +
+ 2011-03-02 - 863c471 - lavf  52.103.0 - av_pkt_dump2, av_pkt_dump_log2
+   Add new functions av_pkt_dump2, av_pkt_dump_log2 that uses the
+   source stream timebase for outputting timestamps. Deprecate
+   av_pkt_dump and av_pkt_dump_log.
  2011-02-20 - e731b8d - lavf  52.102.0 - avio.h
    * e731b8d - rename init_put_byte() to ffio_init_context(), deprecating the
                original, and move it to a private header so it is no longer
Simple merge
diff --cc doc/faq.texi
@@@ -20,27 -20,27 +20,27 @@@ bugs and reviewing patches takes preced
  request more timely and/or frequent releases unless you are willing to
  help out creating them.
  
- @section I have a problem with an old version of FFmpeg; where should I report it?
- Nowhere. We do not support old FFmpeg versions in any way, we simply lack
+ @section I have a problem with an old version of Libav; where should I report it?
+ Nowhere. We do not support old Libav versions in any way, we simply lack
  the time, motivation and manpower to do so. If you have a problem with an
- old version of FFmpeg, upgrade to the latest Subversion snapshot. If you
+ old version of Libav, upgrade to the latest Subversion snapshot. If you
  still experience the problem, then you can report it according to the
 -guidelines in @url{http://libav.org/bugreports.html}.
 +guidelines in @url{http://ffmpeg.org/bugreports.html}.
  
- @section Why doesn't FFmpeg support feature [xyz]?
+ @section Why doesn't Libav support feature [xyz]?
  
- Because no one has taken on that task yet. FFmpeg development is
+ Because no one has taken on that task yet. Libav development is
  driven by the tasks that are important to the individual developers.
  If there is a feature that is important to you, the best way to get
  it implemented is to undertake the task yourself or sponsor a developer.
  
- @section FFmpeg does not support codec XXX. Can you include a Windows DLL loader to support it?
+ @section Libav does not support codec XXX. Can you include a Windows DLL loader to support it?
  
  No. Windows DLLs are not portable, bloated and often slow.
- Moreover FFmpeg strives to support all codecs natively.
+ Moreover Libav strives to support all codecs natively.
  A DLL loader is not conducive to that goal.
  
 -@section My bug report/mail to libav-devel/user has not received any replies.
 +@section My bug report/mail to ffmpeg-devel/user has not received any replies.
  
  Likely reasons
  @itemize
Simple merge
@@@ -44,13 -44,13 +44,13 @@@ I. BASICS
  
  1. Cloning the source tree:
  
 -    git clone git://git.libav.org/libav.git <target>
 +    git clone git://git.videolan.org/ffmpeg <target>
  
-   This will put the FFmpeg sources into the directory <target>.
+   This will put the Libav sources into the directory <target>.
  
 -    git clone git@git.libav.org:libav.git <target>
 +    git clone git@git.videolan.org:ffmpeg <target>
  
-   This will put the FFmpeg sources into the directory <target> and let
+   This will put the Libav sources into the directory <target> and let
    you push back your changes to the remote repository.
  
  
diff --cc doc/indevs.texi
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -311,9 -311,9 +311,9 @@@ static int flv_read_packet(AVFormatCont
      dts = avio_rb24(s->pb);
      dts |= avio_r8(s->pb) << 24;
  //    av_log(s, AV_LOG_DEBUG, "type:%d, size:%d, dts:%d\n", type, size, dts);
 -    if (s->pb->eof_reached)
 +    if (url_feof(s->pb))
          return AVERROR_EOF;
-     avio_seek(s->pb, 3, SEEK_CUR); /* stream id, always 0 */
+     avio_skip(s->pb, 3); /* stream id, always 0 */
      flags = 0;
  
      if(size == 0)
Simple merge
@@@ -136,10 -136,55 +136,56 @@@ static void read_ttag(AVFormatContext *
          av_metadata_set2(&s->metadata, key, val, AV_METADATA_DONT_OVERWRITE);
  }
  
+ static int is_number(const char *str)
+ {
+     while (*str >= '0' && *str <= '9') str++;
+     return !*str;
+ }
+ static AVMetadataTag* get_date_tag(AVMetadata *m, const char *tag)
+ {
+     AVMetadataTag *t;
+     if ((t = av_metadata_get(m, tag, NULL, AV_METADATA_MATCH_CASE)) &&
+         strlen(t->value) == 4 && is_number(t->value))
+         return t;
+     return NULL;
+ }
+ static void merge_date(AVMetadata **m)
+ {
+     AVMetadataTag *t;
+     char date[17] = {0};      // YYYY-MM-DD hh:mm
+     if (!(t = get_date_tag(*m, "TYER")) &&
+         !(t = get_date_tag(*m, "TYE")))
+         return;
+     av_strlcpy(date, t->value, 5);
+     av_metadata_set2(m, "TYER", NULL, 0);
+     av_metadata_set2(m, "TYE",  NULL, 0);
+     if (!(t = get_date_tag(*m, "TDAT")) &&
+         !(t = get_date_tag(*m, "TDA")))
+         goto finish;
+     snprintf(date + 4, sizeof(date) - 4, "-%.2s-%.2s", t->value + 2, t->value);
+     av_metadata_set2(m, "TDAT", NULL, 0);
+     av_metadata_set2(m, "TDA",  NULL, 0);
+     if (!(t = get_date_tag(*m, "TIME")) &&
+         !(t = get_date_tag(*m, "TIM")))
+         goto finish;
+     snprintf(date + 10, sizeof(date) - 10, " %.2s:%.2s", t->value, t->value + 2);
+     av_metadata_set2(m, "TIME", NULL, 0);
+     av_metadata_set2(m, "TIM",  NULL, 0);
+ finish:
+     if (date[0])
+         av_metadata_set2(m, "date", date, 0);
+ }
  static void ff_id3v2_parse(AVFormatContext *s, int len, uint8_t version, uint8_t flags)
  {
 -    int isv34, tlen, unsync;
 +    int isv34, unsync;
 +    unsigned tlen;
      char tag[5];
      int64_t next;
      int taghdrlen;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc version.sh
Simple merge