Commit graph

13673 commits

Author SHA1 Message Date
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
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
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
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
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
Jason Garrett-Glaser
fa38ed8ac0 H.264: fix overreads of qscale_table
filter_mb_fast assumed that qscale_table was padded like many of the other tables.
(cherry picked from commit 5029a40633)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:22:22 +02:00
Mans Rullgard
bd968d260a cavs: fix some crashes with invalid bitstreams
This removes all valgrind-reported invalid writes with one
specific test file.

Fixes http://www.ocert.org/advisories/ocert-2011-002.html

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4a71da0f3a)
2011-08-21 11:23:56 +02:00
Michael Niedermayer
00c5cf4beb jpegdec: actually search for and parse RSTn
Fixes decoding of MJPEG files produced by some UVC Logitec web cameras,
such as "Notebook Pro" and "HD C910".

References:
http://trac.videolan.org/vlc/ticket/4215
http://ffmpeg.org/trac/ffmpeg/ticket/267

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Reviewed-by: Kostya <kostya.shishkov@gmail.com>
(cherry picked from commit 8c0fa61a97)
2011-08-21 11:08:27 +02:00
Ronald S. Bultje
5e3578893a mt: proper locking around release_buffer calls.
This fixes a crash when seeking in some webm files with many
threads (e.g. 8).
(cherry picked from commit 5eafc8b466)
2011-07-12 18:13:35 +02:00
Ronald S. Bultje
dc1b670a2c vp8/mt: flush worker thread, not application thread context, on seek.
This prevents a crash when seeking.
(cherry picked from commit d1cf459119)
2011-07-12 18:13:35 +02:00
Diego Biurrun
683df9bf54 Add LGPL license boilerplate to files lacking it.
(cherry picked from commit e3759c567d)
2011-07-12 18:13:35 +02:00
Diego Biurrun
64e2656f7c doxygen: Fix documentation for some VP8 functions.
(cherry picked from commit 3c432e1186)
2011-07-12 18:13:35 +02:00
Christian Schmidt
8e3d264fb2 libxvid: add missing include of libavutil/mathematics.h
Signed-off-by: Mans Rullgard <mans@mansr.com>

(cherry picked from commit 6c374bc0b4)
2011-07-12 18:05:55 +02:00
Robert Swain
46a2dc9175 vorbis: vpxenc: Add missing include for av_rescale*
Signed-off-by: Mans Rullgard <mans@mansr.com>

(cherry picked from commit 954a653216)
2011-07-12 18:05:55 +02:00
Carl Eugen Hoyos
b9e126fbe2 ffmpeg: Fix VDPAU decoding for some H264 samples.
(cherry picked from commit a4ab70f92e)
2011-07-12 18:05:55 +02:00
Reinhard Tartler
f95e5225fe doxygen: Drop array size declarations from Doxygen parameter names.
Adding [] to a Doxygen parameter name clashes with Doxygen syntax.
(cherry picked from commit ff993cd7fc)
2011-07-03 19:58:33 +02:00
Diego Biurrun
8f536408d1 doxygen: Remove spurious documentation for non-existing function parameters.
(cherry picked from commit 01c17c88ed)
2011-07-03 19:58:33 +02:00
Stefano Sabatini
d734d4ce6a suggest to use av_get_bytes_per_sample() in av_get_bits_per_sample_format() doxy
The previously suggested replacement - av_get_bits_per_sample_fmt() -
was also deprecated.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit ccfa626db8)
2011-07-03 19:49:53 +02:00
Reinhard Tartler
2fe47b21c8 doxygen: Prefer member groups over grouping into modules
Before this, almost all module groups have been used for grouping functions
and fields in structures semantically. This causes them to not appear
properly in the file documentation and needlessly clutters up the "Modules"
index.

Additionally, this commit streamlines some spelling and appearances.
(cherry picked from commit 21a19b7912)
2011-07-03 19:49:53 +02:00
Jason Garrett-Glaser
87eedf6943 Add new yuv444 pixfmts to avcodec_align_dimensions2
Fixes draw_edges crashes with high-bit-depth 4:4:4 decoding.
(cherry picked from commit da55ee6ccc)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-29 19:46:14 +02:00
Jason Garrett-Glaser
e54fd33848 H.264: disable 2tap qpel with CODEC_FLAG2_FAST and >8-bit
2tap qpel isn't implemented yet for high bit depth, so it just breaks decoding.
(cherry picked from commit 9a0dda8b3a)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-27 08:39:30 +02:00
Jason Garrett-Glaser
180faac637 H.264: fix 4:4:4 + deblocking + 8x8dct + cavlc + MBAFF
(cherry picked from commit 2702a6f114)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 09:14:55 +02:00
Jason Garrett-Glaser
13c943ffb1 H.264: fix 4:4:4 + deblocking + MBAFF
(cherry picked from commit 7c9079ab4c)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 09:14:53 +02:00
Jason Garrett-Glaser
18052f1df9 H.264: fix 4:4:4 cropping warning
(cherry picked from commit 932db25024)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 09:14:51 +02:00
Jason Garrett-Glaser
4c8b14c37f H.264: reference the correct SPS in decode_scaling_matrices
(cherry picked from commit 85a88f9c0c)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 09:14:48 +02:00
Jason Garrett-Glaser
e4071fa04c H.264: fix bug in lossless 4:4:4 decoding
Coefficient test for i16x16 add_pixels4 assumed luma plane.
(cherry picked from commit 3b79f2e2e9)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 09:13:55 +02:00
ami_stuff
fcd26ebc8f rawdec: Fix decoding of QT WRAW files.
From some tests it results that:
1. All of the AVI/MOV WRAW files need to be flipped.
2. MOV WRAW files need to use AVI color modes.
3. Assigning PAL8 mode by default to WRAW codec is not correct.
(cherry picked from commit 67e7dc5404)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 08:50:37 +02:00
Carl Eugen Hoyos
26f48752fb mov: Support Digital Voodoo SD 8 Bit and DTS codec identifiers.
(cherry picked from commit 53d5cd2c82)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 08:50:37 +02:00
ami_stuff
6cef3ddbdc rawvideo: Support auv2 fourcc.
(cherry picked from commit d352df0931)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 08:50:36 +02:00
Diego Biurrun
403eee165c h264: Fix assert that failed to compile with -DDEBUG.
The assert referenced a variable that no longer exists since 4:4:4 support.
(cherry picked from commit 6371ce4b0f)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-06-23 08:49:22 +02:00
Ronald Bultje
20153fb8f6 error_resilience: skip last-MV predictor step if MVs are not available.
Fixes crashes when playing broken MPEG2-TS streams.
2011-06-20 22:18:27 +02:00
Ronald Bultje
d42aaa802e error_resilience: actually add counter when adding a MV predictor.
Without, the predictor isn't actually used.
2011-06-20 22:18:23 +02:00
Michael Niedermayer
3a07f5a47a qdm2: Fix alignment of local array.
Fixes ticket270

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-20 21:03:59 +02:00
Ronald S. Bultje
ea6331f8bb h264-mt: fix deadlock in packets with multiple slices (e.g. MP4). 2011-06-20 10:24:33 -04:00
Alex Converse
4b84d5114d sipr: Drop unused DSPContext 2011-06-18 22:12:21 -07:00
Alex Converse
1e3d5eec8e sipr: include string.h for mem*() 2011-06-18 22:12:21 -07:00
Alex Converse
cb372931ff sipr: Use memmove() to copy overlapped buffers. 2011-06-18 22:12:21 -07:00
Alex Converse
0c17beba97 h264: drop some ugly casts 2011-06-18 22:11:55 -07:00
Ronald S. Bultje
ed63f527f2 Fix build if yasm is not available. 2011-06-18 08:34:14 -04:00
Daniel Kang
f188a1e0ca H.264: Add x86 assembly for 10-bit MC Chroma H.264 functions.
Mainly ported from 8-bit H.264 MC Chroma.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-06-18 07:52:19 -04:00
Anton Khirnov
78440c007c lavc: add opt_find to AVCodecContext class.
Fixes encoder private options, which are broken now in ffmpeg, because
opt_default2() can't find them, thus making opt_default() to fail.
2011-06-17 06:39:42 +02:00
Alexander Strange
3803af22d8 h264: Complexify frame num gap shortening code
By observation it did not seem to handle prev_frame_num > frame_num.
This does not affect any files I have.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-06-16 20:51:51 +02:00