Justin Ruggles [Fri, 28 Oct 2011 00:22:14 +0000 (20:22 -0400)]
g726dec: remove the sample_rate validation
Justin Ruggles [Fri, 28 Oct 2011 00:16:45 +0000 (20:16 -0400)]
g726: use bits_per_coded_sample instead of bitrate to determine mode
This requires some workarounds in the WAV muxer and demuxer. We need to write
the correct bits_per_coded_sample and block_align in the muxer. In the
demuxer, we cannot rely on the bits_per_coded_sample value, so we use the bit
rate and sample rate to determine the value.
This avoids having the decoder rely on AVCodecContext.bit_rate, which is not
required to be set by the user for decoding according to our API.
Justin Ruggles [Thu, 27 Oct 2011 22:13:47 +0000 (18:13 -0400)]
g726: split the init function for the encoder and decoder
This also allows for not having a decoder close function.
Justin Ruggles [Thu, 27 Oct 2011 18:36:41 +0000 (14:36 -0400)]
g726: pre-calculate the number of output samples.
Allows for checking output buffer size and simplification of decoding loop.
Justin Ruggles [Thu, 27 Oct 2011 18:31:42 +0000 (14:31 -0400)]
g726: use int16_t instead of short
Martin Storsjö [Tue, 1 Nov 2011 14:22:56 +0000 (16:22 +0200)]
Enable w32threads automatically unless explicitly disabled
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 7 Feb 2011 09:49:37 +0000 (11:49 +0200)]
cmdutils: Rename read_file to cmdutils_read_file
This symbol name clashes with a symbol in gnutls, if linking
statically to that library.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Sun, 30 Oct 2011 12:19:50 +0000 (13:19 +0100)]
libdirac/libschroedinger: Drop unnecessary symbol prefixes.
The names used in the libdirac/libschroedinger wrappers are long enough as-is.
Bloating them with unnecessary prefixes makes them even more unwieldy.
Janne Grunau [Sun, 30 Oct 2011 14:34:32 +0000 (15:34 +0100)]
cmdutils: check fread() return value
Justin Ruggles [Thu, 27 Oct 2011 17:58:05 +0000 (13:58 -0400)]
cin audio: use sign_extend() instead of casting to int16_t
Justin Ruggles [Thu, 27 Oct 2011 17:50:02 +0000 (13:50 -0400)]
cin audio: restructure decoding loop to avoid a separate counter variable
Also check output buffer size instead of truncating output.
Justin Ruggles [Thu, 27 Oct 2011 17:41:02 +0000 (13:41 -0400)]
cin audio: use local variable for delta value
Justin Ruggles [Thu, 27 Oct 2011 17:35:25 +0000 (13:35 -0400)]
cin audio: remove unneeded cast from void*
Justin Ruggles [Thu, 27 Oct 2011 17:33:57 +0000 (13:33 -0400)]
cin audio: validate the channel count
Justin Ruggles [Thu, 27 Oct 2011 17:28:33 +0000 (13:28 -0400)]
cin audio: remove unneeded AVCodecContext pointer from CinAudioContext
Justin Ruggles [Thu, 27 Oct 2011 16:46:32 +0000 (12:46 -0400)]
dsicin: fix several audio-related fields in the CIN demuxer
bits_per_coded_sample should be 8.
block_align is calculated incorrectly, but it is not needed anyway.
packet pts should be calculated in samples.
packet duration can be set.
Justin Ruggles [Thu, 27 Oct 2011 18:29:28 +0000 (14:29 -0400)]
flacdec: use av_get_bytes_per_sample() to get sample size
Justin Ruggles [Thu, 27 Oct 2011 15:45:50 +0000 (11:45 -0400)]
dca: handle errors from dca_decode_block()
Return error if core block decoding fails.
Do not enable XCh if XCh extension block decoding fails.
Justin Ruggles [Thu, 27 Oct 2011 15:42:23 +0000 (11:42 -0400)]
dca: return error if the frame header is invalid
Justin Ruggles [Thu, 27 Oct 2011 15:41:02 +0000 (11:41 -0400)]
dca: return proper error codes instead of -1
Kostya Shishkov [Sat, 29 Oct 2011 17:35:20 +0000 (19:35 +0200)]
utvideo: handle empty Huffman trees
If the frame is filled with the same colour, encoder may produce no data
and the fill value is indicated by zero code length (the rest of symbols
will have 0xFF for code length, meaning invalid). So such Huffman trees
should be treated specially.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Justin Ruggles [Wed, 26 Oct 2011 15:08:49 +0000 (11:08 -0400)]
binkaudio: change short to int16_t
Justin Ruggles [Wed, 26 Oct 2011 15:02:12 +0000 (11:02 -0400)]
binkaudio: only decode one block at a time.
This prevents truncating output due to an output buffer that is too small for
all blocks. There is no limit on the number of blocks in a packet.
Justin Ruggles [Wed, 26 Oct 2011 14:18:39 +0000 (10:18 -0400)]
binkaudio: store interleaved overlap samples in BinkAudioContext.
This fixes the requirement for the buffer size to be larger than the number of
samples actually decoded.
Justin Ruggles [Tue, 25 Oct 2011 19:13:19 +0000 (15:13 -0400)]
binkaudio: pre-calculate quantization factors
Justin Ruggles [Tue, 25 Oct 2011 17:47:50 +0000 (13:47 -0400)]
binkaudio: add some buffer overread checks.
This stops decoding before overreads instead of after.
Justin Ruggles [Fri, 28 Oct 2011 20:36:47 +0000 (16:36 -0400)]
atrac3: support float or int16 output using request_sample_fmt
Justin Ruggles [Fri, 28 Oct 2011 17:02:15 +0000 (13:02 -0400)]
atrac3: add CODEC_CAP_SUBFRAMES capability
the decoder can handle multiple frames in a packet
Justin Ruggles [Fri, 28 Oct 2011 17:00:53 +0000 (13:00 -0400)]
atrac3: return appropriate error codes instead of -1
Justin Ruggles [Fri, 28 Oct 2011 16:53:11 +0000 (12:53 -0400)]
atrac3: make sure all memory is freed on init failure
Justin Ruggles [Fri, 14 Oct 2011 21:17:46 +0000 (17:17 -0400)]
atrac3: add a couple macro constants
Justin Ruggles [Fri, 14 Oct 2011 21:10:33 +0000 (17:10 -0400)]
atrac3: return error if packet is too small
Justin Ruggles [Fri, 14 Oct 2011 21:09:58 +0000 (17:09 -0400)]
atrac3: check output buffer size before decoding
Justin Ruggles [Fri, 28 Oct 2011 17:29:41 +0000 (13:29 -0400)]
atrac3: use separate pointers for each channel in decodeFrame()
Justin Ruggles [Fri, 14 Oct 2011 20:47:03 +0000 (16:47 -0400)]
atrac3: use optimized float_interleave() function for stereo interleaving
Justin Ruggles [Fri, 14 Oct 2011 20:32:55 +0000 (16:32 -0400)]
atrac3: decode mono directly to the output buffer
Justin Ruggles [Fri, 14 Oct 2011 20:13:30 +0000 (16:13 -0400)]
atrac3: decode output to float samples instead of converting to s16
Justin Ruggles [Fri, 28 Oct 2011 17:10:27 +0000 (13:10 -0400)]
atrac1: return appropriate error codes instead of -1
Justin Ruggles [Fri, 28 Oct 2011 17:07:20 +0000 (13:07 -0400)]
atrac1: check for ff_mdct_init() failure
Justin Ruggles [Fri, 14 Oct 2011 19:25:01 +0000 (15:25 -0400)]
atrac1: use optimized float_interleave() function for stereo interleaving
Justin Ruggles [Fri, 14 Oct 2011 04:30:42 +0000 (00:30 -0400)]
atrac1: fix a typo
Justin Ruggles [Fri, 14 Oct 2011 04:24:50 +0000 (00:24 -0400)]
atrac1: validate number of channels
Justin Ruggles [Fri, 14 Oct 2011 04:22:01 +0000 (00:22 -0400)]
atrac1: decode mono audio directly to output buffer
For stereo we need to use intermediate planar buffers, but mono does not need
to be deinterleaved so the output buffer can be used directly.
Justin Ruggles [Fri, 14 Oct 2011 04:16:31 +0000 (00:16 -0400)]
atrac1: check output buffer size before decoding
Justin Ruggles [Sat, 29 Oct 2011 18:31:11 +0000 (14:31 -0400)]
cook: return AVERROR_PATCHWELCOME instead of ENOTSUP
ENOTSUP is not defined on some systems
Justin Ruggles [Thu, 27 Oct 2011 01:11:13 +0000 (21:11 -0400)]
cook: check output buffer size before decoding
Justin Ruggles [Thu, 27 Oct 2011 01:08:57 +0000 (21:08 -0400)]
cook: do not needlessly set *data_size to 0
Justin Ruggles [Thu, 27 Oct 2011 01:03:49 +0000 (21:03 -0400)]
cook: remove pointless return statements
Justin Ruggles [Thu, 27 Oct 2011 00:59:14 +0000 (20:59 -0400)]
cook: simplify decouple_info()
Justin Ruggles [Thu, 27 Oct 2011 00:46:36 +0000 (20:46 -0400)]
cook: return appropriate error codes instead of -1
Justin Ruggles [Thu, 27 Oct 2011 00:42:02 +0000 (20:42 -0400)]
cook: avoid hardcoded sizes in sizeof()
Justin Ruggles [Wed, 26 Oct 2011 22:36:08 +0000 (18:36 -0400)]
cook: remove unneeded #includes
Justin Ruggles [Wed, 26 Oct 2011 22:30:22 +0000 (18:30 -0400)]
cook: output float samples instead of converting to int16
Benjamin Larsson [Sat, 29 Oct 2011 10:57:10 +0000 (12:57 +0200)]
mov: Avoid divide by zero in edit list dts handling
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Kostya Shishkov [Fri, 28 Oct 2011 18:40:23 +0000 (20:40 +0200)]
utvideo: account for coupled lines in YUV420 format
Luma slices in YUV420 colourspace should have height in multiple of two since
they have the same line of chrominance data corresponding to pair of them.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Ronald S. Bultje [Sat, 29 Oct 2011 06:50:04 +0000 (23:50 -0700)]
vp3: fix oob read for negative tokens and memleaks on error.
Ronald S. Bultje [Sat, 29 Oct 2011 06:48:43 +0000 (23:48 -0700)]
vp8: fix overflow in segmentation map caching.
Ronald S. Bultje [Fri, 28 Oct 2011 03:37:34 +0000 (20:37 -0700)]
lavf: use number of output pictures for delay checks.
This fixes false positives of has_codec_delay_been_guessed() for
streams where not every input picture generates an output picture,
such as interlaced H264.
Anton Mitrofanov [Fri, 28 Oct 2011 19:33:23 +0000 (23:33 +0400)]
Fix decoding of lossless 4:2:2 H.264
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Anton Mitrofanov [Fri, 28 Oct 2011 15:13:13 +0000 (19:13 +0400)]
Fix decoding of lossless 10-bit 4:4:4 H.264
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Alex Converse [Wed, 26 Oct 2011 01:37:24 +0000 (18:37 -0700)]
probe: Restore identification of files with very large id3 tags and no extension.
Restore behavior of identifying files with huge id3 tags as
mp3 at AVPROBE_SCORE_MAX/4. This was broken in r25378 and subsequently
removed in r25929.
Alex Converse [Wed, 26 Oct 2011 01:26:35 +0000 (18:26 -0700)]
probe: Remove id3 tag presence as a criteria to do file extension checking.
This only encourages our users to put id3v2 tags on non-mp3 files to opt
into extension based probing.
Alex Converse [Tue, 11 Oct 2011 21:49:59 +0000 (14:49 -0700)]
mpegts: MP4 SL support
Alex Converse [Mon, 10 Oct 2011 19:50:00 +0000 (12:50 -0700)]
mpegts: MP4 OD support
Alex Converse [Thu, 6 Oct 2011 01:24:17 +0000 (18:24 -0700)]
mpegts: Add support for Sections in PMT
Alex Converse [Wed, 5 Oct 2011 18:04:42 +0000 (11:04 -0700)]
mpegts: Replace the MP4 descriptor parser with a recursive parser.
Alex Converse [Wed, 5 Oct 2011 06:43:59 +0000 (23:43 -0700)]
mpegts: Add support for multiple mp4 descriptors
Alex Converse [Wed, 5 Oct 2011 01:24:22 +0000 (18:24 -0700)]
mpegts: Parse mpeg2 SL descriptors.
Alex Converse [Wed, 5 Oct 2011 17:59:15 +0000 (10:59 -0700)]
isom: Add MPEG4SYSTEMS dummy object type indication.
Michael Niedermayer [Fri, 21 Oct 2011 09:41:35 +0000 (09:41 +0000)]
aacdec: allow output reconfiguration on channel changes
Locking the decoder against channel config changes in
parse_adts_frame_header() seems to be unnecessary and
streams with channel config changes are reported.
The sample in http://roundup.libav.org/issue999 still works.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Justin Ruggles [Mon, 24 Oct 2011 12:44:24 +0000 (08:44 -0400)]
nellymoserenc: take float input samples instead of int16
This avoids having to convert all input data from int16 to float, which is used
internally for encoding.
Justin Ruggles [Fri, 28 Oct 2011 18:15:25 +0000 (14:15 -0400)]
nellymoserdec: use dsp functions for overlap and windowing
Justin Ruggles [Mon, 17 Oct 2011 14:24:47 +0000 (10:24 -0400)]
nellymoserdec: do not fail if there is extra data in the packet
instead just print a warning
Justin Ruggles [Mon, 17 Oct 2011 14:22:46 +0000 (10:22 -0400)]
nellymoserdec: fail if output buffer is too small
avoids silently truncating the output
Justin Ruggles [Mon, 17 Oct 2011 14:09:52 +0000 (10:09 -0400)]
nellymoserdec: remove pointless buffer size check.
Anton Khirnov [Fri, 28 Oct 2011 17:53:55 +0000 (19:53 +0200)]
lavf: add init_put_byte() to the list of visible symbols.
Janne Grunau [Fri, 28 Oct 2011 17:22:27 +0000 (19:22 +0200)]
seek-test: free options dictionary after use
Michael Niedermayer [Wed, 26 Oct 2011 13:47:14 +0000 (15:47 +0200)]
snow: do not draw_edge if emu_edge is set
Fix segfault on emu edge, to reproduce
make fate-vsynth1-snow
avplay -flags emu_edge tests/data/vsynth1/snow.avi
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Janne Grunau [Fri, 28 Oct 2011 16:36:54 +0000 (18:36 +0200)]
tools/pktdumper: update to recent avformat api
Janne Grunau [Fri, 28 Oct 2011 16:32:51 +0000 (18:32 +0200)]
seek-test: update to recent avformat api
Justin Ruggles [Sun, 25 Sep 2011 00:13:56 +0000 (20:13 -0400)]
wmavoice: move output buffer size check to synth_superframe().
this allows for checking against the actual output size instead of max size.
Justin Ruggles [Sun, 25 Sep 2011 00:11:34 +0000 (20:11 -0400)]
wmavoice: only set data_size to 0 when necessary
Justin Ruggles [Sat, 24 Sep 2011 04:50:22 +0000 (00:50 -0400)]
wmapro: fix strict-aliasing violations by using av_alias32
Also fix some undefined unsigned/signed conversions.
Justin Ruggles [Sat, 24 Sep 2011 04:34:37 +0000 (00:34 -0400)]
wmapro: use FmtConvertContext.float_interleave() to interleave output samples
Justin Ruggles [Sat, 24 Sep 2011 03:38:36 +0000 (23:38 -0400)]
wmadec: consolidate 2 output buffer size checks into 1 check
Justin Ruggles [Tue, 11 Oct 2011 18:38:21 +0000 (14:38 -0400)]
apedec: assert that s->samples is not negative before trying to decode
Justin Ruggles [Tue, 11 Oct 2011 18:35:33 +0000 (14:35 -0400)]
apedec: use FFALIGN macro for internal data buffer size
Justin Ruggles [Tue, 11 Oct 2011 18:12:54 +0000 (14:12 -0400)]
apedec: do not keep incrementing the input data pointer past the end of the
buffer during entropy decoding.
The pointer address could overflow, which would likely segfault. Instead set
the context error flag to indicate that the decoder tried to read past the
end of the packet data.
Justin Ruggles [Tue, 11 Oct 2011 18:06:52 +0000 (14:06 -0400)]
apedec: check for input buffer overflow while reading frame header
Justin Ruggles [Tue, 11 Oct 2011 17:34:18 +0000 (13:34 -0400)]
apedec: use unsigned int for offset
avoids implementation-defined unsigned-to-signed conversion and simplifies
the bounds checking.
Justin Ruggles [Tue, 11 Oct 2011 17:25:48 +0000 (13:25 -0400)]
apedec: remove pointless increment of 'buf'
The variable is not used anymore at that point.
Justin Ruggles [Tue, 11 Oct 2011 17:25:27 +0000 (13:25 -0400)]
apedec: set s->currentframeblocks after validating nblocks
Justin Ruggles [Tue, 11 Oct 2011 17:17:44 +0000 (13:17 -0400)]
apedec: use unsigned int for 'nblocks' and make sure that it's within int range
Justin Ruggles [Tue, 11 Oct 2011 16:49:46 +0000 (12:49 -0400)]
apedec: do not set s->samples until after validation.
This prevents errors and/or invalid writes in the next decode call due to
s->samples still being negative.
Justin Ruggles [Tue, 11 Oct 2011 16:47:11 +0000 (12:47 -0400)]
apedec: check for data buffer realloc failure
Justin Ruggles [Tue, 11 Oct 2011 15:55:56 +0000 (11:55 -0400)]
apedec: return meaningful error values in ape_decode_frame()
Justin Ruggles [Tue, 11 Oct 2011 15:54:42 +0000 (11:54 -0400)]
apedec: correct an error message
Justin Ruggles [Tue, 11 Oct 2011 15:53:17 +0000 (11:53 -0400)]
apedec: cosmetics
break some excessively long lines and remove space after '*'
Justin Ruggles [Tue, 11 Oct 2011 15:48:39 +0000 (11:48 -0400)]
apedec: return meaningful error codes from ape_decode_init()
Justin Ruggles [Tue, 11 Oct 2011 15:47:15 +0000 (11:47 -0400)]
apedec: check for filter buffer allocation failure