platform/upstream/libav.git
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>
11 years agojpeg2000: Do not assume a single tile
Michael Niedermayer [Mon, 1 Jul 2013 08:01:34 +0000 (10:01 +0200)]
jpeg2000: Do not assume a single tile

In preparation of supporting multiple tiles.

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

Skip processing bands with dimension set to 0.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Use EBCOT's CAUSAL and BYPASS mode in decode_cblk()
Michael Niedermayer [Mon, 1 Jul 2013 08:01:32 +0000 (10:01 +0200)]
jpeg2000: Use EBCOT's CAUSAL and BYPASS mode in decode_cblk()

Speed it up a bit.

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

Raise PATCHWELCOME error in case of non-implemented progression order.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Do not crash on NULL node in tag_tree_decode
Michael Niedermayer [Mon, 1 Jul 2013 08:01:30 +0000 (10:01 +0200)]
jpeg2000: Do not crash on NULL node in tag_tree_decode

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

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Proper cleanup on failure in decode_frame()
Luca Barbato [Mon, 1 Jul 2013 08:01:28 +0000 (10:01 +0200)]
jpeg2000: Proper cleanup on failure in decode_frame()

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Use the correct sizeof in memset for T1 data
Michael Niedermayer [Mon, 1 Jul 2013 08:01:27 +0000 (10:01 +0200)]
jpeg2000: Use the correct sizeof in memset for T1 data

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

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

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Compute corrections of sub-band coordinates
Michael Niedermayer [Mon, 1 Jul 2013 08:01:24 +0000 (10:01 +0200)]
jpeg2000: Compute corrections of sub-band coordinates

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

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Use separate fields for int and float codepaths
Michael Niedermayer [Mon, 1 Jul 2013 08:01:22 +0000 (10:01 +0200)]
jpeg2000: Use separate fields for int and float codepaths

Split stepsize and data into int and float variants.
Eliminates a number of casts and simplifies spotting errors.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Split int/float codepaths depending on the DWT
Michael Niedermayer [Mon, 1 Jul 2013 08:01:21 +0000 (10:01 +0200)]
jpeg2000: Split int/float codepaths depending on the DWT

DWT53 is always int, DWT97 is always float.

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

Correctly scale down the component coordinates and
clean up some redundant code.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Compute quantization for 'scalar derived' in the correct case.
Michael Niedermayer [Mon, 1 Jul 2013 08:01:19 +0000 (10:01 +0200)]
jpeg2000: Compute quantization for 'scalar derived' in the correct case.

Scalar derived case is represented by the JPEG2K_QSTY_SI define.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
11 years agojpeg2000: Calculate code-block coord in ff_jpeg2000_init_component()
Michael Niedermayer [Mon, 1 Jul 2013 08:01:18 +0000 (10:01 +0200)]
jpeg2000: Calculate code-block coord in ff_jpeg2000_init_component()

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Nicolas Bertrand <nicoinattendu@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>