platform/upstream/libav.git
12 years agoid3v2: fix skipping extended header in id3v2.4
Anton Khirnov [Sat, 31 Mar 2012 05:52:42 +0000 (07:52 +0200)]
id3v2: fix skipping extended header in id3v2.4

In v2.4, the length includes the length field itself.

12 years agoapedec: check bits <= 32.
Michael Niedermayer [Thu, 29 Mar 2012 17:52:21 +0000 (17:52 +0000)]
apedec: check bits <= 32.

Fixes a floating-point exception further down.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
12 years agocavs: Remove unused code.
Aneesh Dogra [Fri, 30 Mar 2012 18:14:06 +0000 (23:44 +0530)]
cavs: Remove unused code.

The square is always passed as 1 whenever the function is called and
thus the if block never gets executed.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agooggenc: fix condition when not to flush due to keyframe granule.
Reimar Döffinger [Sat, 18 Feb 2012 20:21:20 +0000 (21:21 +0100)]
oggenc: fix condition when not to flush due to keyframe granule.

The previous condition of 0 page size was wrong,
that would disable the mechanism for all frames at
a start of a page, thus some keyframes still would not
get their own granule.
The real problem is that header packets must not be flushed,
but they have (and must have) 0 granule and thus would
be detected as keyframes.
Add a separate parameter to mark header packets.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agooggenc: add pagesize option to set preferred page size
Andres Gonzalez [Thu, 27 Jan 2011 09:14:21 +0000 (10:14 +0100)]
oggenc: add pagesize option to set preferred page size

When set, if an Ogg stream buffer has enough data, a page is made
instead of filling maximum-size pages. Using smaller pages results
smaller seek intervals at the expense of higher container overhead.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agolibspeexdec: set frame size in libspeex_decode_init()
Justin Ruggles [Thu, 29 Mar 2012 16:01:42 +0000 (12:01 -0400)]
libspeexdec: set frame size in libspeex_decode_init()

This fixes speex decoding, which was broken in 85469f1c.

12 years agosmacker audio: sign-extend the initial 16-bit predicted value
Franz Brauße [Fri, 30 Mar 2012 18:40:14 +0000 (14:40 -0400)]
smacker audio: sign-extend the initial 16-bit predicted value

Fixes Bug #265

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agoh264: drop ff_h264_ prefix from static function ff_h264_decode_rbsp_trailing()
Diego Biurrun [Thu, 29 Mar 2012 12:15:16 +0000 (14:15 +0200)]
h264: drop ff_h264_ prefix from static function ff_h264_decode_rbsp_trailing()

12 years agoh264: Make ff_h264_decode_end() static, it is not used externally.
Diego Biurrun [Thu, 29 Mar 2012 11:52:21 +0000 (13:52 +0200)]
h264: Make ff_h264_decode_end() static, it is not used externally.

Also drop the now unnecessary ff_ prefix from its name.

12 years agooutput-example: K&R formatting cosmetics, comment spelling fixes
Diego Biurrun [Fri, 30 Mar 2012 00:27:05 +0000 (02:27 +0200)]
output-example: K&R formatting cosmetics, comment spelling fixes

12 years agoavf: make the example output the proper message
Luca Barbato [Thu, 29 Mar 2012 22:28:00 +0000 (15:28 -0700)]
avf: make the example output the proper message

av_dump_format needs the codecs opened in order to print
them.

12 years agoavf: fix audio writing in the output-example
Luca Barbato [Thu, 29 Mar 2012 19:00:37 +0000 (12:00 -0700)]
avf: fix audio writing in the output-example

av_init_packet does not reset data and size fields in AVPacket,
avcodec_encode_audio2 can use preallocated AVPacket.

12 years agomov: don't overwrite existing indexes.
Ronald S. Bultje [Wed, 28 Mar 2012 19:56:07 +0000 (12:56 -0700)]
mov: don't overwrite existing indexes.

Prevents all kind of badness if files contain multiple
indexes.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agolzw: fix potential integer overflow.
Ronald S. Bultje [Thu, 29 Mar 2012 03:00:38 +0000 (20:00 -0700)]
lzw: fix potential integer overflow.

12 years agotruemotion: forbid invalid VLC bitsizes and token values.
Ronald S. Bultje [Thu, 29 Mar 2012 17:25:04 +0000 (10:25 -0700)]
truemotion: forbid invalid VLC bitsizes and token values.

SHOW_UBITS() is only defined up to n_bits is 25, therefore forbid
values larger than this in get_vlc2() (max_bits). tokens[][] can be
used as an index in deltas[], which has a size of 64, so ensure the
values are smaller than that.

This prevents crashes on corrupt bitstreams.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agotruemotion2: handle out-of-frame motion vectors through edge extension.
Ronald S. Bultje [Thu, 29 Mar 2012 16:29:03 +0000 (09:29 -0700)]
truemotion2: handle out-of-frame motion vectors through edge extension.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agoconfigure: Check for a different SDL function
Martin Storsjö [Wed, 28 Mar 2012 17:37:13 +0000 (20:37 +0300)]
configure: Check for a different SDL function

This one is available both in SDL 1.2 and in 1.3 (which is the current
version available e.g. in macports), while 1.3 doesn't contain
SDL_Linked_Version().

The current check for SDL_Linked_Version() (available since SDL 1.2.13)
was added in 8f1b06c8, because including the headers for SDL_Init()
redirects the main() function, requiring the main function signature
to match the one of SDL_main (including argc/argv).

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agomp3dec: perform I/S and M/S only when frame mode is joint stereo.
Kostya Shishkov [Thu, 29 Mar 2012 10:08:07 +0000 (12:08 +0200)]
mp3dec: perform I/S and M/S only when frame mode is joint stereo.

Looks like some LAME versions produce dual stereo mode MP3s with
flags for intensity and middle stereo set. In this mode those flags
should be ignored like the reference decoder and derived ones do.

12 years agoid3v2: add another mimetype for JPEG image
Kostya Shishkov [Thu, 29 Mar 2012 10:07:35 +0000 (12:07 +0200)]
id3v2: add another mimetype for JPEG image

12 years agolzw: prevent buffer overreads.
Ronald S. Bultje [Thu, 29 Mar 2012 00:06:00 +0000 (17:06 -0700)]
lzw: prevent buffer overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agoWMAL: Remove inaccurate and unnecessary doxy
Mashiat Sarker Shakkhar [Wed, 28 Mar 2012 18:12:13 +0000 (11:12 -0700)]
WMAL: Remove inaccurate and unnecessary doxy

A call to decode_packet() does not always decode a complete WMA packet.
Moreover, this is not the correct place to document calls that are part
of the public API.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agoh264: fix cabac-on-stack after safe cabac reader.
Ronald S. Bultje [Wed, 28 Mar 2012 23:32:27 +0000 (16:32 -0700)]
h264: fix cabac-on-stack after safe cabac reader.

12 years agotruemotion2: convert packet header reading to bytestream2.
Ronald S. Bultje [Wed, 28 Mar 2012 18:53:13 +0000 (11:53 -0700)]
truemotion2: convert packet header reading to bytestream2.

Also use correct buffer sizes in calls to tm2_read_stream(). Together,
this prevents overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agoasf: only set index_read if the index contained entries.
Ronald S. Bultje [Wed, 28 Mar 2012 17:22:25 +0000 (10:22 -0700)]
asf: only set index_read if the index contained entries.

This allows falling back to a binary search if the file contains no
index, thus fixing seeking in such files (e.g. luckynight.wma).

12 years agocabac: add overread protection to BRANCHLESS_GET_CABAC().
Ronald S. Bultje [Sat, 17 Mar 2012 16:09:41 +0000 (09:09 -0700)]
cabac: add overread protection to BRANCHLESS_GET_CABAC().

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agocabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC().
Ronald S. Bultje [Sat, 17 Mar 2012 16:04:32 +0000 (09:04 -0700)]
cabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC().

12 years agocabac: remove unused argument from BRANCHLESS_GET_CABAC_UPDATE().
Ronald S. Bultje [Sat, 17 Mar 2012 16:03:22 +0000 (09:03 -0700)]
cabac: remove unused argument from BRANCHLESS_GET_CABAC_UPDATE().

12 years agocabac: use struct+offset instead of memory operand in BRANCHLESS_GET_CABAC().
Ronald S. Bultje [Sat, 17 Mar 2012 16:02:44 +0000 (09:02 -0700)]
cabac: use struct+offset instead of memory operand in BRANCHLESS_GET_CABAC().

12 years agoh264: add overread protection to get_cabac_bypass_sign_x86().
Ronald S. Bultje [Sat, 17 Mar 2012 15:58:48 +0000 (08:58 -0700)]
h264: add overread protection to get_cabac_bypass_sign_x86().

12 years agoh264: reindent get_cabac_bypass_sign_x86().
Ronald S. Bultje [Sat, 17 Mar 2012 16:32:03 +0000 (09:32 -0700)]
h264: reindent get_cabac_bypass_sign_x86().

12 years agoh264: use struct offsets in get_cabac_bypass_sign_x86().
Ronald S. Bultje [Sat, 17 Mar 2012 05:41:17 +0000 (22:41 -0700)]
h264: use struct offsets in get_cabac_bypass_sign_x86().

12 years agoh264: fix overreads in cabac reader.
Ronald S. Bultje [Sat, 17 Mar 2012 04:56:40 +0000 (21:56 -0700)]
h264: fix overreads in cabac reader.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agowmall: fix seeking.
Ronald S. Bultje [Wed, 28 Mar 2012 14:14:21 +0000 (07:14 -0700)]
wmall: fix seeking.

12 years agolagarith: fix buffer overreads.
Ronald S. Bultje [Tue, 27 Mar 2012 19:26:46 +0000 (12:26 -0700)]
lagarith: fix buffer overreads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agodvdec: drop unnecessary dv_tablegen.h #include
Diego Biurrun [Wed, 28 Mar 2012 13:44:18 +0000 (15:44 +0200)]
dvdec: drop unnecessary dv_tablegen.h #include

dvdec.c uses nothing from dv_tablegen.h.  As a welcome side-effect, this
fixes compilation of that file with hardcoded tables enabled.

12 years agobuild: fix doc generation errors in parallel builds
Mans Rullgard [Tue, 27 Mar 2012 21:42:41 +0000 (22:42 +0100)]
build: fix doc generation errors in parallel builds

The $(dir) function used to construct OBJDIRS includes a trailing slash
in the names returned, which GNU make 3.82 does not match to the
slash-less 'doc' in the documentation dependencies, causing parallel
build to fail.  Adding a slash fixes this and still works with make
3.81.

Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years agoReplace memset(0) by zero initializations.
Diego Biurrun [Mon, 6 Jun 2011 12:13:02 +0000 (14:13 +0200)]
Replace memset(0) by zero initializations.

Also remove one pointless zero initialization in rangecoder.c.

12 years agofaandct: Remove FAAN_POSTSCALE define and related code.
Diego Biurrun [Tue, 27 Mar 2012 14:42:23 +0000 (16:42 +0200)]
faandct: Remove FAAN_POSTSCALE define and related code.

It is not a user-accessible option and unlikely to ever be changed.

12 years agodvenc: print allowed profiles if the video doesn't conform to any of them.
Anton Khirnov [Mon, 26 Mar 2012 11:02:54 +0000 (13:02 +0200)]
dvenc: print allowed profiles if the video doesn't conform to any of them.

12 years agoavcodec_encode_{audio,video}: only reallocate output packet when it has non-zero...
Anton Khirnov [Tue, 27 Mar 2012 06:21:02 +0000 (08:21 +0200)]
avcodec_encode_{audio,video}: only reallocate output packet when it has non-zero size.

Otherwise realloc would free it, which would result in double free
later.

12 years agoFATE: add a test for vp8 with changing frame size.
Anton Khirnov [Mon, 26 Mar 2012 18:53:10 +0000 (20:53 +0200)]
FATE: add a test for vp8 with changing frame size.

12 years agofate: add kgv1 fate test.
Ronald S. Bultje [Tue, 27 Mar 2012 19:56:51 +0000 (12:56 -0700)]
fate: add kgv1 fate test.

Tested to be bit-exact across x86-64, x86-32 and ppc.

12 years agooggdec: calculate correct timestamps in Ogg/FLAC
Justin Ruggles [Tue, 27 Mar 2012 18:08:27 +0000 (14:08 -0400)]
oggdec: calculate correct timestamps in Ogg/FLAC

We need to parse the individual packet durations when there is more than one
packet in a page.

12 years agowestwood_vqa: fix SND0 chunk handling
Paul B Mahol [Tue, 20 Mar 2012 22:27:09 +0000 (22:27 +0000)]
westwood_vqa: fix SND0 chunk handling

Version from vqa header does not dictate which sound chunks may
appear in file.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agowestwood_vqa: set video stream duration
Paul B Mahol [Tue, 20 Mar 2012 22:26:41 +0000 (22:26 +0000)]
westwood_vqa: set video stream duration

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoraw: forward avpicture_fill() error code in raw_decode().
Ronald S. Bultje [Tue, 27 Mar 2012 01:02:08 +0000 (18:02 -0700)]
raw: forward avpicture_fill() error code in raw_decode().

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agobuild: Do not explicitly add the doc directory to the OBJDIRS list.
Diego Biurrun [Mon, 26 Mar 2012 13:10:12 +0000 (15:10 +0200)]
build: Do not explicitly add the doc directory to the OBJDIRS list.

Now that a documentation generator is built in the doc directory,
this is no longer necessary.  Fixes the Make warning:
Makefile:188: target `doc' given more than once in the same rule.

12 years agodv: Split off DV video decoder into its own file.
Diego Biurrun [Sun, 18 Mar 2012 18:01:45 +0000 (19:01 +0100)]
dv: Split off DV video decoder into its own file.

12 years agobuild: fix RALF decoder standalone compilation, which depends on Golomb code
Diego Biurrun [Mon, 26 Mar 2012 23:04:45 +0000 (01:04 +0200)]
build: fix RALF decoder standalone compilation, which depends on Golomb code

12 years agoconfigure: Drop stray duplicate entry for --disable-fft from help output.
Diego Biurrun [Mon, 26 Mar 2012 11:36:06 +0000 (13:36 +0200)]
configure: Drop stray duplicate entry for --disable-fft from help output.

12 years agomake av_interleaved_write_frame() flush packets when pkt is NULL
Jindrich Makovicka [Wed, 21 Mar 2012 10:42:32 +0000 (11:42 +0100)]
make av_interleaved_write_frame() flush packets when pkt is NULL

This patch allows the user to force flushing of all queued packets
by calling av_interleaved_write_frame() with pkt set to NULL.

Signed-off-by: Jindrich Makovicka <jindrich.makovicka@nangu.tv>
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agompegts: Fix dead error checks
Alex Converse [Mon, 26 Mar 2012 22:51:59 +0000 (15:51 -0700)]
mpegts: Fix dead error checks

12 years agovc1: Do not read from array if index is invalid.
Mashiat Sarker Shakkhar [Sat, 24 Mar 2012 22:49:34 +0000 (15:49 -0700)]
vc1: Do not read from array if index is invalid.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agotarga: convert to bytestream2.
Ronald S. Bultje [Tue, 27 Mar 2012 00:46:16 +0000 (17:46 -0700)]
targa: convert to bytestream2.

Also remove some write-only variables or write-only variable
assignments, remove internal colorspace conversion to native
endianness (that can be done by swscale much more efficiently),
and some cosmetics.

12 years agorv34: set mb_num_left to 0 after finishing a frame
Ronald S. Bultje [Mon, 26 Mar 2012 22:20:02 +0000 (00:20 +0200)]
rv34: set mb_num_left to 0 after finishing a frame

Prevents running error resilience on a previous frame which will write
to the pic->mb_type[] array of the previous image. The array might
already be re-used for a new image in a subsequent thread, thus cause
two threads to write to the same pic->mb_type[] array, causing a race
condition which can crash in rv34_decode_cbp(), called by
rv34_decode_inter_mb_header() (which accesses mb_type[] twice,
assuming values are maintained, which the race condition breaks).

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agobuild: ppc: drop stray leftover backslash
Diego Biurrun [Mon, 26 Mar 2012 14:15:52 +0000 (16:15 +0200)]
build: ppc: drop stray leftover backslash

12 years agobuild: Only clean the architecture subdirectory we build for.
Diego Biurrun [Mon, 6 Feb 2012 18:31:18 +0000 (19:31 +0100)]
build: Only clean the architecture subdirectory we build for.

This allows simplifying the Makefiles; it is no longer necessary to register
arch subdirectory Makefiles, just putting them in place is enough.

12 years agobuild: drop some unnecessary dependencies from the H.264 parser
Diego Biurrun [Sun, 25 Mar 2012 10:19:55 +0000 (12:19 +0200)]
build: drop some unnecessary dependencies from the H.264 parser

12 years agobuild: prettyprinting cosmetics
Diego Biurrun [Thu, 2 Feb 2012 22:55:57 +0000 (23:55 +0100)]
build: prettyprinting cosmetics

12 years agolibavutil: Remove pointless rational test program.
Diego Biurrun [Thu, 26 Jan 2012 17:45:11 +0000 (18:45 +0100)]
libavutil: Remove pointless rational test program.

12 years agolibavutil: Remove broken and pointless lzo test program.
Diego Biurrun [Thu, 26 Jan 2012 01:38:30 +0000 (02:38 +0100)]
libavutil: Remove broken and pointless lzo test program.

12 years agolavf doxy: expand AVStream.codec doxy.
Anton Khirnov [Thu, 15 Mar 2012 10:27:47 +0000 (11:27 +0100)]
lavf doxy: expand AVStream.codec doxy.

12 years agolavf doxy: improve AVStream.time_base doxy.
Anton Khirnov [Mon, 27 Feb 2012 08:41:31 +0000 (09:41 +0100)]
lavf doxy: improve AVStream.time_base doxy.

Remove confusing sentence that implied the user should set the timebase.
Elaborate on how the timebase is set for muxing.

12 years agolavf doxy: add some basic documentation about reading from the demuxer.
Anton Khirnov [Mon, 27 Feb 2012 08:35:17 +0000 (09:35 +0100)]
lavf doxy: add some basic documentation about reading from the demuxer.

12 years agolavf doxy: document passing options to demuxers.
Anton Khirnov [Tue, 3 Jan 2012 07:34:55 +0000 (08:34 +0100)]
lavf doxy: document passing options to demuxers.

12 years agolavf doxy: clarify that an AVPacket contains encoded data.
Anton Khirnov [Tue, 3 Jan 2012 06:41:14 +0000 (07:41 +0100)]
lavf doxy: clarify that an AVPacket contains encoded data.

12 years agompegtsenc: allow user triggered PES packet flushing
Jindrich Makovicka [Wed, 21 Mar 2012 11:35:15 +0000 (12:35 +0100)]
mpegtsenc: allow user triggered PES packet flushing

Signed-off-by: Jindrich Makovicka <jindrich.makovicka@nangu.tv>
Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoAPIchanges: mark the place where 0.7 was cut.
Anton Khirnov [Tue, 20 Mar 2012 06:58:00 +0000 (07:58 +0100)]
APIchanges: mark the place where 0.7 was cut.

12 years agoAPIchanges: mark the place where 0.8 was cut.
Anton Khirnov [Tue, 20 Mar 2012 06:58:00 +0000 (07:58 +0100)]
APIchanges: mark the place where 0.8 was cut.

12 years agoAPIchanges: fill in missing dates and hashes.
Anton Khirnov [Tue, 20 Mar 2012 06:45:45 +0000 (07:45 +0100)]
APIchanges: fill in missing dates and hashes.

12 years agosmacker: convert palette and header reading to bytestream2.
Ronald S. Bultje [Sun, 25 Mar 2012 00:37:43 +0000 (17:37 -0700)]
smacker: convert palette and header reading to bytestream2.

12 years agoalac: convert extradata reading to bytestream2.
Ronald S. Bultje [Sun, 25 Mar 2012 02:10:40 +0000 (19:10 -0700)]
alac: convert extradata reading to bytestream2.

12 years agox86: dsputil: prettyprint gcc inline asm
Diego Biurrun [Fri, 16 Mar 2012 17:42:01 +0000 (18:42 +0100)]
x86: dsputil: prettyprint gcc inline asm

12 years agox86: K&R prettyprinting cosmetics for dsputil_mmx.c
Diego Biurrun [Tue, 6 Mar 2012 12:00:42 +0000 (13:00 +0100)]
x86: K&R prettyprinting cosmetics for dsputil_mmx.c

12 years agox86: conditionally compile H.264 QPEL optimizations
Diego Biurrun [Sun, 18 Dec 2011 13:10:33 +0000 (14:10 +0100)]
x86: conditionally compile H.264 QPEL optimizations

12 years agodsputil_mmx: Surround QPEL macros by "do { } while (0);" blocks.
Diego Biurrun [Thu, 8 Mar 2012 23:59:06 +0000 (00:59 +0100)]
dsputil_mmx: Surround QPEL macros by "do { } while (0);" blocks.

This makes them safe to use in non-fully braced if-blocks and similar.

12 years agoIgnore generated files below doc/.
Diego Biurrun [Fri, 23 Mar 2012 11:20:54 +0000 (12:20 +0100)]
Ignore generated files below doc/.

12 years agodpcm: convert to bytestream2.
Ronald S. Bultje [Mon, 19 Mar 2012 02:33:04 +0000 (19:33 -0700)]
dpcm: convert to bytestream2.

12 years agointerplayvideo: convert to bytestream2.
Ronald S. Bultje [Sun, 25 Mar 2012 00:05:05 +0000 (17:05 -0700)]
interplayvideo: convert to bytestream2.

12 years agomovenc: Merge if statements
Martin Storsjö [Thu, 22 Mar 2012 11:31:31 +0000 (13:31 +0200)]
movenc: Merge if statements

This isn't exactly equivalent with the earlier code for codecs
other than H264 and VC1, but those are two only codecs supported
by this codepath anyway, and it simplifies it a bit.

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoh264: fix memleak in error path.
Alexander Strange [Sat, 24 Mar 2012 22:34:22 +0000 (15:34 -0700)]
h264: fix memleak in error path.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agopthread: Immediately release all frames in ff_thread_flush()
Alexander Strange [Sat, 24 Mar 2012 22:25:15 +0000 (18:25 -0400)]
pthread: Immediately release all frames in ff_thread_flush()

Before this, they were only added to the delayed release queue and not
freed until later. This could lead to unnecessary memory use or buffer
exhaustion.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoh264: Add check for invalid chroma_format_idc
Alexander Strange [Sat, 24 Mar 2012 21:32:14 +0000 (17:32 -0400)]
h264: Add check for invalid chroma_format_idc

Fixes a crash when FF_DEBUG_PICT_INFO is used.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoutvideo: port header reading to bytestream2.
Ronald S. Bultje [Fri, 23 Mar 2012 00:25:22 +0000 (17:25 -0700)]
utvideo: port header reading to bytestream2.

Fixes crash during slice size reading if slice_end goes negative.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agoavc: Add a function for converting mp4 style extradata to annex b
Martin Storsjö [Thu, 22 Mar 2012 11:25:58 +0000 (13:25 +0200)]
avc: Add a function for converting mp4 style extradata to annex b

Make movenc use this function instead of the current custom
conversion function.

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agopthread: free progress if buffer allocation failed.
Ronald S. Bultje [Sat, 24 Mar 2012 19:19:19 +0000 (20:19 +0100)]
pthread: free progress if buffer allocation failed.

Else we run out of progress variables after a few failed buffer
allocations.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agolavc/avconv: support changing frame sizes in codecs with frame mt.
Ronald S. Bultje [Fri, 23 Mar 2012 22:03:03 +0000 (15:03 -0700)]
lavc/avconv: support changing frame sizes in codecs with frame mt.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agolibavformat: Document who sets the AVStream.id field
Martin Storsjö [Thu, 22 Mar 2012 15:05:08 +0000 (17:05 +0200)]
libavformat: Document who sets the AVStream.id field

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoutvideo: mark output picture as keyframe.
Kostya Shishkov [Sat, 24 Mar 2012 18:54:31 +0000 (19:54 +0100)]
utvideo: mark output picture as keyframe.

Spotted by Антон.

12 years agosunrast: Add support for negative linesize.
Aneesh Dogra [Fri, 23 Mar 2012 17:54:00 +0000 (23:24 +0530)]
sunrast: Add support for negative linesize.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agovp8: fix update_lf_deltas in libavcodec/vp8.c
Janne Salonen [Mon, 19 Mar 2012 07:35:09 +0000 (09:35 +0200)]
vp8: fix update_lf_deltas in libavcodec/vp8.c

lf_delta.ref[i] and lf_delta.mode[i] were incorrectly reset to 0 if
specific delta value was not updated. Fixed to keep the previous value
if flag indicates that element in question is not updated.

Signed-off-by: Janne Salonen <jsalonen@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoralf: read Huffman code lengths without GetBitContext
Kostya Shishkov [Sat, 24 Mar 2012 06:29:51 +0000 (07:29 +0100)]
ralf: read Huffman code lengths without GetBitContext

Those descriptions are stored in nibbles, so they are easy to extract.
And this way we don't need to pad tables for possible bit reader overreads.

12 years agorv34: error out on size changes with frame threading
Janne Grunau [Fri, 23 Mar 2012 21:30:38 +0000 (22:30 +0100)]
rv34: error out on size changes with frame threading

12 years agoaacsbr: Add a debug check to sbr_mapping.
Alex Converse [Wed, 21 Mar 2012 19:20:58 +0000 (12:20 -0700)]
aacsbr: Add a debug check to sbr_mapping.

There have been multiple bugs caused by inconsistencies here.

Based on an idea from Michael Niedermayer.

CC: libav-stable@libav.org
12 years agoaac: Reset some state variables when turning SBR off
Alex Converse [Wed, 21 Mar 2012 19:00:56 +0000 (12:00 -0700)]
aac: Reset some state variables when turning SBR off

This makes sure the reset flag gets set when SBR gets turned back on
and sets control variables for unguided mode back to their defaults.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agoaac: Reset PS parameters on header decode failure.
Alex Converse [Wed, 21 Mar 2012 17:11:02 +0000 (10:11 -0700)]
aac: Reset PS parameters on header decode failure.

If the next header frame codes zero envelopes the previous frame's
values will be used. Consequently the invalid values must be cleared.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agofate: add wmalossless test.
Ronald S. Bultje [Thu, 22 Mar 2012 19:13:24 +0000 (12:13 -0700)]
fate: add wmalossless test.

12 years agoaacsbr: handle m_max values smaller than 4.
Ronald S. Bultje [Thu, 22 Mar 2012 18:50:48 +0000 (11:50 -0700)]
aacsbr: handle m_max values smaller than 4.

Prevents a signflip in the counter, and a subsequent crash because of
overreads/overwrites.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
12 years agorv34: Handle only complete frames in frame-mt.
Janne Grunau [Fri, 16 Mar 2012 15:18:57 +0000 (16:18 +0100)]
rv34: Handle only complete frames in frame-mt.

Correct handling of errors to prevent hags or crashes is very complex
otherwise.

The frame initializing is also moved from decode_slice() to
decode_frame() for clarity.

12 years agoMPV: set reference frame pointers to NULL when allocation of dummy pictures fails
Janne Grunau [Tue, 20 Mar 2012 13:44:28 +0000 (14:44 +0100)]
MPV: set reference frame pointers to NULL when allocation of dummy pictures fails