platform/upstream/libav.git
11 years agoarm: Add VFP-accelerated version of dca_lfe_fir
Martin Storsjö [Fri, 19 Jul 2013 08:03:32 +0000 (11:03 +0300)]
arm: Add VFP-accelerated version of dca_lfe_fir

               Before           After
               Mean    StdDev   Mean    StdDev  Change
This function    868.2  33.5      436.0  27.0   +99.1%
Overall        15973.0 223.2    15577.5  83.2    +2.5%

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoarm: Add VFP-accelerated version of imdct_half
Martin Storsjö [Fri, 19 Jul 2013 07:59:17 +0000 (10:59 +0300)]
arm: Add VFP-accelerated version of imdct_half

               Before           After
               Mean    StdDev   Mean    StdDev  Change
This function   2653.0  28.5     1108.8  51.4   +139.3%
Overall        17049.5 408.2    15973.0 223.2     +6.7%

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoarm: Add VFP-accelerated version of int32_to_float_fmul_array8
Ben Avison [Mon, 15 Jul 2013 17:28:12 +0000 (18:28 +0100)]
arm: Add VFP-accelerated version of int32_to_float_fmul_array8

               Before           After
               Mean    StdDev   Mean    StdDev  Change
This function    366.2  18.3      277.8  13.7   +31.9%
Overall        18420.5 489.1    17049.5 408.2    +8.0%

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agodcadec: Use int32_to_float_fmul_array8
Ben Avison [Tue, 16 Jul 2013 12:41:18 +0000 (15:41 +0300)]
dcadec: Use int32_to_float_fmul_array8

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agofmtconvert: Add a new method, int32_to_float_fmul_array8
Ben Avison [Mon, 15 Jul 2013 17:28:11 +0000 (18:28 +0100)]
fmtconvert: Add a new method, int32_to_float_fmul_array8

This is similar to int32_to_float_fmul_scalar, but
loads a new scalar multiplier every 8 input samples.
This enables the use of much larger input arrays, which
is important for pipelining on some CPUs (such as
ARMv6).

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoarm: Add VFP-accelerated version of int32_to_float_fmul_scalar
Ben Avison [Mon, 15 Jul 2013 17:28:10 +0000 (18:28 +0100)]
arm: Add VFP-accelerated version of int32_to_float_fmul_scalar

               Before           After
               Mean    StdDev   Mean    StdDev  Change
This function   1175.0   4.4      366.2  18.3   +220.8%
Overall        19285.5 292.0    18420.5 489.1     +4.7%

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoarm: Add VFP-accelerated version of synth_filter_float
Ben Avison [Mon, 15 Jul 2013 17:28:09 +0000 (18:28 +0100)]
arm: Add VFP-accelerated version of synth_filter_float

               Before           After
               Mean    StdDev   Mean    StdDev  Change
This function   9295.0 114.9     4853.2 83.5    +91.5%
Overall        23699.8 397.6    19285.5 292.0   +22.9%

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agolibspeexdec: fix detection of final terminator code
Justin Ruggles [Sat, 13 Jul 2013 15:55:33 +0000 (11:55 -0400)]
libspeexdec: fix detection of final terminator code

11 years agoconfigure: generate full msvc debug symbols when linking in debug mode
Hendrik Leppkes [Fri, 19 Jul 2013 13:44:39 +0000 (15:44 +0200)]
configure: generate full msvc debug symbols when linking in debug mode

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agolibx264: Define X264_API_IMPORTS on MSVC/ICL
Derek Buitenhuis [Fri, 19 Jul 2013 18:25:57 +0000 (14:25 -0400)]
libx264: Define X264_API_IMPORTS on MSVC/ICL

libx264 has a few data exports which require X264_API_IMPORTS
to be defined if we link to libx264 dynamically on Windows.

In a similar fashion to how we handle our compat snprintf
implementation, if we define it all the time, the compiler
will first try and link to __imp_x264_symbol_name, and failing
that, as in the case of a static libx264, will attempt to link
to the non-prefixed symbol, which has already been pulled in by
other x264 functions' object files.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
11 years agodsicinav: Clip the source size to the expected maximum
Luca Barbato [Fri, 19 Jul 2013 19:34:21 +0000 (21:34 +0200)]
dsicinav: Clip the source size to the expected maximum

A packet larger than cin->bitmap_size does not make sense.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agodsicinav: Bound-check the source buffer when needed
Luca Barbato [Fri, 19 Jul 2013 19:09:40 +0000 (21:09 +0200)]
dsicinav: Bound-check the source buffer when needed

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agodsicinav: K&R formatting cosmetics
Luca Barbato [Fri, 19 Jul 2013 19:05:44 +0000 (21:05 +0200)]
dsicinav: K&R formatting cosmetics

11 years agolavfi: filtfmts: use newer avfilter APIs
Vittorio Giovara [Tue, 16 Jul 2013 13:05:01 +0000 (15:05 +0200)]
lavfi: filtfmts: use newer avfilter APIs

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agortsp: Support multicast source filters (RFC 4570)
Ed Torbett [Thu, 27 Jun 2013 07:53:00 +0000 (08:53 +0100)]
rtsp: Support multicast source filters (RFC 4570)

This supports inclusion of one single IP address for now,
at the media level. Specifying the filter at the session level
(instead of at the media level), multiple source addresses,
exclusion, or using FQDNs instead of plain IP addresses is not
supported (yet at least).

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agortpproto: Check the source IP if one single source has been specified
Martin Storsjö [Thu, 18 Jul 2013 18:12:14 +0000 (21:12 +0300)]
rtpproto: Check the source IP if one single source has been specified

If another peer is sending unicast packets to the same port that
we are listening on, those packets can end up being received despite
using source specific multicast. For those cases, manually check the
source address of received packets against the intended source address.

This only handles the case when the source list is one single IP
address for now, which probably is the most common case.

Based on a patch by Ed Torbett.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agortpproto: Support IGMPv3 source specific multicast inclusion
Ed Torbett [Thu, 18 Jul 2013 17:04:16 +0000 (20:04 +0300)]
rtpproto: Support IGMPv3 source specific multicast inclusion

Blocking/exclusion is not supported yet.

The rtp protocol parameter takes the same form as the existing
sources parameter for the udp protocol.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agocompat: Add missing license boilerplates
Diego Biurrun [Thu, 18 Jul 2013 13:13:18 +0000 (15:13 +0200)]
compat: Add missing license boilerplates

11 years agoEmploy consistent LIBAV_COMPAT_ multiple inclusion guards in compat/
Diego Biurrun [Thu, 25 Oct 2012 14:49:26 +0000 (16:49 +0200)]
Employ consistent LIBAV_COMPAT_ multiple inclusion guards in compat/

Also fix a comment and an #endif comment.

11 years agoavserver: Remove unused loadable module support
Martin Storsjö [Wed, 17 Jul 2013 15:24:23 +0000 (18:24 +0300)]
avserver: Remove unused loadable module support

There is no record of this ever being used at all, anywhere,
since the feature was added in 2effd274466.

This gets rid of extra linker tricks just to support a feature
that isn't used, simplifying portability to other platforms.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoConsistently use "cpu_flags" as variable/parameter name for CPU flags
Diego Biurrun [Wed, 17 Jul 2013 18:19:24 +0000 (20:19 +0200)]
Consistently use "cpu_flags" as variable/parameter name for CPU flags

11 years agofmtconvert: Explicitly use int32_t instead of int
Christophe Gisquet [Thu, 27 Dec 2012 21:33:51 +0000 (22:33 +0100)]
fmtconvert: Explicitly use int32_t instead of int

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agopthread: Rename thread_init to avoid symbol collision
Sean McGovern [Tue, 16 Jul 2013 15:31:23 +0000 (11:31 -0400)]
pthread: Rename thread_init to avoid symbol collision

The AIX threads library exposes a function with the same name.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agolavf: Make sure avg_frame_rate can be calculated without integer overflow
Martin Storsjö [Mon, 15 Jul 2013 13:44:20 +0000 (16:44 +0300)]
lavf: Make sure avg_frame_rate can be calculated without integer overflow

If either of the deltas is too large for the multiplications to
succeed, don't use this for setting the avg frame rate.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agomov: Do not allow updating the time scale after it has been set
Martin Storsjö [Mon, 15 Jul 2013 14:13:54 +0000 (17:13 +0300)]
mov: Do not allow updating the time scale after it has been set

The time scale is set in mdhd, and later validated in the
enclosing trak atom once all of its children have been parsed.

A loose mdhd atom outside of a trak atom could update the time
scale of the last stream without any validation.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agomov: Seek back if overreading an individual atom
Martin Storsjö [Mon, 15 Jul 2013 12:59:50 +0000 (15:59 +0300)]
mov: Seek back if overreading an individual atom

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoac3dec: Don't consume more data than the actual input packet size
Martin Storsjö [Mon, 15 Jul 2013 08:28:46 +0000 (11:28 +0300)]
ac3dec: Don't consume more data than the actual input packet size

This was handled properly in the normal return case at the end
of the function, but not in this special case.

Returning a value larger than the input packet size can cause
problems for certain library users.

Returning the actual input buffer size unconditionally, since
it is not guaranteed that frame_size is set to a sensible
value at this point.

Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoindeo: Reject impossible FRAMETYPE_NULL
Luca Barbato [Sun, 14 Jul 2013 16:16:56 +0000 (18:16 +0200)]
indeo: Reject impossible FRAMETYPE_NULL

A frame marked FRAMETYPE_NULL cannot be scalable and requires a
previous frame successfully decoded.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo: Do not reference mismatched tiles
Luca Barbato [Sun, 14 Jul 2013 14:49:43 +0000 (16:49 +0200)]
indeo: Do not reference mismatched tiles

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo: Sanitize ff_ivi_init_planes fail paths
Luca Barbato [Sun, 14 Jul 2013 13:48:17 +0000 (15:48 +0200)]
indeo: Sanitize ff_ivi_init_planes fail paths

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo5: return proper error codes
Luca Barbato [Sun, 14 Jul 2013 12:41:56 +0000 (14:41 +0200)]
indeo5: return proper error codes

11 years agoindeo: Bound-check before applying motion compensation
Luca Barbato [Sun, 14 Jul 2013 12:06:16 +0000 (14:06 +0200)]
indeo: Bound-check before applying motion compensation

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agortsp: Include an User-Agent header field in all requests
Martin Storsjö [Fri, 12 Jul 2013 09:14:12 +0000 (12:14 +0300)]
rtsp: Include an User-Agent header field in all requests

Some rtsp servers like the IP Cam IcyBox IB-CAM2002 need it.

Based on a patch by Carl Eugen Hoyos.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoindeo: Bound-check before applying transform
Luca Barbato [Fri, 12 Jul 2013 12:33:24 +0000 (14:33 +0200)]
indeo: Bound-check before applying transform

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo4: Validate scantable dimension
Luca Barbato [Fri, 12 Jul 2013 16:10:05 +0000 (18:10 +0200)]
indeo4: Validate scantable dimension

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo4: Check the quantization matrix index
Luca Barbato [Fri, 12 Jul 2013 13:02:33 +0000 (15:02 +0200)]
indeo4: Check the quantization matrix index

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo4: Do not access missing reference MV
Luca Barbato [Fri, 12 Jul 2013 12:32:03 +0000 (14:32 +0200)]
indeo4: Do not access missing reference MV

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoac3dec: Consistently use AC3_BLOCK_SIZE and sizeof
Martin Storsjö [Thu, 11 Jul 2013 13:39:23 +0000 (16:39 +0300)]
ac3dec: Consistently use AC3_BLOCK_SIZE and sizeof

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoac3dec: Increment channel pointers only once per channel
Martin Storsjö [Thu, 11 Jul 2013 13:30:18 +0000 (16:30 +0300)]
ac3dec: Increment channel pointers only once per channel

If the channel mapping map multiple output channels to one
input channel, we should only increment the actual pointer once.

Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agojpeg2000: Remove unused passes array in Jpeg200Cblk structure
Nicolas Bertrand [Sat, 13 Jul 2013 08:10:26 +0000 (10:10 +0200)]
jpeg2000: Remove unused passes array in Jpeg200Cblk structure

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Initialize only once mqc arrays
Nicolas Bertrand [Fri, 12 Jul 2013 21:15:43 +0000 (23:15 +0200)]
jpeg2000: Initialize only once mqc arrays

Improves decoding speed.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agovf_interlace: better handling of odd video size
Michael Niedermayer [Tue, 9 Jul 2013 15:57:49 +0000 (17:57 +0200)]
vf_interlace: better handling of odd video size

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agofate: use current syntax for the scale filter
Sean McGovern [Wed, 10 Jul 2013 17:37:05 +0000 (13:37 -0400)]
fate: use current syntax for the scale filter

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agodca: Respect the current limits in the downmixing capabilities
Luca Barbato [Wed, 10 Jul 2013 17:00:15 +0000 (19:00 +0200)]
dca: Respect the current limits in the downmixing capabilities

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agodca: Error out on missing DSYNC
Luca Barbato [Wed, 10 Jul 2013 16:07:45 +0000 (18:07 +0200)]
dca: Error out on missing DSYNC

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agopcm: always use codec->id instead of codec_id
Luca Barbato [Wed, 10 Jul 2013 02:54:49 +0000 (04:54 +0200)]
pcm: always use codec->id instead of codec_id

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agovdpau: use the correct namespace for the union
Luca Barbato [Wed, 10 Jul 2013 18:27:03 +0000 (20:27 +0200)]
vdpau: use the correct namespace for the union

Vdp is used by libvdpau, use AVVDPAU as used for the rest.

Reported-by: Alexis Ballier <aballier@gentoo.org>
11 years agomlpdec: Do not set invalid context in read_restart_header
Luca Barbato [Wed, 10 Jul 2013 02:35:34 +0000 (04:35 +0200)]
mlpdec: Do not set invalid context in read_restart_header

The faulty values rippled further down the codepath causing a
hard-to-track segfault in the assembly code.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agomlpdsp: x86: Respect cpuflags
Luca Barbato [Wed, 10 Jul 2013 01:18:14 +0000 (03:18 +0200)]
mlpdsp: x86: Respect cpuflags

11 years agopcx: Do not overread source buffer in pcx_rle_decode
Luca Barbato [Sat, 29 Jun 2013 04:37:32 +0000 (06:37 +0200)]
pcx: Do not overread source buffer in pcx_rle_decode

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agopcx: K&R formatting cosmetics
Luca Barbato [Sat, 29 Jun 2013 04:25:31 +0000 (06:25 +0200)]
pcx: K&R formatting cosmetics

11 years agoconfigure: Check for support for labels in the inline assembly
Martin Storsjö [Tue, 9 Jul 2013 17:51:00 +0000 (20:51 +0300)]
configure: Check for support for labels in the inline assembly

Use this for enabling the ppc timer.h implementation only on
assemblers that support labels in the inline assembly.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agowmavoice: conceal clearly corrupted blocks
Luca Barbato [Sat, 29 Jun 2013 03:29:54 +0000 (05:29 +0200)]
wmavoice: conceal clearly corrupted blocks

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agowmavoice: use init_static_data
Luca Barbato [Sat, 29 Jun 2013 01:10:59 +0000 (03:10 +0200)]
wmavoice: use init_static_data

11 years agowmavoice: return meaningful error codes
Luca Barbato [Sat, 29 Jun 2013 01:02:02 +0000 (03:02 +0200)]
wmavoice: return meaningful error codes

11 years agoiff: Do not read over the source buffer
Luca Barbato [Sat, 29 Jun 2013 05:26:48 +0000 (07:26 +0200)]
iff: Do not read over the source buffer

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoiff: K&R formatting cosmetics
Luca Barbato [Sat, 29 Jun 2013 05:05:54 +0000 (07:05 +0200)]
iff: K&R formatting cosmetics

11 years agoqdm2: Conceal broken samples
Luca Barbato [Tue, 9 Jul 2013 12:59:33 +0000 (14:59 +0200)]
qdm2: Conceal broken samples

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoqdm2: refactor joined stereo support
Luca Barbato [Tue, 9 Jul 2013 12:44:02 +0000 (14:44 +0200)]
qdm2: refactor joined stereo support

qdm2 does support only two channels. Loop over the run once.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoadpcm: Write the correct number of samples for ima-dk4
Luca Barbato [Sun, 7 Jul 2013 10:56:12 +0000 (12:56 +0200)]
adpcm: Write the correct number of samples for ima-dk4

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoimc: Catch a division by zero
Luca Barbato [Tue, 9 Jul 2013 07:18:16 +0000 (09:18 +0200)]
imc: Catch a division by zero

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoatrac3: Error on impossible encoding/channel combinations
Luca Barbato [Tue, 9 Jul 2013 02:44:26 +0000 (04:44 +0200)]
atrac3: Error on impossible encoding/channel combinations

Joint stereo encoded mono is impossible.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoatrac3: set the getbits context the right buffer_end
Luca Barbato [Tue, 9 Jul 2013 02:20:23 +0000 (04:20 +0200)]
atrac3: set the getbits context the right buffer_end

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoatrac3: fix error handling
Luca Barbato [Mon, 8 Jul 2013 23:03:13 +0000 (01:03 +0200)]
atrac3: fix error handling

decode_tonal_components returns a proper AVERROR.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agomovenc: Rename the timestamp parameter to dts in write_hint_packets
Martin Storsjö [Sun, 7 Jul 2013 14:03:00 +0000 (17:03 +0300)]
movenc: Rename the timestamp parameter to dts in write_hint_packets

This matches its actual intended use better.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agomovenc: Make sure the RTP hint tracks have nondecreasing DTS
Martin Storsjö [Sun, 7 Jul 2013 13:55:26 +0000 (16:55 +0300)]
movenc: Make sure the RTP hint tracks have nondecreasing DTS

The RTP timestamps can be decreasing for codecs with B-frames. For
these cases, make sure the timestamps in the MP4 file track itself
are nondecreasing, and add an offset to the RTP packet hint instead
to produce the intended RTP timestamp.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoqdm2: check and reset dithering index per channel
Luca Barbato [Thu, 27 Jun 2013 00:50:52 +0000 (02:50 +0200)]
qdm2: check and reset dithering index per channel

Checking per subband would have the index exceed the
dithering noise table size.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoqdm2: formatting cosmetics
Luca Barbato [Thu, 27 Jun 2013 00:49:15 +0000 (02:49 +0200)]
qdm2: formatting cosmetics

Apply the usual style plus drop few unnecessary return at the end
of void functions.

11 years agoqdm2: use init_static_data
Luca Barbato [Thu, 27 Jun 2013 00:20:59 +0000 (02:20 +0200)]
qdm2: use init_static_data

11 years agowestwood_vqa: do not free extradata on error in read_header
Luca Barbato [Thu, 27 Jun 2013 02:30:20 +0000 (04:30 +0200)]
westwood_vqa: do not free extradata on error in read_header

The extradata is already freed by avformat_open_input on
failure.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agovqavideo: check the version
Luca Barbato [Thu, 27 Jun 2013 01:19:05 +0000 (03:19 +0200)]
vqavideo: check the version

Prevent out of buffer write.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agocmdutils: wrap exit explicitly
Luca Barbato [Sat, 6 Jul 2013 23:52:51 +0000 (01:52 +0200)]
cmdutils: wrap exit explicitly

Some C runtime implementations deadlock when calling threading functions
on the atexit() handler.

Use a simpler wrapper similar to av_log to call the cleanup function
before exit.

Bug-Id: 523

11 years agomovenc: K&R formatting cosmetics
Martin Storsjö [Sun, 7 Jul 2013 11:59:47 +0000 (14:59 +0300)]
movenc: K&R formatting cosmetics

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoMakefile: Remove stray tabs
Michael Niedermayer [Sun, 7 Jul 2013 09:56:02 +0000 (11:56 +0200)]
Makefile: Remove stray tabs

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agovp8: Wait for prev_frame to parse segment_map before reading it
Ronald S. Bultje [Sun, 23 Jun 2013 04:16:11 +0000 (21:16 -0700)]
vp8: Wait for prev_frame to parse segment_map before reading it

This fixes occasional failures of vp8-test-vector-010 with frame-level
multithreading enabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoyuv4mpeg: Correctly round chroma up for odd luma sizes
Ronald S. Bultje [Mon, 24 Jun 2013 23:13:58 +0000 (19:13 -0400)]
yuv4mpeg: Correctly round chroma up for odd luma sizes

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agormdec: Use the AVIOContext given as parameter in rm_read_metadata()
Michael Niedermayer [Mon, 1 Jul 2013 21:38:08 +0000 (23:38 +0200)]
rmdec: Use the AVIOContext given as parameter in rm_read_metadata()

This fixes crashes when playing back certain RealRTSP streams.

When invoked from the RTP depacketizer, the full realmedia
demuxer isn't invoked, but only certain functions from it, where
a separate AVIOContext is passed in as parameter (for the buffer
containing the data to parse). The functions called from within
those entry points should only be using that parameter, not
s->pb. In the depacketizer case, s is the RTSP context, where ->pb
is null.

Cc: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agoavio: Handle AVERROR_EOF in the same way as the return value 0
Michael Niedermayer [Mon, 24 Jun 2013 12:23:44 +0000 (14:23 +0200)]
avio: Handle AVERROR_EOF in the same way as the return value 0

This makes sure the ffurl_read_complete function actually
returns the number of bytes read, as the documentation of the
function says, even if the underlying protocol uses AVERROR_EOF
instead of 0.

Signed-off-by: Martin Storsjö <martin@martin.st>
11 years agowtv: Mark attachment with a negative stream id
Luca Barbato [Mon, 24 Jun 2013 16:12:24 +0000 (18:12 +0200)]
wtv: Mark attachment with a negative stream id

A sid 0 would be mismatched to the attachment.

Prevent NULL pointer dereference.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoavprobe: rename the prettyprint structures
Luca Barbato [Fri, 21 Jun 2013 12:47:01 +0000 (14:47 +0200)]
avprobe: rename the prettyprint structures

11 years agotools: Wording and formatting cosmetics
Diego Biurrun [Fri, 5 Jul 2013 15:42:37 +0000 (17:42 +0200)]
tools: Wording and formatting cosmetics

11 years agotests: Only run noproxy test if networking is enabled
Diego Biurrun [Tue, 2 Jul 2013 15:16:18 +0000 (17:16 +0200)]
tests: Only run noproxy test if networking is enabled

11 years agofifo: K&R formatting cosmetics
Luca Barbato [Sat, 6 Jul 2013 10:05:27 +0000 (12:05 +0200)]
fifo: K&R formatting cosmetics

11 years agokmvc: Clip pixel position to valid range
Luca Barbato [Mon, 1 Jul 2013 01:05:41 +0000 (03:05 +0200)]
kmvc: Clip pixel position to valid range

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agokmvc: use fixed sized arrays in the context
Luca Barbato [Mon, 1 Jul 2013 01:04:15 +0000 (03:04 +0200)]
kmvc: use fixed sized arrays in the context

Avoid some boilerplate code to dynamically allocate and then free the
buffers.

11 years agobitstream_filter: K&R formatting cosmetics
Luca Barbato [Fri, 5 Jul 2013 13:35:30 +0000 (15:35 +0200)]
bitstream_filter: K&R formatting cosmetics

11 years agocompat: wrap math.h to avoid AIX-specific clashes
Luca Barbato [Thu, 4 Jul 2013 19:53:08 +0000 (21:53 +0200)]
compat: wrap math.h to avoid AIX-specific clashes

AIX defines a class() function in its math.h header without any
guard.

11 years agolog: pass the correct parameters to missing_feature_sample
Luca Barbato [Thu, 27 Jun 2013 01:17:32 +0000 (03:17 +0200)]
log: pass the correct parameters to missing_feature_sample

CC:libav-stable@libav.org

11 years agoindeo: reject negative array indexes
Luca Barbato [Wed, 3 Jul 2013 12:55:50 +0000 (14:55 +0200)]
indeo: reject negative array indexes

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
11 years agoindeo: Cosmetic formatting
Luca Barbato [Wed, 3 Jul 2013 12:01:32 +0000 (14:01 +0200)]
indeo: Cosmetic formatting

Trim some overly long lines.

11 years agoindeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks
Luca Barbato [Wed, 3 Jul 2013 11:59:16 +0000 (13:59 +0200)]
indeo: Refactor ff_ivi_init_tiles and ivi_decode_blocks

Spin large and mostly self contained blocks into stand alone
functions.

11 years agoindeo: Refactor ff_ivi_dec_huff_desc
Luca Barbato [Wed, 3 Jul 2013 10:58:40 +0000 (12:58 +0200)]
indeo: Refactor ff_ivi_dec_huff_desc

Spare an indentation level.

11 years agoindeo: use a typedef for the mc function pointer
Luca Barbato [Wed, 3 Jul 2013 09:18:30 +0000 (11:18 +0200)]
indeo: use a typedef for the mc function pointer

11 years agocabac: x86 version of get_cabac_bypass
Jason Garrett-Glaser [Mon, 1 Jul 2013 19:06:22 +0000 (12:06 -0700)]
cabac: x86 version of get_cabac_bypass

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agoaic: use chroma scan tables while decoding luma component in progressive mode
Kostya Shishkov [Wed, 3 Jul 2013 18:46:28 +0000 (20:46 +0200)]
aic: use chroma scan tables while decoding luma component in progressive mode

For some unclear reason Apple decided to use the same scan tables for luma and
chroma in the progressive mode while using different ones for luma in the
interlaced mode.

11 years agojpeg2000: Use the matching coding style struct for transform selection
Michael Niedermayer [Mon, 1 Jul 2013 08:01:39 +0000 (10:01 +0200)]
jpeg2000: Use the matching coding style struct for transform selection

Fixes a null pointer dereference.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Merge rescaling with interleaving in 9/7 IDWT
Michael Niedermayer [Mon, 1 Jul 2013 08:01:38 +0000 (10:01 +0200)]
jpeg2000: Merge rescaling with interleaving in 9/7 IDWT

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Optimize output sample conversion
Michael Niedermayer [Mon, 1 Jul 2013 08:01:37 +0000 (10:01 +0200)]
jpeg2000: Optimize output sample conversion

67935 -> 29984 kcycles

Reviewed-by: Nicolas BERTRAND <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Reset s->numX/Ytiles on tile deallocation
Michael Niedermayer [Mon, 1 Jul 2013 08:01:36 +0000 (10:01 +0200)]
jpeg2000: Reset s->numX/Ytiles on tile deallocation

Keep the structure fields more consistent after cleanup.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Optimize dequantization
Michael Niedermayer [Mon, 1 Jul 2013 08:01:35 +0000 (10:01 +0200)]
jpeg2000: Optimize dequantization

Float:   4700 -> 2700 cycles
Integer: 4400 -> 2800 cycles

(sandybridge  i7)

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>