Commit graph

29195 commits

Author SHA1 Message Date
Laurent Aimar
2ac3aa129e Check for invalid packet size in the smacker demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit e055932f56)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:45 +02:00
Laurent Aimar
1486e99b90 ape demuxer: fix segfault on memory allocation failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 273aab99bf)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:41 +02:00
Alex Converse
dc6ee18363 xan: Add some buffer checks
(cherry picked from commit 0872bb23b4)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:35 +02:00
Laurent Aimar
bb0c352ec5 Fixed size given to init_get_bits() in xan decoder.
(cherry picked from commit 393d5031c6)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:29 +02:00
Kostya Shishkov
1125f26f83 smacker demuxer: handle possible av_realloc() failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 47a8589f7b)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:16 +02:00
Laurent Aimar
c11d360ebc Fixed segfault with wavpack decoder on corrupted decorrelation terms sub-blocks.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 8bfea4ab4e)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Alex Converse
dd6334a1e4 cljr: init_get_bits size in bits instead of bytes
(cherry picked from commit 0c1f5b93d9)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Alex Converse
6b1af6a328 indeo2: fail if input buffer too small
(cherry picked from commit b7ce4f1d1c)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Alex Converse
1656dd7a4e indeo2: init_get_bits size in bits instead of bytes
(cherry picked from commit 68ca330cbd)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Laurent Aimar
144c80042b ffv1: Fixed size given to init_get_bits() in decoder.
init_get_bits() takes a number of bits and not a number of bytes as
its size argument.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
(cherry picked from commit 46b004959b)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Alex Converse
a460d9e1f7 wavpack: Check error codes rather than working around error conditions.
(cherry picked from commit dba2b63a98)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Laurent Aimar
94af9cf46b Fixed invalid access in wavpack decoder on corrupted bitstream.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 55354b7de2)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Laurent Aimar
46d9dd6980 Fixed invalid writes in wavpack decoder on corrupted bitstreams.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 0aedab0340)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Laurent Aimar
a652bb2857 Fixed invalid access in wavpack decoder on corrupted extra bits sub-blocks.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit beefafda63)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Anton Khirnov
7850a9b384 lavc: fix type for thread_type option
It should be flags, not int.
(cherry picked from commit fb47997edb)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Anton Khirnov
de33e8675c AVOptions: fix av_set_string3() doxy to match reality.
Fixes bug 28.
(cherry picked from commit e955a682e1)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Sean McGovern
fe9dae6df8 cpu detection: avoid a signed overflow
1<<31 overflows because 1 is signed, so force it to unsigned.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 5938e02185)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Michael Niedermayer
a7d35b2f99 vf_scale: don't leak SWS context.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 52982dbe47)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:09:35 +02:00
Alberto Delmás
526f24e3fd VC1: Fix first/last row checks with slices
In some places 0/mb_height were used in place of start_mb_y/end_mb_y.

Fixes SA00049, SA00058, SA10091, SA10097, SA10131, SA20021, SA30030

Improves PSNR in SA00054, SA00059, SA00060, SA10096, SA10098, SA20022,
SA30031, SA30032, SA40012, SA40013

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 1cf82cab08)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:04:32 +02:00
Ronald S. Bultje
a8edc1cbc7 vc1: properly zero coded_block[] edges on new slice entry.
Previously, we would leave the left edge uninitialized, which led to
CBP prediction errors on slice edges, e.g. in SA10098.vc1.
(cherry picked from commit d4b9974465)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:04:20 +02:00
Anton Khirnov
f45cfb4751 lavc: remove vbv_delay option
It's broken and serves no purpose as it's a read-only field.
(cherry picked from commit 8ee18b4bee)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:03:38 +02:00
Jeff Downs
566d26923e h264: fix PCM intra-coded blocks in monochrome case
Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 6581e161c5)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:03:01 +02:00
Jeff Downs
767efcb46e h264: correct implicit weight table computation for long ref pics
Correct computation of implicit weight tables when referencing pictures
that are marked for long reference.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 87cf70eb23)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:02:55 +02:00
Jeff Downs
cb9ccc89c5 h264: correct the check for invalid long term frame index in MMCO decode
The current check on MMCO parameters prohibits a "max long term frame index
plus 1" of 16 (frame idx of 15) for the "set max long term frame index" MMCO.
Fix this off-by-one error to allow the full range of legal values.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 29a09eae9a)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:02:49 +02:00
Alex Converse
5925e25218 aac: Only output configure if audio was found.
Audio found is not triggered on a CCE because a CCE alone has no output.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit d8425ed4af)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:02:23 +02:00
Kostya Shishkov
303e48e6a2 rv10/20: tell decoder to use edge emulation
This removes out-of-edge motion compensation artifacts (easily spotted green
blocks in avplay, gray blocks in transcoding), for example here:
http://samples.libav.org/samples/real/tv_watching_t1.rm

Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 331971116d)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:01:32 +02:00
Luca Barbato
e30e0a16af flvenc: use int64_t to store offsets
Metadata currently is written only at the start of the file in normal
cases, when transcoding from a rtmp source metadata could be
written later and the offset recorded can exceed 32bit.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 7f5bf4fbaf)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:00:45 +02:00
Reimar Döffinger
210d8f4ca2 VC-1: fix reading of custom PAR.
Custom PAR num/denum are in 1-256 range.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 0e86965514)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:00:21 +02:00
Dustin Brody
cc4718196a h264: notice memory allocation failure
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit bac3ab13ea)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:59:09 +02:00
Justin Ruggles
f629fcd308 Remove incorrect info in documentation of AVCodecContext.bits_per_raw_sample.
bits_per_raw_sample is used in video as well, where sample_fmt is not used.
(cherry picked from commit d271d5b215)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:58:39 +02:00
Baptiste Coudurier
b8fa424ce2 libx264: do not set pic quality if no frame is output
Avoids uninitialized reads.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 5caa2de19e)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:58:04 +02:00
Alex Converse
82d7ad3344 aac: Remove some suspicious illegal memcpy()s from LTP.
(cherry picked from commit a6c49f18ab)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:53:16 +02:00
Alex Converse
c5388d680e mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata.
This prevents out of bounds reads when extradata is being decoded.
(cherry picked from commit 1f6f58d585)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:52:48 +02:00
Ronald S. Bultje
8abaa83d2c vp3/theora: flush after seek.
(cherry picked from commit 8dcf518430)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:51:55 +02:00
Diego Biurrun
8e0a53bd34 rv30: return AVERROR(EINVAL) instead of EINVAL
On some platforms EINVAL could be positive, ensure we return negative values.
(cherry picked from commit e5985185d2)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:50:17 +02:00
Mans Rullgard
ba19cb6885 Fix incorrect max_lowres values
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e23a05ab06)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:48:27 +02:00
Rafaël Carré
3b80fb50d8 Do not decode RV30 files if the extradata is too small
Signed-off-by: Diego Biurrun <diego@biurrun.de>
(cherry picked from commit 289c60001f)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:46:55 +02:00
Mans Rullgard
fe7deb7cc4 aacps: skip some memcpy() if src and dst would be equal
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit e5902d60ce)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:46:11 +02:00
Anton Khirnov
44b3f05309 lavf: fix segfault in av_open_input_stream()
ic is NULL in case of error.
(cherry picked from commit 13551ad1e3)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:34:05 +02:00
Oskar Arvidsson
dc3ab8ca43 pix_fmt: Fix number of bits per component in yuv444p9be
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit e59d6b4d72)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:33:25 +02:00
Jindrich Makovicka
e308a91c9c mpegts: fix Continuity Counter error detection
According to MPEG-TS specs, the continuity_counter shall not be
incremented when the adaptation_field_control of the packet
equals '00' or '10'.

Signed-off-by: Jindrich Makovicka <jindrich.makovicka@nangu.tv>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 8923cfa328)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:32:56 +02:00
Justin Ruggles
207db36a4f alsa: limit buffer_size to 32768 frames.
In testing, the file output plugin gave a max buffer size of about 20 million
frames, which is way more than what is really needed and causes a memory
allocation error on my system.
(cherry picked from commit e35c674d13)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:31:40 +02:00
Justin Ruggles
9bf76932e5 alsa: fallback to buffer_size/4 for period_size.
buffer_size/4 is the value used by aplay. This fixes output to null
devices, e.g. writing ALSA output to a file.
(cherry picked from commit 8bfd7f6a47)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:31:36 +02:00
Tomas Härdin
91f9c7917c gxf: Fix 25 fps DV material in GXF being misdetected as 50 fps
Set DV packet durations using fields_per_frame.
This requires turning gxf_stream_info into the demuxer's context for access to the value in gxf_packet().
Since MPEG-2 seems to work fine this done only for DV.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 99fecc64b0)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:30:04 +02:00
Anton Khirnov
fa75093381 Revert "ffmpeg: get rid of useless AVInputStream.nb_streams."
This reverts commit 2cf8355f98.
AVInputStream.nb_streams tracks number of streams found at the
beginning, new streams may appear that ffmpeg doesn't know about. Fixes
crash in this case.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:29:09 +02:00
Alex Converse
baec70e16f adts: Fix PCE copying.
Parse the extension flag bit when reading the MPEG4 AudioSpecificConfig.

This has nothing to do with SBR/PS contradictory to what was noted when it was removed.
(cherry picked from commit 7f01a4192c)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:26:10 +02:00
Ronald S. Bultje
2649439bbd eval: fix memleak.
(cherry picked from commit fe277b16f0)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:24:55 +02:00
Mans Rullgard
266ec41f77 ARM: workaround for bug in GNU assembler
Some versions of the GNU assembler do not handle 64-bit
immediate operands containing arithmetic.  Writing the
value out in full works correctly.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit fce1e43410)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:24:32 +02:00
Clément Bœsch
694279bfd2 mxfenc: fix ignored drop flag in binary timecode representation.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 4d5e7ab5c4)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:23:05 +02:00
John Stebbins
0ab69793fc dca: set AVCodecContext frame_size for DTS audio
Set the frame size when decoding DTS audio.

This has the side effect of fixing the computation of timestamps for DTS-HD in compute_pkt_fields.  Since frame_size is
not currently set, the duration of a frame is being guessed based on the streams bitrate.  But for DTS-HD, the bitrate
currently used is the rate of the DTS core which is much different than the whole DTS-HD stream and leads to a wildly
inaccurate frame duration estimate.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 49c7006c7e)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:22:51 +02:00