Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 20 Apr 2012 20:18:26 +0000 (22:18 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 20 Apr 2012 20:18:26 +0000 (22:18 +0200)
* qatar/master:
  avcodec: add a cook parser to get subpacket duration
  FATE: allow lavf tests to alter input parameters
  FATE: replace the acodec-pcm_s24daud test with an enc_dec_pcm checksum test
  FATE: replace the acodec-g726 test with 4 new encode/decode tests
  FATE: replace current g722 encoding tests with an encode/decode test
  FATE: add a pattern rule for generating asynth wav files
  FATE: optionally write a WAVE header in audiogen
  avutil: add audio fifo buffer

Conflicts:
doc/APIchanges
libavcodec/version.h
libavutil/avutil.h
tests/Makefile
tests/codec-regression.sh
tests/fate/voice.mak
tests/lavf-regression.sh
tests/ref/acodec/g722
tests/ref/acodec/g726
tests/ref/acodec/pcm_s24daud
tests/ref/lavf/dv_fmt
tests/ref/lavf/gxf
tests/ref/lavf/mxf
tests/ref/lavf/mxf_d10
tests/ref/seek/lavf_dv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
16 files changed:
1  2 
doc/APIchanges
libavcodec/Makefile
libavcodec/allcodecs.c
libavcodec/version.h
libavformat/daud.c
libavformat/rmdec.c
libavutil/Makefile
libavutil/avutil.h
tests/Makefile
tests/audiogen.c
tests/codec-regression.sh
tests/fate/voice.mak
tests/lavf-regression.sh
tests/ref/lavf/dv_fmt
tests/ref/lavf/gxf
tests/ref/lavf/mxf_d10

diff --cc doc/APIchanges
@@@ -13,17 -12,21 +13,29 @@@ libavutil:   2011-04-1
  
  API changes, most recent first:
  
 +2012-04-20 - xxxxxxx - lavfi 2.70.100
 +  Add avfilter_unref_bufferp() to avfilter.h.
 +
 +2012-04-12 - xxxxxxx - lavfi 2.68.100
 +  Install libavfilter/asrc_abuffer.h public header.
 +
 +2012-03-26 - a67d9cf - lavfi 2.66.100
 +  Add avfilter_fill_frame_from_{audio_,}buffer_ref() functions.
 +
+ 2012-xx-xx - xxxxxxx - lavu 51.28.0 - audio_fifo.h
+   Add audio FIFO functions:
+     av_audio_fifo_free()
+     av_audio_fifo_alloc()
+     av_audio_fifo_realloc()
+     av_audio_fifo_write()
+     av_audio_fifo_read()
+     av_audio_fifo_drain()
+     av_audio_fifo_reset()
+     av_audio_fifo_size()
+     av_audio_fifo_space()
  2012-xx-xx - xxxxxxx - lavfi 2.16.0 - avfiltergraph.h
 -  Add avfilter_graph_parse2(), avfilter_inout_alloc() and
 -  avfilter_inout_free() functions.
 +  Add avfilter_graph_parse2()
  
  2012-xx-xx - xxxxxxx - lavu 51.27.0 - samplefmt.h
    Add av_get_packed_sample_fmt() and av_get_planar_sample_fmt()
Simple merge
Simple merge
@@@ -27,8 -27,8 +27,8 @@@
   */
  
  #define LIBAVCODEC_VERSION_MAJOR 54
- #define LIBAVCODEC_VERSION_MINOR  14
- #define LIBAVCODEC_VERSION_MICRO 101
 -#define LIBAVCODEC_VERSION_MINOR 12
 -#define LIBAVCODEC_VERSION_MICRO  0
++#define LIBAVCODEC_VERSION_MINOR  15
++#define LIBAVCODEC_VERSION_MICRO 100
  
  #define LIBAVCODEC_VERSION_INT  AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
                                                 LIBAVCODEC_VERSION_MINOR, \
@@@ -75,7 -75,7 +75,7 @@@ AVInputFormat ff_daud_demuxer = 
      .long_name      = NULL_IF_CONFIG_SMALL("D-Cinema audio format"),
      .read_header    = daud_header,
      .read_packet    = daud_packet,
--    .extensions     = "302",
++    .extensions     = "302,daud",
  };
  #endif
  
Simple merge
Simple merge
   */
  
  #define LIBAVUTIL_VERSION_MAJOR 51
- #define LIBAVUTIL_VERSION_MINOR 46
 -#define LIBAVUTIL_VERSION_MINOR 28
 -#define LIBAVUTIL_VERSION_MICRO  0
++#define LIBAVUTIL_VERSION_MINOR 47
 +#define LIBAVUTIL_VERSION_MICRO 100
  
  #define LIBAVUTIL_VERSION_INT   AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
                                                 LIBAVUTIL_VERSION_MINOR, \
diff --cc tests/Makefile
@@@ -26,18 -16,10 +26,21 @@@ tests/vsynth2/00.pgm: tests/rotozoom$(H
  tests/data/asynth1.sw: tests/audiogen$(HOSTEXESUF) | tests/data
        $(M)./$< $@
  
 -tests/data/asynth% tests/vsynth%/00.pgm: TAG = GEN
 +tests/data/asynth-16000-1.sw: tests/audiogen$(HOSTEXESUF) | tests/data
 +      $(M)./$< $@ 16000 1
 +
+ tests/data/asynth-%.wav: tests/audiogen$(HOSTEXESUF) | tests/data
+       $(M)./$< $@ $(subst -, ,$*)
- tests/data/%.sw tests/vsynth%/00.pgm: TAG = GEN
 +tests/data/mapchan-6ch.sw: tests/audiogen$(HOSTEXESUF)
 +      @mkdir -p tests/data
 +      $(M)./$< $@ 22050 6
 +
 +tests/data/mapchan-mono.sw: tests/audiogen$(HOSTEXESUF)
 +      @mkdir -p tests/data
 +      $(M)./$< $@ 22050 1
 +
++tests/data/%.sw tests/data/asynth% tests/vsynth%/00.pgm: TAG = GEN
  
  include $(SRC_PATH)/tests/fate/aac.mak
  include $(SRC_PATH)/tests/fate/ac3.mak
Simple merge
@@@ -390,21 -311,6 +390,11 @@@ do_audio_encoding ac3.ac3 "-vn -acodec 
  #$tiny_psnr $pcm_dst $pcm_ref 2 1024
  fi
  
- if [ -n "$do_g722" ] ; then
- do_audio_encoding g722.wav "-b 64k -ac 1 -ar 16000 -acodec g722"
- do_audio_decoding
- fi
- if [ -n "$do_g726" ] ; then
- do_audio_encoding g726.wav "-b:a 32k -ac 1 -ar 8000 -acodec g726"
- do_audio_decoding
- fi
 +if [ -n "$do_g723_1" ] ; then
 +do_audio_encoding g723_1.tco "-b:a 6.3k -ac 1 -ar 8000 -acodec g723_1"
 +do_audio_decoding
 +fi
 +
  if [ -n "$do_adpcm_adx" ] ; then
  do_audio_encoding adpcm_adx.adx "-acodec adpcm_adx"
  do_audio_decoding
@@@ -1,9 -1,36 +1,36 @@@
- FATE_VOICE += fate-g722dec-1
+ FATE_G722 += fate-g722dec-1
  fate-g722dec-1: CMD = framecrc -i $(SAMPLES)/g722/conf-adminmenu-162.g722
  
- FATE_VOICE += fate-g722enc
- fate-g722enc: tests/data/asynth-16000-1.sw
- fate-g722enc: CMD = md5 -ar 16000 -ac 1 -f s16le -i $(TARGET_PATH)/tests/data/asynth-16000-1.sw -acodec g722 -ac 1 -f g722
+ FATE_G722 += fate-g722-encode
+ fate-g722-encode: tests/data/asynth-16000-1.wav
+ fate-g722-encode: SRC = tests/data/asynth-16000-1.wav
+ fate-g722-encode: CMD = enc_dec_pcm wav md5 s16le $(SRC) -c:a g722
 -FATE_TESTS += $(FATE_G722)
++FATE_VOICE += $(FATE_G722)
+ fate-g722: $(FATE_G722)
+ FATE_G726 += fate-g726-encode-2bit
+ fate-g726-encode-2bit: tests/data/asynth-8000-1.wav
+ fate-g726-encode-2bit: SRC = tests/data/asynth-8000-1.wav
+ fate-g726-encode-2bit: CMD = enc_dec_pcm wav md5 s16le $(SRC) -c:a g726 -b:a 16k
+ FATE_G726 += fate-g726-encode-3bit
+ fate-g726-encode-3bit: tests/data/asynth-8000-1.wav
+ fate-g726-encode-3bit: SRC = tests/data/asynth-8000-1.wav
+ fate-g726-encode-3bit: CMD = enc_dec_pcm wav md5 s16le $(SRC) -c:a g726 -b:a 24k
+ FATE_G726 += fate-g726-encode-4bit
+ fate-g726-encode-4bit: tests/data/asynth-8000-1.wav
+ fate-g726-encode-4bit: SRC = tests/data/asynth-8000-1.wav
+ fate-g726-encode-4bit: CMD = enc_dec_pcm wav md5 s16le $(SRC) -c:a g726 -b:a 32k
+ FATE_G726 += fate-g726-encode-5bit
+ fate-g726-encode-5bit: tests/data/asynth-8000-1.wav
+ fate-g726-encode-5bit: SRC = tests/data/asynth-8000-1.wav
+ fate-g726-encode-5bit: CMD = enc_dec_pcm wav md5 s16le $(SRC) -c:a g726 -b:a 40k
 -FATE_TESTS += $(FATE_G726)
++FATE_VOICE += $(FATE_G726)
+ fate-g726: $(FATE_G726)
  
  FATE_GSM += fate-gsm-ms
  fate-gsm-ms: CMD = framecrc -i $(SAMPLES)/gsm/ciao.wav
@@@ -24,20 -14,10 +24,20 @@@ do_lavf_fate(
  do_lavf()
  {
      file=${outfile}lavf.$1
-     do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $DEC_OPTS -ar 44100 -f s16le -i $pcm_src $ENC_OPTS -b:a 64k -t 1 -qscale:v 10 $2
-     do_avconv_crc $file $DEC_OPTS -i $target_path/$file $3
+     do_avconv $file $DEC_OPTS -f image2 -vcodec pgmyuv -i $raw_src $DEC_OPTS -ar 44100 -f s16le $2 -i $pcm_src $ENC_OPTS -b:a 64k -t 1 -qscale:v 10 $3
+     do_avconv_crc $file $DEC_OPTS -i $target_path/$file $4
  }
  
- do_lavf_timecode_nodrop() { do_lavf $1 "$2 -timecode 02:56:14:13"; }
- do_lavf_timecode_drop()   { do_lavf $1 "$2 -timecode 02:56:14.13 -r 30000/1001"; }
++do_lavf_timecode_nodrop() { do_lavf $1 "" "$2 -timecode 02:56:14:13"; }
++do_lavf_timecode_drop()   { do_lavf $1 "" "$2 -timecode 02:56:14.13 -r 30000/1001"; }
 +
 +do_lavf_timecode()
 +{
 +    do_lavf_timecode_nodrop "$@"
 +    do_lavf_timecode_drop "$@"
-     do_lavf "$@"
++    do_lavf $1 "" "$2"
 +}
 +
  do_streamed_images()
  {
      file=${outfile}${1}pipe.$1
@@@ -64,11 -44,11 +64,11 @@@ do_audio_only(
  }
  
  if [ -n "$do_avi" ] ; then
- do_lavf avi "-acodec mp2 -ab 64k"
 -do_lavf avi "" "-acodec mp2"
++do_lavf avi "" "-acodec mp2 -ab 64k"
  fi
  
  if [ -n "$do_asf" ] ; then
- do_lavf asf "-acodec mp2 -ab 64k" "-r 25"
 -do_lavf asf "" "-acodec mp2" "-r 25"
++do_lavf asf "" "-acodec mp2 -ab 64k" "-r 25"
  fi
  
  if [ -n "$do_rm" ] ; then
@@@ -91,7 -71,7 +91,7 @@@ do_lavf mxf_d10 "-ar 48000 -ac 2" "-r 2
  fi
  
  if [ -n "$do_ts" ] ; then
- do_lavf ts "-ab 64k -mpegts_transport_stream_id 42"
 -do_lavf ts "" "-mpegts_transport_stream_id 42"
++do_lavf ts "" "-ab 64k -mpegts_transport_stream_id 42"
  fi
  
  if [ -n "$do_swf" ] ; then
@@@ -107,50 -87,23 +107,50 @@@ do_lavf flv "" "-an
  fi
  
  if [ -n "$do_mov" ] ; then
- do_lavf mov "-movflags +rtphint -acodec pcm_alaw -vcodec mpeg4"
 -do_lavf mov "" "-acodec pcm_alaw -c:v mpeg4"
++do_lavf mov "" "-movflags +rtphint -acodec pcm_alaw -vcodec mpeg4"
 +do_lavf_timecode mov "-acodec pcm_alaw -vcodec mpeg4"
 +fi
 +
 +if [ -n "$do_ismv" ] ; then
 +do_lavf_timecode ismv "-an -vcodec mpeg4"
  fi
  
  if [ -n "$do_dv_fmt" ] ; then
- do_lavf dv "-ar 48000 -r 25 -s pal -ac 2"
 +do_lavf_timecode_nodrop dv "-ar 48000 -r 25 -s pal -ac 2"
 +do_lavf_timecode_drop   dv "-ar 48000 -pix_fmt yuv411p -s ntsc -ac 2"
+ do_lavf dv "-ar 48000" "-r 25 -s pal -ac 2"
  fi
  
  if [ -n "$do_gxf" ] ; then
- do_lavf gxf "-ar 48000 -r 25 -s pal -ac 1"
 +do_lavf_timecode_nodrop gxf "-ar 48000 -r 25 -s pal -ac 1"
 +do_lavf_timecode_drop   gxf "-ar 48000 -s ntsc -ac 1"
+ do_lavf gxf "-ar 48000" "-r 25 -s pal -ac 1"
  fi
  
  if [ -n "$do_nut" ] ; then
- do_lavf nut "-acodec mp2 -ab 64k"
 -do_lavf nut "" "-acodec mp2"
++do_lavf nut "" "-acodec mp2 -ab 64k"
  fi
  
  if [ -n "$do_mkv" ] ; then
- do_lavf mkv "-acodec mp2 -ab 64k -vcodec mpeg4"
 -do_lavf mkv "" "-c:a mp2 -c:v mpeg4"
++do_lavf mkv "" "-acodec mp2 -ab 64k -vcodec mpeg4"
 +fi
 +
 +if [ -n "$do_mp3" ] ; then
 +do_lavf_fate mp3 "mp3-conformance/he_32khz.bit" "-acodec copy"
 +fi
 +
 +if [ -n "$do_latm" ] ; then
 +do_lavf_fate latm "aac/al04_44.mp4" "-acodec copy"
 +fi
 +
 +if [ -n "$do_ogg_vp3" ] ; then
 +# -idct simple causes different results on different systems
 +DEC_OPTS="$DEC_OPTS -idct auto"
 +do_lavf_fate ogg "vp3/coeff_level64.mkv"
 +fi
 +
 +if [ -n "$do_wtv" ] ; then
- do_lavf wtv "-acodec mp2"
++do_lavf wtv "" "-acodec mp2"
  fi
  
  
@@@ -1,9 -1,3 +1,9 @@@
 -62577aa72e7c7fb3e781e3717a7c36cb *./tests/data/lavf/lavf.dv
 -3456000 ./tests/data/lavf/lavf.dv
 -./tests/data/lavf/lavf.dv CRC=0x37e63092
 +6f9cfff48f536fa727696f2f9fb3ac08 *./tests/data/lavf/lavf.dv
 +3600000 ./tests/data/lavf/lavf.dv
 +./tests/data/lavf/lavf.dv CRC=0x5ce4e5e4
 +cc33ae4f9e6828914dea0f09d1241b7e *./tests/data/lavf/lavf.dv
 +3480000 ./tests/data/lavf/lavf.dv
 +./tests/data/lavf/lavf.dv CRC=0x8d5e9e8f
- 3a6a9163a67b729b4a6b5d972ccceb97 *./tests/data/lavf/lavf.dv
++b36c83cd0ba0ebe719f09f885c4bbcd3 *./tests/data/lavf/lavf.dv
 +3600000 ./tests/data/lavf/lavf.dv
- ./tests/data/lavf/lavf.dv CRC=0x5ce4e5e4
++./tests/data/lavf/lavf.dv CRC=0x2bc2ae3a
@@@ -1,9 -1,3 +1,9 @@@
 -32e34e23f3740e27e5bcf1621a698aad *./tests/data/lavf/lavf.gxf
 +befc1a39c37a4ecd9264942a3e34b3f6 *./tests/data/lavf/lavf.gxf
  796392 ./tests/data/lavf/lavf.gxf
 -./tests/data/lavf/lavf.gxf CRC=0x4f52fc7f
 +./tests/data/lavf/lavf.gxf CRC=0x102918fd
 +267d2b2b6e357209d76c366302cf35c3 *./tests/data/lavf/lavf.gxf
 +794572 ./tests/data/lavf/lavf.gxf
 +./tests/data/lavf/lavf.gxf CRC=0xab47d02d
- 1c1693cf2358025f1e37ac76e1da925a *./tests/data/lavf/lavf.gxf
++0a1a37fa79b62435545271b4e8e882f5 *./tests/data/lavf/lavf.gxf
 +796392 ./tests/data/lavf/lavf.gxf
- ./tests/data/lavf/lavf.gxf CRC=0x102918fd
++./tests/data/lavf/lavf.gxf CRC=0x3b1a8e91
@@@ -1,3 -1,3 +1,3 @@@
- 23177c8a72f34e243e9ffc4f6c70d3c7 *./tests/data/lavf/lavf.mxf_d10
 -b66087558cd1ff8e64290ffd856c88bc *./tests/data/lavf/lavf.mxf_d10
++0d72247067569901a2e351586ddc0b82 *./tests/data/lavf/lavf.mxf_d10
  5330989 ./tests/data/lavf/lavf.mxf_d10
- ./tests/data/lavf/lavf.mxf_d10 CRC=0x81602ff1
+ ./tests/data/lavf/lavf.mxf_d10 CRC=0x4474d480