ffmpeg.git
5 years agoaviocat: Check the argv array length before reading element i+1
Martin Storsjö [Thu, 16 Jan 2014 07:58:03 +0000 (09:58 +0200)]
aviocat: Check the argv array length before reading element i+1

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agox86: dsputil: Simplify xvmc deprecation conditional
Diego Biurrun [Tue, 14 Jan 2014 17:24:03 +0000 (18:24 +0100)]
x86: dsputil: Simplify xvmc deprecation conditional

5 years agobuild: Add separate hidden config option for the intrax8 code
Diego Biurrun [Tue, 14 Jan 2014 17:24:02 +0000 (18:24 +0100)]
build: Add separate hidden config option for the intrax8 code

This allows for slightly cleaner dependency specification.

5 years agoaarch64: port neon clobber test from arm
Janne Grunau [Sat, 11 Jan 2014 16:21:19 +0000 (17:21 +0100)]
aarch64: port neon clobber test from arm

5 years agoaarch64: h264 (bi)weight NEON optimizations
Janne Grunau [Fri, 10 Jan 2014 13:07:24 +0000 (14:07 +0100)]
aarch64: h264 (bi)weight NEON optimizations

Ported from ARMv7 NEON.

5 years agoaarch64: h264 loop filter NEON optimizations
Janne Grunau [Fri, 20 Dec 2013 20:02:43 +0000 (21:02 +0100)]
aarch64: h264 loop filter NEON optimizations

Ported from ARMv7 NEON.

5 years agoaarch64: hpeldsp NEON optimizations
Janne Grunau [Fri, 20 Dec 2013 19:03:58 +0000 (20:03 +0100)]
aarch64: hpeldsp NEON optimizations

Ported from ARMv7 NEON.

5 years agoaarch64: h264 qpel NEON optimizations
Janne Grunau [Wed, 18 Dec 2013 14:56:50 +0000 (15:56 +0100)]
aarch64: h264 qpel NEON optimizations

Ported from ARMv7 NEON.

5 years agoaarch64: h264 idct NEON assembler optimizations
Janne Grunau [Thu, 12 Dec 2013 23:33:48 +0000 (00:33 +0100)]
aarch64: h264 idct NEON assembler optimizations

Ported from ARMv7 NEON.

5 years agoaarch64: h264 chroma motion compensation NEON optimizations
Janne Grunau [Tue, 10 Dec 2013 19:16:08 +0000 (20:16 +0100)]
aarch64: h264 chroma motion compensation NEON optimizations

Since RV40 and VC-1 use almost the same algorithm so optimizations for
those two decoders are easy to do and included.

5 years agoaarch64: add cpuflags support for NEON and VFP
Janne Grunau [Tue, 10 Dec 2013 19:13:32 +0000 (20:13 +0100)]
aarch64: add cpuflags support for NEON and VFP

NEON and VFP are currently mandatory for all ARMv8 profiles. Both are
handled as extensions as far as cpuflags are concerned. This is
consistent with handling x86_64 which always has SSE2, but still
handles it as an extension.

5 years agodct-test: test ff_simple_idct_neon only on ARM for now
Janne Grunau [Mon, 13 Jan 2014 20:32:19 +0000 (21:32 +0100)]
dct-test: test ff_simple_idct_neon only on ARM for now

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
5 years agomov: Free an earlier allocated array if allocating a new one
Martin Storsjö [Mon, 13 Jan 2014 12:46:07 +0000 (14:46 +0200)]
mov: Free an earlier allocated array if allocating a new one

It could probably also be considered an error if the pointer isn't
null at this point, but then we might risk rejecting some
slightly broken files that we might have handled so far.

Sample-Id: 00000496-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agomov: Free intermediate arrays in the normal cleanup function
Martin Storsjö [Mon, 13 Jan 2014 12:43:23 +0000 (14:43 +0200)]
mov: Free intermediate arrays in the normal cleanup function

These arrays are normally freed at the end of mov_read_trak,
but make sure they're freed in case mov_read_trak returned
early (due to errors) or in case the atoms that allocate arrays
are encountered at some other point than within a trak (which
we don't have checks against).

Sample-Id: 00000496-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoaarch64: bswap inline assembly
Janne Grunau [Mon, 25 Nov 2013 15:58:54 +0000 (16:58 +0100)]
aarch64: bswap inline assembly

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
5 years agoaarch64: configure: set arch dependent features
Janne Grunau [Thu, 12 Dec 2013 16:45:32 +0000 (17:45 +0100)]
aarch64: configure: set arch dependent features

Stack is always 16 byte aligned and clz, 64bit operations and unaligned
memory access are fast in aarch64 mode on ARMv8.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
5 years agocabac: remove leftovers from the cabac encoder
Janne Grunau [Mon, 13 Jan 2014 20:23:13 +0000 (21:23 +0100)]
cabac: remove leftovers from the cabac encoder

The cabac encoder was only used by the removed cabac test.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
5 years agomxf: Fix potential leak in mxf_read_local_tags()
Tomas Härdin [Wed, 24 Oct 2012 14:54:25 +0000 (16:54 +0200)]
mxf: Fix potential leak in mxf_read_local_tags()

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agomxf: Correctly support files from Pinnacle Thunder
Tomas Härdin [Wed, 4 Apr 2012 12:24:49 +0000 (14:24 +0200)]
mxf: Correctly support files from Pinnacle Thunder

Such files have IndexTableSegments which when parsed cover EditUnit
ranges like this:

 [0,1)
 [249,250)
 [249,377)
 [0,249)

where each interval is

 [IndexStartPosition, IndexStartPosition + IndexDuration)

This would be reduced to a sparse index like:

 [0,1), [249,250)

instead of the full range:

 [0,249), [249,377)

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agomxf: Fix a possible leak of extradata
Michael Niedermayer [Tue, 11 Dec 2012 13:43:47 +0000 (14:43 +0100)]
mxf: Fix a possible leak of extradata

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agomxf: Use av_malloc_array
Luca Barbato [Tue, 7 Jan 2014 22:54:09 +0000 (23:54 +0100)]
mxf: Use av_malloc_array

5 years agomxf: Drop unnecessary checks
Luca Barbato [Tue, 7 Jan 2014 20:56:33 +0000 (21:56 +0100)]
mxf: Drop unnecessary checks

av_reallocp_array does the check already.

5 years agomxf: Fix off by one error in d10 aes3 decoding
Marton Balint [Wed, 18 Jul 2012 23:23:20 +0000 (01:23 +0200)]
mxf: Fix off by one error in d10 aes3 decoding

Without this fix the last sample was missing from the packet.

5 years agomxf: Do not use int to check the seek position
Luca Barbato [Tue, 7 Jan 2014 20:26:14 +0000 (21:26 +0100)]
mxf: Do not use int to check the seek position

Overly large files are to be expected.

Reported-by: Jean-Baptiste Kempf <jb@videolan.org>
5 years agomxf: Set AV_FIELD_PROGRESSIVE
Reimar Döffinger [Thu, 3 Jan 2013 20:42:35 +0000 (21:42 +0100)]
mxf: Set AV_FIELD_PROGRESSIVE

Needed for AVC-intra

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agovf_yadif: Relicense from GPL to LGPL
Robert Krüger [Sun, 5 Jan 2014 18:53:11 +0000 (19:53 +0100)]
vf_yadif: Relicense from GPL to LGPL

All copyright holders have agreed to the relicensing.

5 years agox86: Consistently use cpu flag detection macros in places that still miss it
Diego Biurrun [Mon, 13 Jan 2014 17:52:32 +0000 (18:52 +0100)]
x86: Consistently use cpu flag detection macros in places that still miss it

5 years agoarm: Use full filenames as multiple inclusion guards
Diego Biurrun [Mon, 13 Jan 2014 14:26:16 +0000 (15:26 +0100)]
arm: Use full filenames as multiple inclusion guards

5 years agolavf: make av_probe_input_buffer more robust
Anton Khirnov [Mon, 13 Jan 2014 12:47:07 +0000 (13:47 +0100)]
lavf: make av_probe_input_buffer more robust

Always use the actually read size as the offset instead of making
possibly invalid assumptions.

Addresses: CVE-2012-6618

5 years agolavf: use a fixed width type
Anton Khirnov [Mon, 13 Jan 2014 10:56:59 +0000 (11:56 +0100)]
lavf: use a fixed width type

It's shorter and more consistent with the rest of the code.

5 years agolavf: simplify handling of offset in av_probe_input_buuffer()
Anton Khirnov [Mon, 13 Jan 2014 10:55:18 +0000 (11:55 +0100)]
lavf: simplify handling of offset in av_probe_input_buuffer()

5 years agox86/arm: Add clobber tests to libavresample
Martin Storsjö [Sat, 11 Jan 2014 20:43:26 +0000 (22:43 +0200)]
x86/arm: Add clobber tests to libavresample

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agovc1: Enable the interlaced B-frame codepath.
Tim Walker [Sat, 11 Jan 2014 22:58:16 +0000 (23:58 +0100)]
vc1: Enable the interlaced B-frame codepath.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agovc1: Add avg_no_rnd_vc1_chroma_mc4_c()
Michael Niedermayer [Thu, 25 Apr 2013 19:31:18 +0000 (21:31 +0200)]
vc1: Add avg_no_rnd_vc1_chroma_mc4_c()

Needed for proper interlaced support.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agovc1: Factorize out chroma MC
Luca Barbato [Sat, 11 Jan 2014 22:59:54 +0000 (23:59 +0100)]
vc1: Factorize out chroma MC

5 years agovc1dsp: K&R formatting cosmetics
Luca Barbato [Sat, 11 Jan 2014 23:59:24 +0000 (00:59 +0100)]
vc1dsp: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoflv: Workaround for buggy Omnia A/XE encoder
Benjamin Larsson [Sun, 5 Jan 2014 13:42:14 +0000 (14:42 +0100)]
flv: Workaround for buggy Omnia A/XE encoder

The Omnia A/XE encoder writes the explicit extra data incorrectly
and wrongly disables parametric stereo. Truncating the extra data
by setting the size to 2 works around this. The AAC extra data
parser will then only parse the correct parts.

Bug-id: 599

5 years agoarm: Add an option for making sure NEON registers aren't clobbered
Martin Storsjö [Fri, 20 Dec 2013 11:51:50 +0000 (13:51 +0200)]
arm: Add an option for making sure NEON registers aren't clobbered

This is pretty much based on the same test for XMM registers.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agofate: Explicitly specify the rgb555le pixel format for the mss2 rgb555 tests
Martin Storsjö [Fri, 10 Jan 2014 14:05:10 +0000 (16:05 +0200)]
fate: Explicitly specify the rgb555le pixel format for the mss2 rgb555 tests

This fixes these fate tests on big endian.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavutil: do not use avcodec header in frame.h
Vittorio Giovara [Wed, 8 Jan 2014 00:20:18 +0000 (01:20 +0100)]
avutil: do not use avcodec header in frame.h

5 years agoavfilter: fix leaks on error in ff_filter_frame
Vittorio Giovara [Wed, 18 Dec 2013 10:45:01 +0000 (11:45 +0100)]
avfilter: fix leaks on error in ff_filter_frame

5 years agoavfilter: add needs_writable field to the internal AVFilterPad structure
Vittorio Giovara [Wed, 18 Dec 2013 13:21:25 +0000 (14:21 +0100)]
avfilter: add needs_writable field to the internal AVFilterPad structure

5 years agoavfilter: add documentation for needs_writable
Vittorio Giovara [Wed, 18 Dec 2013 10:40:38 +0000 (11:40 +0100)]
avfilter: add documentation for needs_writable

5 years agofate: add framepack filter test
Vittorio Giovara [Tue, 5 Nov 2013 15:00:49 +0000 (16:00 +0100)]
fate: add framepack filter test

5 years agolavfi: add framepack filter
Vittorio Giovara [Thu, 9 Jan 2014 18:50:19 +0000 (19:50 +0100)]
lavfi: add framepack filter

5 years agoflac muxer: add option to disable writing the global header
Justin Ruggles [Thu, 9 Jan 2014 17:11:26 +0000 (12:11 -0500)]
flac muxer: add option to disable writing the global header

The global header is not explicitly required for playback, and
omitting it allows for simple concatenation.

5 years agoATRAC3+ decoder
Maxim Polijakowski [Fri, 3 Jan 2014 22:23:11 +0000 (23:23 +0100)]
ATRAC3+ decoder

Cleanup by Diego Biurrun.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
5 years agox86: hpeldsp: Add missing av_cold attribute to init function
Diego Biurrun [Thu, 9 Jan 2014 13:06:32 +0000 (14:06 +0100)]
x86: hpeldsp: Add missing av_cold attribute to init function

5 years agox86: avcodec: Add a bunch of missing #includes for av_cold
Diego Biurrun [Thu, 9 Jan 2014 13:06:31 +0000 (14:06 +0100)]
x86: avcodec: Add a bunch of missing #includes for av_cold

5 years agoac3tab.h: #include the correct headers
Diego Biurrun [Thu, 9 Jan 2014 13:06:30 +0000 (14:06 +0100)]
ac3tab.h: #include the correct headers

5 years agomjpegdec: apply flipping after decoding, not before
Anton Khirnov [Fri, 20 Dec 2013 09:44:57 +0000 (10:44 +0100)]
mjpegdec: apply flipping after decoding, not before

This is simpler and removes a silly restriction on edges being present.

5 years agohevc: fix decoding of one PU wide files
Guillaume Martres [Fri, 3 Jan 2014 08:10:38 +0000 (09:10 +0100)]
hevc: fix decoding of one PU wide files

For those the block size may be larger than the source linesize (if the
edges are not allocated).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoFATE: add MSS2 tests
Anton Khirnov [Tue, 17 Dec 2013 11:44:17 +0000 (12:44 +0100)]
FATE: add MSS2 tests

5 years agovp9: drop support for real (non-emulated) edges
Anton Khirnov [Fri, 20 Dec 2013 10:20:24 +0000 (11:20 +0100)]
vp9: drop support for real (non-emulated) edges

They are not measurably faster on x86, they might be somewhat faster on
other platforms due to missing emu edge SIMD, but the gain is not large
enough to justify the added complexity.

5 years agovp8: drop support for real (non-emulated) edges
Anton Khirnov [Fri, 20 Dec 2013 10:20:24 +0000 (11:20 +0100)]
vp8: drop support for real (non-emulated) edges

They are not measurably faster on x86, they might be somewhat faster on
other platforms due to missing emu edge SIMD, but the gain is not large
enough to justify the added complexity.

5 years agompegvideo: drop support for real (non-emulated) edges
Anton Khirnov [Fri, 20 Dec 2013 10:20:24 +0000 (11:20 +0100)]
mpegvideo: drop support for real (non-emulated) edges

Several decoders disable those anyway and they are not measurably faster
on x86. They might be somewhat faster on other platforms due to missing
emu edge SIMD, but the gain is not large enough (and those decoders
relevant enough) to justify the added complexity.

5 years agoarm: Add a missing # as prefix for an immediate constant
Martin Storsjö [Tue, 7 Jan 2014 12:01:24 +0000 (14:01 +0200)]
arm: Add a missing # as prefix for an immediate constant

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarm: Allow overriding the alignment set in the function macro
Martin Storsjö [Tue, 7 Jan 2014 10:13:11 +0000 (12:13 +0200)]
arm: Allow overriding the alignment set in the function macro

The function macro always sets .align 2 before declaring the
function label (since 5c5e1ea3) and always sets the section to
.text (since 278caa6a).

The .align 5 before certain functions, added in fc252eba, were added
before .text and .align were added to the function macro and thus
became useless/unused when the function macro got them.

This restores the original intention, to align the loop entry
points.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarm: Remove a leftover define for the pld instruction
Martin Storsjö [Tue, 7 Jan 2014 10:05:56 +0000 (12:05 +0200)]
arm: Remove a leftover define for the pld instruction

This file no longer uses the pld instruction at all, all such uses
have been split into hpeldsp_arm.S.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarm: cosmetics: Reindent the h264dsp neon init function
Martin Storsjö [Tue, 7 Jan 2014 09:15:49 +0000 (11:15 +0200)]
arm: cosmetics: Reindent the h264dsp neon init function

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agonetwork.h: Add #endif comments to improve readability
Diego Biurrun [Mon, 6 Jan 2014 10:26:20 +0000 (11:26 +0100)]
network.h: Add #endif comments to improve readability

5 years agoRename CONFIG_FFT_FLOAT ---> FFT_FLOAT
Diego Biurrun [Mon, 6 Jan 2014 13:48:18 +0000 (14:48 +0100)]
Rename CONFIG_FFT_FLOAT ---> FFT_FLOAT

The define does not originate from configure, so it should not
have a name that is CONFIG_-prefixed.

5 years agolibopusenc: Change default frame duration to 20 ms
Paul B Mahol [Fri, 15 Nov 2013 01:09:06 +0000 (01:09 +0000)]
libopusenc: Change default frame duration to 20 ms

20 ms is the default in the libopus encoder, and gives better
quality than 10 ms.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoconfigure: Disable networking if winsock2.h is available but winsock functions aren't
Martin Storsjö [Tue, 31 Dec 2013 08:11:24 +0000 (10:11 +0200)]
configure: Disable networking if winsock2.h is available but winsock functions aren't

Previously, if neither of the checks for the closesocket function
succeeded, we still kept winsock2.h and networking in general
enabled.

When targeting the WinRT API subset, the winsock2.h header is
available (making the check for it succeed, giving the impression
that winsock is available), but tests that actually try to use
such a function will fail. In this case, disable the winsock2.h
feature and networking in general, as if the winsock2.h header
test would have failed in the first place.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agorandom_seed: Rewrite the generic clock() based seed code
Michael Niedermayer [Mon, 11 Jun 2012 09:47:59 +0000 (11:47 +0200)]
random_seed: Rewrite the generic clock() based seed code

The new code is faster and reuses the previous state in case of
multiple calls.

The previous code could easily end up in near-infinite loops,
if the difference between two clock() calls never was larger than
1.

This makes fate-parseutils finish in finite time when run in wine,
if CryptGenRandom isn't available (which e.g. isn't available if
targeting Windows RT/metro).

Patch originally by Michael Niedermayer but with some modifications
by Martin Storsjö.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoconfigure: Update freetype check to follow upstream
Luca Barbato [Sat, 21 Dec 2013 16:59:59 +0000 (17:59 +0100)]
configure: Update freetype check to follow upstream

The freetype tutorial suggests to use #include FT_FREETYPE_H.

Bug-Id: 616

5 years agodrawtext: Drop pointless header
Luca Barbato [Sun, 5 Jan 2014 11:30:45 +0000 (12:30 +0100)]
drawtext: Drop pointless header

It should be forward compatible with newer freetype.

5 years agosegafilm: fix leaks if reading the header fails
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
segafilm: fix leaks if reading the header fails

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agopthread_frame: unref decoded frames on failure
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
pthread_frame: unref decoded frames on failure

This is similar to what the non-threaded code already does.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agoh264: do not use 422 functions for monochrome
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
h264: do not use 422 functions for monochrome

Fixes invalid memory access.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agoh264: check that execute_decode_slices() is not called too many times
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
h264: check that execute_decode_slices() is not called too many times

Fixes invalid reads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agoh264: reject mismatching luma/chroma bit depths during sps parsing
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
h264: reject mismatching luma/chroma bit depths during sps parsing

There is no point in delaying the check and it avoids bugs with a
half-initialized context.

Fixes invalid reads.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agoh264: rebuild the default ref list if the reference count changes
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
h264: rebuild the default ref list if the reference count changes

Fixes possible access to freed memory.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agocavsdec: check ff_get_buffer() return value
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
cavsdec: check ff_get_buffer() return value

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agolavc: do not leak the internal frame if opening the codec fails
Anton Khirnov [Mon, 16 Dec 2013 21:54:43 +0000 (22:54 +0100)]
lavc: do not leak the internal frame if opening the codec fails

5 years agolavf: remove a pointless check
Anton Khirnov [Mon, 16 Dec 2013 21:37:40 +0000 (22:37 +0100)]
lavf: remove a pointless check

AVStream.codec is always non-NULL

5 years agooggparseogm: check timing variables
Anton Khirnov [Thu, 28 Nov 2013 09:54:35 +0000 (10:54 +0100)]
oggparseogm: check timing variables

Fixes a potential divide by zero.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agolavc: add 422/444 YUV with alpha to align_dimensions()
Anton Khirnov [Fri, 3 Jan 2014 13:50:49 +0000 (14:50 +0100)]
lavc: add 422/444 YUV with alpha to align_dimensions()

Aligns frame dimensions to 16, which fixes potential invalid writes.

5 years agolagarith: do not call simd functions on unaligned lines
Kostya Shishkov [Mon, 30 Dec 2013 08:31:57 +0000 (09:31 +0100)]
lagarith: do not call simd functions on unaligned lines

They end up overwriting past the line end.

Partially based on a patch by Michael Niedermayer <michaelni@gmx.at>

Bug-Id: vlc/9700
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agosgidec: fix buffer size check in expand_rle_row()
Anton Khirnov [Thu, 2 Jan 2014 08:34:20 +0000 (09:34 +0100)]
sgidec: fix buffer size check in expand_rle_row()

Right now it will spuriously fail if the linesize is exactly equal to
the data width.

CC:libav-stable@libav.org

5 years agokgv1dec: replace forcing EMU_EDGE by a copy
Anton Khirnov [Tue, 17 Dec 2013 07:56:13 +0000 (08:56 +0100)]
kgv1dec: replace forcing EMU_EDGE by a copy

The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.

Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.

5 years ago4xm: replace forcing EMU_EDGE by a copy
Anton Khirnov [Tue, 17 Dec 2013 07:56:13 +0000 (08:56 +0100)]
4xm: replace forcing EMU_EDGE by a copy

The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on
get_buffer2() to always provide buffers with linesize == 2 * width.
This is wrong, since we place no such restriction on get_buffer2()
implementations.

Fix this by decoding into internal buffers and copying them to output
frames. Since this is a very obscure decoder, the performance hit should
not be an issue.

5 years ago4xm: return a proper error code.
Anton Khirnov [Tue, 17 Dec 2013 07:33:55 +0000 (08:33 +0100)]
4xm: return a proper error code.

5 years agohevc: rename some HEVC conformance streams
Guillaume Martres [Tue, 31 Dec 2013 13:29:04 +0000 (14:29 +0100)]
hevc: rename some HEVC conformance streams

Some HEVC conformance streams zip on
http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/
were updated without changing the actual stream. Rename them in FATE
accordingly to make it easier to track future stream updates.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agohevc: add new conformance streams
Guillaume Martres [Tue, 31 Dec 2013 13:29:03 +0000 (14:29 +0100)]
hevc: add new conformance streams

Also remove superseded conformance streams. The conformance streams all
come from http://wftp3.itu.int/av-arch/jctvc-site/bitstream_exchange/draft_conformance/

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agocmdutils: update copyright year to 2014.
Johan Andersson [Sat, 4 Jan 2014 19:47:32 +0000 (20:47 +0100)]
cmdutils: update copyright year to 2014.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years ago(e)ac3dec: set AV_FRAME_DATA_MATRIXENCODING side data.
Tim Walker [Wed, 11 Dec 2013 02:03:35 +0000 (02:03 +0000)]
(e)ac3dec: set AV_FRAME_DATA_MATRIXENCODING side data.

5 years ago(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags.
Tim Walker [Wed, 11 Dec 2013 02:03:34 +0000 (02:03 +0000)]
(e)ac3: parse and store the Dolby Surround, Surround EX and Headphone mode flags.

5 years agomlpdec: set AV_FRAME_DATA_MATRIXENCODING side data.
Tim Walker [Wed, 11 Dec 2013 02:03:33 +0000 (02:03 +0000)]
mlpdec: set AV_FRAME_DATA_MATRIXENCODING side data.

5 years agomlp: Parse TrueHD decoder channel modifiers and set the AVMatrixEncoding for each...
Tim Walker [Wed, 11 Dec 2013 02:03:32 +0000 (02:03 +0000)]
mlp: Parse TrueHD decoder channel modifiers and set the AVMatrixEncoding for each substream.

5 years agodcadec: set AV_FRAME_DATA_MATRIXENCODING side data.
Tim Walker [Wed, 11 Dec 2013 02:03:31 +0000 (02:03 +0000)]
dcadec: set AV_FRAME_DATA_MATRIXENCODING side data.

5 years agodcadec: set the output channel mode more accurately.
Tim Walker [Wed, 11 Dec 2013 02:03:30 +0000 (02:03 +0000)]
dcadec: set the output channel mode more accurately.

When downmixing 2.1 to 2-channel, if the 2.0 portion is Lt/Rt, sum-difference or dual mono, the actual output will be the same (with the LFE either mixed-in or discarded).

Also, when downmixing an arbitrary layout to 2-channel, if the bitstream contains custom downmix coefficients targeting Lt/Rt, then the output will be Lt/Rt rather than regular Stereo.

5 years agoavframe: add AV_FRAME_DATA_MATRIXENCODING side data type.
Tim Walker [Wed, 11 Dec 2013 02:03:29 +0000 (02:03 +0000)]
avframe: add AV_FRAME_DATA_MATRIXENCODING side data type.

Includes a libavcodec utility function to update a frame's side data.

5 years agolavu: Add values for various Dolby flags to the AVMatrixEncoding enum.
Tim Walker [Wed, 11 Dec 2013 02:03:28 +0000 (02:03 +0000)]
lavu: Add values for various Dolby flags to the AVMatrixEncoding enum.

5 years agoconfigure: Support preprocessor macros as header names
Diego Biurrun [Mon, 23 Dec 2013 00:03:48 +0000 (01:03 +0100)]
configure: Support preprocessor macros as header names

New versions of FreeType have moved the location of their API
header(s) and hide the location behind a macro.

Since the location changes between versions and no other way
to know the location exists, this workaround becomes necessary.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agosdp: Check that fmt->oformat is non-null before accessing it
Martin Storsjö [Fri, 3 Jan 2014 13:47:02 +0000 (15:47 +0200)]
sdp: Check that fmt->oformat is non-null before accessing it

This avoids crashes when avserver tries to create an SDP, since
d77f4af.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agofate: Update AAC ELD 5.1 ref for recent bugfixes.
Alex Converse [Tue, 24 Dec 2013 06:21:08 +0000 (22:21 -0800)]
fate: Update AAC ELD 5.1 ref for recent bugfixes.

5 years agoaac: Fix low delay windowing.
Alex Converse [Tue, 24 Dec 2013 21:03:26 +0000 (13:03 -0800)]
aac: Fix low delay windowing.

AAC LD uses a low overlap sine window instead of a KBD window.

5 years agofate: Add a test vector for AAC ELD with TNS.
Alex Converse [Tue, 24 Dec 2013 06:35:48 +0000 (22:35 -0800)]
fate: Add a test vector for AAC ELD with TNS.

5 years agoaac: Fix TNS decoding for the 512 sample window family.
Alex Converse [Tue, 24 Dec 2013 06:20:42 +0000 (22:20 -0800)]
aac: Fix TNS decoding for the 512 sample window family.