Commit Graph

634 Commits

Author SHA1 Message Date
Michael Niedermayer
3ead79eaa3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: use updated reference for aac-latm_stereo_to_51
  avconv: use libavresample
  Add libavresample
  FATE: avoid channel mixing in lavf-dv_fmt

Conflicts:
	Changelog
	Makefile
	cmdutils.c
	configure
	doc/APIchanges
	ffmpeg.c
	tests/lavf-regression.sh
	tests/ref/lavf/dv_fmt
	tests/ref/seek/lavf_dv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-25 23:17:41 +02:00
Justin Ruggles
c5671aeb77 FATE: avoid channel mixing in lavf-dv_fmt
This partially reverts acb1730218
which would only have needed to change the checksums if channel mixing had
been properly avoided. This changes the output file size reference and the
seek test reference back to the previous values.
2012-04-24 15:55:45 -04:00
Michael Niedermayer
3bbf3f7e42 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  matroska: Clear prev_pkt between seeks.
  avutil: change default buffer size alignment for sample buffer functions
  audemux: Add a sanity check for the number of channels
  Remove libdirac decoder.
  matroska: Add incremental parsing of clusters.
  avconv: fix off by one check in complex_filter
  mpegts: Try seeking back even for nonseekable protocols
  swscale: K&R formatting cosmetics (part III)

Conflicts:
	configure
	doc/general.texi
	doc/platform.texi
	ffmpeg.c
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/libdirac.h
	libavcodec/libdiracdec.c
	libavformat/au.c
	libavformat/mpegts.c
	libswscale/input.c
	tests/ref/seek/lavf_mkv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-24 02:30:41 +02:00
Nicolas George
9b84f8a987 parseutils: add av_parse_time() test. 2012-04-23 14:39:01 +02:00
Nicolas George
9246896f77 parseutils: add FATE test. 2012-04-23 14:39:01 +02:00
Dale Curtis
8336eb6f85 matroska: Add incremental parsing of clusters.
Reduces the amount of upfront data required for cluster parsing
thus decreasing latency on seek and startup.

The change in the seek-lavf_mkv FATE test is due to incremental
parsing no longer reading as much data as the old parser and
thus not having that additional data to generate index entries
based on keyframes.  Index entries are added correctly as the
file is parsed.

All FATE tests pass and Chrome has been using this patch for ~6
months without issue.

Currently incremental parsing is not supported for files with
SSA tracks since they require merging packets between clusters.
In this case the code falls back to non-incremental parsing.

Signed-off-by: Aaron Colwell <acolwell@chromium.org>
Signed-off-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-04-22 17:23:50 -07:00
Michael Niedermayer
3194ab78a6 Merge remote-tracking branch 'qatar/master'
* 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>
2012-04-20 22:18:26 +02:00
Justin Ruggles
acb1730218 FATE: allow lavf tests to alter input parameters
Change some lavf tests to avoid resampling and channel mixing.
2012-04-20 10:23:57 -04:00
Justin Ruggles
5052980400 FATE: replace the acodec-pcm_s24daud test with an enc_dec_pcm checksum test
This avoids resampling and channel mixing by using a source with
the correct channel layout and sample rate.
2012-04-20 10:23:57 -04:00
Justin Ruggles
03caef1bed FATE: replace the acodec-g726 test with 4 new encode/decode tests
Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
2012-04-20 10:23:57 -04:00
Justin Ruggles
a6c8cca2a8 FATE: replace current g722 encoding tests with an encode/decode test
Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
2012-04-20 10:23:57 -04:00
Michael Niedermayer
788a60d9d6 ffmpeg: make max frames work again, after merge
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-17 04:37:08 +02:00
Michael Niedermayer
56b9d9b5cd vf_thumbnail: colorspace changed from yv12 to rgb
Not fully investigated but thumbnail supports rgb and not yv12 so
this is better ...

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-17 04:06:27 +02:00
Michael Niedermayer
128fa1295c fate: gif: change checksum to bgr8 from rgb8 as thats what gets selected now
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-17 04:05:44 +02:00
Michael Niedermayer
4778783160 Merge commit '3b266da3d35f3f7a61258b78384dfe920d875d29'
* commit '3b266da3d35f3f7a61258b78384dfe920d875d29':
  avconv: add support for complex filtergraphs.
  avconv: make filtergraphs global.
  avconv: move filtered_frame from InputStream to OutputStream.
  avconv: don't set output width/height directly from input value.
  avconv: move resample_{width,height,pix_fmt} to InputStream.
  avconv: remove a useless variable from OutputStream.
  avconv: get output pixel format from lavfi.
  graphparser: fix the order in which unlabeled input links are returned.
  avconv: change {input,output}_{streams,files} into arrays of pointers.
  avconv: don't pass input/output streams to some functions.

Conflicts:
	cmdutils.c
	cmdutils.h
	doc/ffmpeg.texi
	ffmpeg.c
	ffplay.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-17 04:03:50 +02:00
Anton Khirnov
b7327887ea avconv: get output pixel format from lavfi.
This way we don't require a clearly defined corresponding input stream.

The result for the xwd test changes because rgb24 is now chosen instead
of bgra.
2012-04-15 20:22:36 +02:00
Carl Eugen Hoyos
cb8f5194b3 Set bits_per_coded_sample when encoding Microsoft Video-1.
Fixes ticket #1193.
2012-04-15 16:35:03 +02:00
Reimar Döffinger
0c1e9c2d6a latmenc: copy pce config from proper location.
For the FATE test sample used, this only avoids a warning
message.
However for other samples like al05_44.mp4 the converted
file can be played only after this fix.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-12 20:28:37 +02:00
Reimar Döffinger
912a838efe latmenc: fix muxing of byte-aligned DSE.
This will only work for DSEs that are first in a packet, but
that is enough to fix handling of the reference files in
fate-suite/aac (though most of them still have other issues).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-12 20:27:47 +02:00
Reimar Döffinger
277f20c3c8 lavf: always call avio_flush in av_write_trailer.
Otherwise for muxers like e.g. latmenc that never call
avio_flush (and do not have a write_trailer function)
a part of the data will always be missing.
Also update references for the voc muxer, which was also
buggy before and did not write out all data.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-12 00:13:53 +02:00
Michael Niedermayer
e387c9d5dd Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  rv40dsp x86: use only one register, for both increment and loop counter
  rv40dsp: implement prescaled versions for biweight.
  avconv: use default channel layouts when they are unknown
  avconv: parse channel layout string
  nutdec: K&R formatting cosmetics
  vda: Signal 4 byte NAL headers to the decoder regardless of what's in the extradata
  mem: Consistently return NULL for av_malloc(0)
  vf_overlay: implement poll_frame()
  vf_scale: support named constants for sws flags.
  lavc doxy: add all installed headers to doxy groups.
  lavc doxy: add avfft to the main lavc group.
  lavc doxy: add remaining avcodec.h functions to a misc doxygen group.
  lavc doxy: add AVPicture functions to a doxy group.
  lavc doxy: add resampling functions to a doxy group.
  lavc doxy: replace \ with /
  lavc doxy: add encoding functions to a doxy group.
  lavc doxy: add decoding functions to a doxy group.
  lavc doxy: fix formatting of AV_PKT_DATA_{PARAM_CHANGE,H263_MB_INFO}
  lavc doxy: add AVPacket-related stuff to a separate doxy group.
  lavc doxy: add core functions/definitions to a doxy group.
  ...

Conflicts:
	ffmpeg.c
	libavcodec/avcodec.h
	libavcodec/vda.c
	libavcodec/x86/rv40dsp.asm
	libavfilter/vf_scale.c
	libavformat/nutdec.c
	libavutil/mem.c
	tests/ref/acodec/pcm_s24daud

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-10 22:53:25 +02:00
Justin Ruggles
d3c59d5003 avconv: use default channel layouts when they are unknown
If either input or output layout is known and the channel counts match,
use the known layout for both. Otherwise choose the default layout based on
av_get_default_channel_layout().

Changed some FATE references due to some WAVE files now having a non-zero
channel mask.
2012-04-10 11:30:01 -04:00
Reimar Döffinger
7f66912f1a Fix gif regression test on big-endian.
Decode output must be converted to rgb24 to avoid CRC difference
due to palette being stored in machine endianness.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-09 21:55:52 +02:00
Reimar Döffinger
cabc0ac72f Add gif and xbm regression tests.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-09 17:21:35 +02:00
Reimar Döffinger
6458a08700 vf_scale: ensure the palette is set for output.
Since those are pseudo-palette formats, swscale does not write
into data[1], swscale must initialize the palette properly itself.
This lead to frames that actually decoded as all-gray before.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-09 17:21:35 +02:00
Reimar Döffinger
ed68fd45d3 Add v408 codec regression test.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-09 00:46:43 +02:00
Reimar Döffinger
c311afca0a Add roqaudio regression test.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-09 00:19:06 +02:00
Reimar Döffinger
a7b1420ca2 Update reference for disabled fate-wmv8-x8intra test to new format.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-08 20:01:07 +02:00
Reimar Döffinger
58c25724b7 Add nellymoser "fuzzy" FATE test.
Since we cannot specify decode parameters (and also because
it is better in principle) the 1-channel reference file
needs to be enabled, too.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-08 02:43:56 +02:00
Reimar Döffinger
e80ce4adea Do not decode the mp3 data in lavf test since that is not bit-exact.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-07 16:35:28 +02:00
Reimar Döffinger
82ca1f8004 Test mp3 container muxing (and thus ID3 writing).
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-07 15:15:52 +02:00
Reimar Döffinger
cb25a186eb Fix DCA regression test to work across architectures.
Only the decoding step is not bit-exact, so avoid checksum for that.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-07 15:13:01 +02:00
Reimar Döffinger
10e3dd15a5 Remove AAC and nellymoser tests that do not work.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-07 13:24:12 +02:00
Reimar Döffinger
796097c696 Add tests for audio encoders: aac, dca, ra144 and nellymoser.
The PSNR values are of varying usefulness, though at least
the DTS and AAC ones are useful with the right shift value.
Note: due to usage of floats some of these may fail on other
architectures.
In that case they should be converted into a CMD = stddev
FATE test, but it seems useful to try this way first.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-07 11:50:18 +02:00
Michael Niedermayer
e3b7079ddf adpcmenc: fix encoded s_0 value.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-07 10:58:10 +02:00
Reimar Döffinger
50361e5144 Add regression test for mov rtp hinting.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-06 19:50:37 +02:00
Reimar Döffinger
099a1875f0 dpxenc: also test 10 and 16 bit formats.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-06 19:50:37 +02:00
Michael Niedermayer
9e91a7d45b fix fate tests after 76c79aa28f
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-06 08:32:09 +02:00
Michael Niedermayer
2c5a2958e9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: Factorize declaration of mb_sizes array.
  vsrc_buffer: when no frame is available, return an error instead of segfaulting.
  configure: add dl to frei0r extralibs.
  dsputil x86: use SSE float instruction instead of SSE2 integer equivalent
  dsputil x86: remove deprecated parameter from scalarproduct_int16 prototype
  vp8dsp x86: perform rounding shift with a single instruction
  fate: add BMP tests.
  swscale: handle complete dimensions for monoblack/white.
  aacenc: Mark deinterleave_input_samples argument as const.
  vf_unsharp: Mark readonly variable as const.
  h264: fix 4:2:2 PCM-macroblocks decoding

Conflicts:
	configure
	libavcodec/h264.h
	libavcodec/x86/dsputil_mmx.c
	libavfilter/vf_unsharp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-05 22:26:50 +02:00
Clément Bœsch
bfd30fa8a3 lavfi/colormatrix: add forgotten tests. 2012-04-05 07:32:45 +02:00
Ramiro Polla
bd603494f9 asfenc: properly write index information
The index must take into account the pre-roll time and must seek backwards,
not forwards.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-05 06:03:10 +02:00
Ramiro Polla
ae315a6a38 asfenc: start at object 1 instead of 0
This is how it is done in the official muxer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-05 05:48:32 +02:00
Reimar Döffinger
6cecb8915a Add forgotten avio-direct reference file.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-04-04 21:15:07 +02:00
Ronald S. Bultje
7756859a31 fate: add BMP tests. 2012-04-04 11:16:23 -07:00
Derek Buitenhuis
0aaa45ef69 FATE: Add RALF decoding test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-04-01 15:56:08 -04:00
maxlazarov
7a3df014b9 The lt and lte functions were swapped. 2012-04-01 11:01:08 +02:00
Derek Buitenhuis
6bd9744582 FATE: Add RALF decoding test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-31 22:33:00 +02:00
Michael Niedermayer
d2a6074359 fate: update regression checksum due to 95ce0ddcfe
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-31 16:35:54 +02:00
Michael Niedermayer
1dab5efa01 fate/vp8-size-change: set bitexact flag
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-29 06:03:55 +02:00
Michael Niedermayer
d40ff29cac Merge remote-tracking branch 'qatar/master'
* qatar/master:
  asf: only set index_read if the index contained entries.
  cabac: add overread protection to BRANCHLESS_GET_CABAC().
  cabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC().
  cabac: remove unused argument from BRANCHLESS_GET_CABAC_UPDATE().
  cabac: use struct+offset instead of memory operand in BRANCHLESS_GET_CABAC().
  h264: add overread protection to get_cabac_bypass_sign_x86().
  h264: reindent get_cabac_bypass_sign_x86().
  h264: use struct offsets in get_cabac_bypass_sign_x86().
  h264: fix overreads in cabac reader.
  wmall: fix seeking.
  lagarith: fix buffer overreads.
  dvdec: drop unnecessary dv_tablegen.h #include
  build: fix doc generation errors in parallel builds
  Replace memset(0) by zero initializations.
  faandct: Remove FAAN_POSTSCALE define and related code.
  dvenc: print allowed profiles if the video doesn't conform to any of them.
  avcodec_encode_{audio,video}: only reallocate output packet when it has non-zero size.
  FATE: add a test for vp8 with changing frame size.
  fate: add kgv1 fate test.
  oggdec: calculate correct timestamps in Ogg/FLAC

Conflicts:
	libavcodec/4xm.c
	libavcodec/cook.c
	libavcodec/dvdata.c
	libavcodec/dvdsubdec.c
	libavcodec/lagarith.c
	libavcodec/lagarithrac.c
	libavcodec/utils.c
	tests/fate/video.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-03-29 04:11:10 +02:00