Commit Graph

15886 Commits

Author SHA1 Message Date
Anatoliy Wasserman
70bab5847e Apple ProRes encoder
Signed-off-by: Anatoliy Wasserman <anatoliy.wasserman@yandex.ru>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-29 12:46:05 +02:00
Michael Niedermayer
6faf0a21e1 Merge remote-tracking branch 'qatar/master'
* qatar/master: (53 commits)
  probe: Restore identification of files with very large id3 tags and no extension.
  probe: Remove id3 tag presence as a criteria to do file extension checking.
  mpegts: MP4 SL support
  mpegts: MP4 OD support
  mpegts: Add support for Sections in PMT
  mpegts: Replace the MP4 descriptor parser with a recursive parser.
  mpegts: Add support for multiple mp4 descriptors
  mpegts: Parse mpeg2 SL descriptors.
  isom: Add MPEG4SYSTEMS dummy object type indication.
  aacdec: allow output reconfiguration on channel changes
  nellymoserenc: take float input samples instead of int16
  nellymoserdec: use dsp functions for overlap and windowing
  nellymoserdec: do not fail if there is extra data in the packet
  nellymoserdec: fail if output buffer is too small
  nellymoserdec: remove pointless buffer size check.
  lavf: add init_put_byte() to the list of visible symbols.
  seek-test: free options dictionary after use
  snow: do not draw_edge if emu_edge is set
  tools/pktdumper: update to recent avformat api
  seek-test: update to recent avformat api
  ...

Conflicts:
	doc/APIchanges
	libavcodec/mpegaudiodec.c
	libavcodec/nellymoserdec.c
	libavcodec/snow.c
	libavcodec/version.h
	libavcodec/wmadec.c
	libavformat/avformat.h
	libavformat/mpegts.c
	libavformat/mxfdec.c
	libavformat/utils.c
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-29 02:08:54 +02:00
Alex Converse
77b5c82b49 isom: Add MPEG4SYSTEMS dummy object type indication. 2011-10-28 14:54:13 -07:00
Michael Niedermayer
bc2dd36740 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>
2011-10-28 22:44:59 +02:00
Justin Ruggles
f3db0f7403 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.
2011-10-28 14:40:52 -04:00
Justin Ruggles
77c8ef9a36 nellymoserdec: use dsp functions for overlap and windowing 2011-10-28 14:40:52 -04:00
Justin Ruggles
8c9581f052 nellymoserdec: do not fail if there is extra data in the packet
instead just print a warning
2011-10-28 14:40:52 -04:00
Justin Ruggles
0aaa85dbed nellymoserdec: fail if output buffer is too small
avoids silently truncating the output
2011-10-28 14:40:52 -04:00
Justin Ruggles
f19305fe93 nellymoserdec: remove pointless buffer size check. 2011-10-28 14:40:51 -04:00
Michael Niedermayer
8fa97302e0 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>
2011-10-28 10:14:11 -07:00
Carl Eugen Hoyos
246c8dac3e Fix dca decoding for many samples after last commit.
Still be less verbose about channel count change from 0 channels.
2011-10-28 19:13:59 +02:00
Carl Eugen Hoyos
ad2d597292 Be less verbose about dca channel number changes.
Only inform the user that the number of channels changed if it was set
before.
2011-10-28 18:21:40 +02:00
Carl Eugen Hoyos
81cd96caee Remove unused dca context variable. 2011-10-28 18:20:37 +02:00
Justin Ruggles
813907d424 wmavoice: move output buffer size check to synth_superframe().
this allows for checking against the actual output size instead of max size.
2011-10-28 12:02:24 -04:00
Justin Ruggles
d064076570 wmavoice: only set data_size to 0 when necessary 2011-10-28 12:02:24 -04:00
Justin Ruggles
1db6437f6c wmapro: fix strict-aliasing violations by using av_alias32
Also fix some undefined unsigned/signed conversions.
2011-10-28 12:02:24 -04:00
Justin Ruggles
b8b4c9c328 wmapro: use FmtConvertContext.float_interleave() to interleave output samples 2011-10-28 12:02:24 -04:00
Justin Ruggles
d0b1b1c5c7 wmadec: consolidate 2 output buffer size checks into 1 check 2011-10-28 12:02:23 -04:00
Justin Ruggles
9a33264478 apedec: assert that s->samples is not negative before trying to decode 2011-10-28 11:47:29 -04:00
Justin Ruggles
0927154d37 apedec: use FFALIGN macro for internal data buffer size 2011-10-28 11:47:28 -04:00
Justin Ruggles
5b8009f4c8 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.
2011-10-28 11:47:28 -04:00
Justin Ruggles
a4c32c9a63 apedec: check for input buffer overflow while reading frame header 2011-10-28 11:47:28 -04:00
Justin Ruggles
fd244ae3a0 apedec: use unsigned int for offset
avoids implementation-defined unsigned-to-signed conversion and simplifies
the bounds checking.
2011-10-28 11:47:28 -04:00
Justin Ruggles
89ec474a43 apedec: remove pointless increment of 'buf'
The variable is not used anymore at that point.
2011-10-28 11:47:28 -04:00
Justin Ruggles
52d4fb2a3d apedec: set s->currentframeblocks after validating nblocks 2011-10-28 11:47:28 -04:00
Justin Ruggles
2cab578489 apedec: use unsigned int for 'nblocks' and make sure that it's within int range 2011-10-28 11:47:27 -04:00
Justin Ruggles
b7e5145759 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.
2011-10-28 11:47:27 -04:00
Justin Ruggles
11ca8b2d74 apedec: check for data buffer realloc failure 2011-10-28 11:47:27 -04:00
Justin Ruggles
91b71460b5 apedec: return meaningful error values in ape_decode_frame() 2011-10-28 11:47:27 -04:00
Justin Ruggles
c6defb41ef apedec: correct an error message 2011-10-28 11:47:27 -04:00
Justin Ruggles
da55e0980e apedec: cosmetics
break some excessively long lines and remove space after '*'
2011-10-28 11:46:41 -04:00
Justin Ruggles
f64e0a2f37 apedec: return meaningful error codes from ape_decode_init() 2011-10-28 11:41:39 -04:00
Justin Ruggles
7500781313 apedec: check for filter buffer allocation failure 2011-10-28 11:41:39 -04:00
Justin Ruggles
b9d6b02713 apedec: use memcpy for pseudo-stereo mode 2011-10-28 11:41:39 -04:00
Justin Ruggles
3c25209bd9 apedec: remove unneeded check for zero-size packet.
This is already checked by avcodec_decode_audio3().
2011-10-28 11:41:39 -04:00
Hendrik Leppkes
022d22e581 Fix a regression in the dca parser introduced by dts express support.
The dca parser needs to check that the framesize is actually of a complete
frame, and not of a partial DTS-HD frame, which is not constant size, and
thus the check would fail.
(cherry picked from commit ebc0ccb9af59b78732e82c09f8c90b1d46b478e0)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:26:31 +02:00
Hendrik Leppkes
14474fbbd0 dca_parser: Add support for parsing dts express
(cherry picked from commit ea36f60493f675db531dc2dbef04fb60fbc21a6a)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:25:40 +02:00
Hendrik Leppkes
7b6ae0e849 dca: allow the channel count to change.
(cherry picked from commit 42e78d2296752293cd08c5727f76c3b37c68fb24)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:24:35 +02:00
Justin Ruggles
ec6d743118 mp3on4: do not needlessly set data_size to 0 2011-10-27 22:06:32 -04:00
Justin Ruggles
99975966c3 mp3adu: return error instead of just consuming bad packets 2011-10-27 22:06:32 -04:00
Justin Ruggles
e2e6c8799b mpegaudiodec: check output data size based on avctx->frame_size 2011-10-27 22:06:32 -04:00
Justin Ruggles
512557b291 avcodec: remove avcodec_parse_frame and deprecate associated elements.
The documentation for CODEC_CAP_PARSE_ONLY and AVCodecContext.parse_only
indicates that they are utilized through avcodec_parse_frame(), which was
never actually implemented.
2011-10-27 22:06:32 -04:00
Justin Ruggles
cd816d9bbb mpegaudiodec: cosmetics: basic pretty-printing 2011-10-27 22:06:32 -04:00
Justin Ruggles
c17e534f2e mpegaudiodec: remove frame_count field from MPADecodeContext.
Its functionality was removed several years ago, so it doesn't do anything.
AVCodecContext.frame_number could serve the same purpose if someone
wants to debug the frame count.
2011-10-27 22:06:32 -04:00
Justin Ruggles
dac15a03af mpegaudiodec: return AVERROR return codes instead of -1 2011-10-27 22:06:32 -04:00
Justin Ruggles
4be1e1dfa7 mpegaudiodec: Skip only bad frames instead of the whole packet.
On frame decoding failure, return an error if the frame is the same size as
the whole packet, otherwise just log an error message and return the number
of bytes consumed.
2011-10-27 22:06:31 -04:00
Michael Niedermayer
e7f008a534 lavc: Map deprecated codec ids to ours so as to maintain compatibility with the fork.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Michael Niedermayer
4f587d1637 avcodec: Change values of codec ids at the end of lists that dont exist outside ffmpeg yet so
they wont conflict when they get added to the fork with randomly changed order and values.
Also add duplicate codec_ids to allow maintaining compatibility.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Michael Niedermayer
2179fc48b2 avcodec: Resolve the codec_id compatibility issue.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Hendrik Leppkes
dc38625ebc Add SMPTE240M transfer characteristics flag.
(cherry picked from commit 4266191919c31a1921b497ec831d3b1c1fa28df8)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00