ffmpeg.git
7 years agogsm demuxer: do not allocate packet twice.
Justin Ruggles [Wed, 2 Nov 2011 22:30:49 +0000 (18:30 -0400)]
gsm demuxer: do not allocate packet twice.

fixes memleak with raw gsm demuxing.

7 years agoflvenc: use first packet delay as global delay.
Justin Ruggles [Wed, 26 Oct 2011 16:43:18 +0000 (12:43 -0400)]
flvenc: use first packet delay as global delay.

This keeps the streams sychronized. The packets must be interleaved per-DTS.

7 years agoac3enc: doxygen update.
Justin Ruggles [Wed, 2 Nov 2011 14:38:10 +0000 (10:38 -0400)]
ac3enc: doxygen update.

Add some parameters to existing function documentation.
Remove some unneeded documentation.
Convert some static function documentation to non-doxygen style.

7 years agoimc: return error codes instead of 0 for error conditions.
Justin Ruggles [Sat, 29 Oct 2011 15:16:01 +0000 (11:16 -0400)]
imc: return error codes instead of 0 for error conditions.

This fixes a bug where the whole buffer was returned as decoded audio due to
*data_size not being set to zero and the return value being >= 0.

7 years agoimc: return meaningful error codes instead of -1
Justin Ruggles [Fri, 28 Oct 2011 22:36:28 +0000 (18:36 -0400)]
imc: return meaningful error codes instead of -1

7 years agoimc: do not set channel layout for stereo
Justin Ruggles [Fri, 28 Oct 2011 22:32:40 +0000 (18:32 -0400)]
imc: do not set channel layout for stereo

we only support decoding of mono imc

7 years agoimc: validate channel count
Justin Ruggles [Fri, 28 Oct 2011 22:31:21 +0000 (18:31 -0400)]
imc: validate channel count

ask for a sample if not mono

7 years agoimc: check for ff_fft_init() failure
Justin Ruggles [Fri, 28 Oct 2011 22:25:49 +0000 (18:25 -0400)]
imc: check for ff_fft_init() failure

7 years agoimc: check output buffer size before decoding
Justin Ruggles [Fri, 28 Oct 2011 22:24:03 +0000 (18:24 -0400)]
imc: check output buffer size before decoding

7 years agoimc: use DSPContext.bswap16_buf() to byte-swap packet data
Justin Ruggles [Fri, 28 Oct 2011 22:16:31 +0000 (18:16 -0400)]
imc: use DSPContext.bswap16_buf() to byte-swap packet data

7 years agortsp: add allowed_media_types option
John Brooks [Sat, 29 Oct 2011 21:41:24 +0000 (15:41 -0600)]
rtsp: add allowed_media_types option

Streams from RTSP or SDP that do not match an allowed type will
be skipped entirely, which allows video-only or audio-only
streaming from servers that provide both.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agolibgsm: add flush function to reset the decoder state when seeking
Justin Ruggles [Fri, 28 Oct 2011 14:35:15 +0000 (10:35 -0400)]
libgsm: add flush function to reset the decoder state when seeking

7 years agolibgsm: simplify decoding by using a loop
Justin Ruggles [Fri, 28 Oct 2011 14:28:41 +0000 (10:28 -0400)]
libgsm: simplify decoding by using a loop

7 years agogsm: log error message when packet is too small
Justin Ruggles [Fri, 28 Oct 2011 14:18:07 +0000 (10:18 -0400)]
gsm: log error message when packet is too small

7 years agolibgsmdec: do not needlessly set *data_size to 0
Justin Ruggles [Fri, 28 Oct 2011 14:10:12 +0000 (10:10 -0400)]
libgsmdec: do not needlessly set *data_size to 0

7 years agogsmdec: do not needlessly set *data_size to 0
Justin Ruggles [Fri, 28 Oct 2011 14:09:45 +0000 (10:09 -0400)]
gsmdec: do not needlessly set *data_size to 0

7 years agogsmdec: add flush function to reset the decoder state when seeking
Justin Ruggles [Fri, 28 Oct 2011 14:07:41 +0000 (10:07 -0400)]
gsmdec: add flush function to reset the decoder state when seeking

7 years agolibgsmdec: check output buffer size before decoding
Justin Ruggles [Fri, 28 Oct 2011 04:52:36 +0000 (00:52 -0400)]
libgsmdec: check output buffer size before decoding

7 years agogsmdec: log error message when output buffer is too small.
Justin Ruggles [Fri, 28 Oct 2011 04:34:52 +0000 (00:34 -0400)]
gsmdec: log error message when output buffer is too small.

also return AVERROR(EINVAL) instead of -1

7 years agogsm: use av_get_bytes_per_sample() in frame_bytes calculation
Justin Ruggles [Fri, 28 Oct 2011 04:31:11 +0000 (00:31 -0400)]
gsm: use av_get_bytes_per_sample() in frame_bytes calculation

7 years agoCreate separate functions for the raw GSM demuxer.
Justin Ruggles [Fri, 28 Oct 2011 04:07:32 +0000 (00:07 -0400)]
Create separate functions for the raw GSM demuxer.

Put the new raw GSM demuxer in its own file.
Fixes raw GSM demuxing.

7 years agoReplace vendor string in Ogg and FLAC muxers.
Diego Biurrun [Sun, 30 Oct 2011 20:30:32 +0000 (21:30 +0100)]
Replace vendor string in Ogg and FLAC muxers.

7 years agoReplace some forgotten FFmpeg references by Libav.
Diego Biurrun [Sun, 30 Oct 2011 17:25:48 +0000 (18:25 +0100)]
Replace some forgotten FFmpeg references by Libav.

7 years agovsrc_testsrc: fix mailing list reference URL
Diego Biurrun [Sun, 30 Oct 2011 17:04:22 +0000 (18:04 +0100)]
vsrc_testsrc: fix mailing list reference URL

7 years agoReplace ffmpeg references with more accurate libav* references.
Diego Biurrun [Sun, 30 Oct 2011 17:02:42 +0000 (18:02 +0100)]
Replace ffmpeg references with more accurate libav* references.

7 years agoReplace outdated references to ffmpeg tool with avconv.
Diego Biurrun [Sun, 30 Oct 2011 16:59:01 +0000 (17:59 +0100)]
Replace outdated references to ffmpeg tool with avconv.

7 years agoRemove some stray unnecessary ffmpeg references.
Diego Biurrun [Sun, 30 Oct 2011 16:56:57 +0000 (17:56 +0100)]
Remove some stray unnecessary ffmpeg references.

7 years agovp3: remove some pointless comments
Diego Biurrun [Sun, 30 Oct 2011 16:52:11 +0000 (17:52 +0100)]
vp3: remove some pointless comments

7 years agoid3v2: fix type of ID3v2EMFunc.free()
Anton Khirnov [Wed, 2 Nov 2011 08:47:59 +0000 (09:47 +0100)]
id3v2: fix type of ID3v2EMFunc.free()

7 years agolavc: use designated initialisers for parsers.
Anton Khirnov [Wed, 2 Nov 2011 08:34:41 +0000 (09:34 +0100)]
lavc: use designated initialisers for parsers.

7 years agog726dec: add flush() function to reset state when seeking
Justin Ruggles [Fri, 28 Oct 2011 01:33:18 +0000 (21:33 -0400)]
g726dec: add flush() function to reset state when seeking

7 years agog726: don't pass index to g726_reset()
Justin Ruggles [Fri, 28 Oct 2011 01:31:24 +0000 (21:31 -0400)]
g726: don't pass index to g726_reset()

calculate it from c->code_size instead.

7 years agog726enc: add private option for setting code size directly.
Justin Ruggles [Fri, 28 Oct 2011 01:19:41 +0000 (21:19 -0400)]
g726enc: add private option for setting code size directly.

This is an easy alternative to setting bit_rate. This patch also selects the
closest bit_rate to the requested one rather than requiring an exact value.

7 years agog726: wrap the decoder functions with a CONFIG_ADPCM_G726_DECODER check
Justin Ruggles [Fri, 28 Oct 2011 00:51:40 +0000 (20:51 -0400)]
g726: wrap the decoder functions with a CONFIG_ADPCM_G726_DECODER check

7 years agog726: group the g726_encoder AVCodec with the other encoding functions
Justin Ruggles [Fri, 28 Oct 2011 00:50:41 +0000 (20:50 -0400)]
g726: group the g726_encoder AVCodec with the other encoding functions

7 years agog726: return AVERROR(EINVAL) instead of -1 for invalid channel count
Justin Ruggles [Fri, 28 Oct 2011 00:49:04 +0000 (20:49 -0400)]
g726: return AVERROR(EINVAL) instead of -1 for invalid channel count

7 years agog726enc: use av_assert0() for sample_rate validation
Justin Ruggles [Fri, 28 Oct 2011 00:47:08 +0000 (20:47 -0400)]
g726enc: use av_assert0() for sample_rate validation

This should never happen, but the check avoids a divide-by-zero.

7 years agog726: treat sample rates other than 8kHz as unofficial.
Justin Ruggles [Fri, 28 Oct 2011 00:45:24 +0000 (20:45 -0400)]
g726: treat sample rates other than 8kHz as unofficial.

7 years agog726dec: remove the sample_rate validation
Justin Ruggles [Fri, 28 Oct 2011 00:22:14 +0000 (20:22 -0400)]
g726dec: remove the sample_rate validation

7 years agog726: use bits_per_coded_sample instead of bitrate to determine mode
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.

7 years agog726: split the init function for the encoder and decoder
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.

7 years agog726: pre-calculate the number of output samples.
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.

7 years agog726: use int16_t instead of short
Justin Ruggles [Thu, 27 Oct 2011 18:31:42 +0000 (14:31 -0400)]
g726: use int16_t instead of short

7 years agoEnable w32threads automatically unless explicitly disabled
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>
7 years agocmdutils: Rename read_file to cmdutils_read_file
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>
7 years agolibdirac/libschroedinger: Drop unnecessary symbol prefixes.
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.

7 years agocmdutils: check fread() return value
Janne Grunau [Sun, 30 Oct 2011 14:34:32 +0000 (15:34 +0100)]
cmdutils: check fread() return value

7 years agocin audio: use sign_extend() instead of casting to int16_t
Justin Ruggles [Thu, 27 Oct 2011 17:58:05 +0000 (13:58 -0400)]
cin audio: use sign_extend() instead of casting to int16_t

7 years agocin audio: restructure decoding loop to avoid a separate counter variable
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.

7 years agocin audio: use local variable for delta value
Justin Ruggles [Thu, 27 Oct 2011 17:41:02 +0000 (13:41 -0400)]
cin audio: use local variable for delta value

7 years agocin audio: remove unneeded cast from void*
Justin Ruggles [Thu, 27 Oct 2011 17:35:25 +0000 (13:35 -0400)]
cin audio: remove unneeded cast from void*

7 years agocin audio: validate the channel count
Justin Ruggles [Thu, 27 Oct 2011 17:33:57 +0000 (13:33 -0400)]
cin audio: validate the channel count

7 years agocin audio: remove unneeded AVCodecContext pointer from CinAudioContext
Justin Ruggles [Thu, 27 Oct 2011 17:28:33 +0000 (13:28 -0400)]
cin audio: remove unneeded AVCodecContext pointer from CinAudioContext

7 years agodsicin: fix several audio-related fields in the CIN demuxer
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.

7 years agoflacdec: use av_get_bytes_per_sample() to get sample size
Justin Ruggles [Thu, 27 Oct 2011 18:29:28 +0000 (14:29 -0400)]
flacdec: use av_get_bytes_per_sample() to get sample size

7 years agodca: handle errors from dca_decode_block()
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.

7 years agodca: return error if the frame header is invalid
Justin Ruggles [Thu, 27 Oct 2011 15:42:23 +0000 (11:42 -0400)]
dca: return error if the frame header is invalid

7 years agodca: return proper error codes instead of -1
Justin Ruggles [Thu, 27 Oct 2011 15:41:02 +0000 (11:41 -0400)]
dca: return proper error codes instead of -1

7 years agoutvideo: handle empty Huffman trees
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>
7 years agobinkaudio: change short to int16_t
Justin Ruggles [Wed, 26 Oct 2011 15:08:49 +0000 (11:08 -0400)]
binkaudio: change short to int16_t

7 years agobinkaudio: only decode one block at a time.
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.

7 years agobinkaudio: store interleaved overlap samples in BinkAudioContext.
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.

7 years agobinkaudio: pre-calculate quantization factors
Justin Ruggles [Tue, 25 Oct 2011 19:13:19 +0000 (15:13 -0400)]
binkaudio: pre-calculate quantization factors

7 years agobinkaudio: add some buffer overread checks.
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.

7 years agoatrac3: support float or int16 output using request_sample_fmt
Justin Ruggles [Fri, 28 Oct 2011 20:36:47 +0000 (16:36 -0400)]
atrac3: support float or int16 output using request_sample_fmt

7 years agoatrac3: add CODEC_CAP_SUBFRAMES capability
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

7 years agoatrac3: return appropriate error codes instead of -1
Justin Ruggles [Fri, 28 Oct 2011 17:00:53 +0000 (13:00 -0400)]
atrac3: return appropriate error codes instead of -1

7 years agoatrac3: make sure all memory is freed on init failure
Justin Ruggles [Fri, 28 Oct 2011 16:53:11 +0000 (12:53 -0400)]
atrac3: make sure all memory is freed on init failure

7 years agoatrac3: add a couple macro constants
Justin Ruggles [Fri, 14 Oct 2011 21:17:46 +0000 (17:17 -0400)]
atrac3: add a couple macro constants

7 years agoatrac3: return error if packet is too small
Justin Ruggles [Fri, 14 Oct 2011 21:10:33 +0000 (17:10 -0400)]
atrac3: return error if packet is too small

7 years agoatrac3: check output buffer size before decoding
Justin Ruggles [Fri, 14 Oct 2011 21:09:58 +0000 (17:09 -0400)]
atrac3: check output buffer size before decoding

7 years agoatrac3: use separate pointers for each channel in decodeFrame()
Justin Ruggles [Fri, 28 Oct 2011 17:29:41 +0000 (13:29 -0400)]
atrac3: use separate pointers for each channel in decodeFrame()

7 years agoatrac3: use optimized float_interleave() function for stereo interleaving
Justin Ruggles [Fri, 14 Oct 2011 20:47:03 +0000 (16:47 -0400)]
atrac3: use optimized float_interleave() function for stereo interleaving

7 years agoatrac3: decode mono directly to the output buffer
Justin Ruggles [Fri, 14 Oct 2011 20:32:55 +0000 (16:32 -0400)]
atrac3: decode mono directly to the output buffer

7 years agoatrac3: decode output to float samples instead of converting to s16
Justin Ruggles [Fri, 14 Oct 2011 20:13:30 +0000 (16:13 -0400)]
atrac3: decode output to float samples instead of converting to s16

7 years agoatrac1: return appropriate error codes instead of -1
Justin Ruggles [Fri, 28 Oct 2011 17:10:27 +0000 (13:10 -0400)]
atrac1: return appropriate error codes instead of -1

7 years agoatrac1: check for ff_mdct_init() failure
Justin Ruggles [Fri, 28 Oct 2011 17:07:20 +0000 (13:07 -0400)]
atrac1: check for ff_mdct_init() failure

7 years agoatrac1: use optimized float_interleave() function for stereo interleaving
Justin Ruggles [Fri, 14 Oct 2011 19:25:01 +0000 (15:25 -0400)]
atrac1: use optimized float_interleave() function for stereo interleaving

7 years agoatrac1: fix a typo
Justin Ruggles [Fri, 14 Oct 2011 04:30:42 +0000 (00:30 -0400)]
atrac1: fix a typo

7 years agoatrac1: validate number of channels
Justin Ruggles [Fri, 14 Oct 2011 04:24:50 +0000 (00:24 -0400)]
atrac1: validate number of channels

7 years agoatrac1: decode mono audio directly to output buffer
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.

7 years agoatrac1: check output buffer size before decoding
Justin Ruggles [Fri, 14 Oct 2011 04:16:31 +0000 (00:16 -0400)]
atrac1: check output buffer size before decoding

7 years agocook: return AVERROR_PATCHWELCOME instead of ENOTSUP
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

7 years agocook: check output buffer size before decoding
Justin Ruggles [Thu, 27 Oct 2011 01:11:13 +0000 (21:11 -0400)]
cook: check output buffer size before decoding

7 years agocook: do not needlessly set *data_size to 0
Justin Ruggles [Thu, 27 Oct 2011 01:08:57 +0000 (21:08 -0400)]
cook: do not needlessly set *data_size to 0

7 years agocook: remove pointless return statements
Justin Ruggles [Thu, 27 Oct 2011 01:03:49 +0000 (21:03 -0400)]
cook: remove pointless return statements

7 years agocook: simplify decouple_info()
Justin Ruggles [Thu, 27 Oct 2011 00:59:14 +0000 (20:59 -0400)]
cook: simplify decouple_info()

7 years agocook: return appropriate error codes instead of -1
Justin Ruggles [Thu, 27 Oct 2011 00:46:36 +0000 (20:46 -0400)]
cook: return appropriate error codes instead of -1

7 years agocook: avoid hardcoded sizes in sizeof()
Justin Ruggles [Thu, 27 Oct 2011 00:42:02 +0000 (20:42 -0400)]
cook: avoid hardcoded sizes in sizeof()

7 years agocook: remove unneeded #includes
Justin Ruggles [Wed, 26 Oct 2011 22:36:08 +0000 (18:36 -0400)]
cook: remove unneeded #includes

7 years agocook: output float samples instead of converting to int16
Justin Ruggles [Wed, 26 Oct 2011 22:30:22 +0000 (18:30 -0400)]
cook: output float samples instead of converting to int16

7 years agomov: Avoid divide by zero in edit list dts handling
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>
7 years agoutvideo: account for coupled lines in YUV420 format
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>
7 years agovp3: fix oob read for negative tokens and memleaks on error.
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.

7 years agovp8: fix overflow in segmentation map caching.
Ronald S. Bultje [Sat, 29 Oct 2011 06:48:43 +0000 (23:48 -0700)]
vp8: fix overflow in segmentation map caching.

7 years agolavf: use number of output pictures for delay checks.
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.

7 years agoFix decoding of lossless 4:2:2 H.264
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>
7 years agoFix decoding of lossless 10-bit 4:4:4 H.264
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>
7 years agoprobe: Restore identification of files with very large id3 tags and no extension.
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.

7 years agoprobe: Remove id3 tag presence as a criteria to do file extension checking.
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.