Commit Graph

23722 Commits

Author SHA1 Message Date
Michael Niedermayer
4916e220a6 Merge commit 'bac8d38c0a716c8bdfdecf0ae545015c68f5df36'
* commit 'bac8d38c0a716c8bdfdecf0ae545015c68f5df36':
  rv10: return meaningful error codes.

Conflicts:
	libavcodec/rv10.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 16:10:23 +02:00
Michael Niedermayer
8cff853b23 Merge commit '69f6f03cd16a09e4e848b4e82bae4993bc361cd0'
* commit '69f6f03cd16a09e4e848b4e82bae4993bc361cd0':
  rv10: cosmetics, reformat
  qdm2: check that the FFT size is a power of 2

Conflicts:
	libavcodec/rv10.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 16:04:38 +02:00
Michael Niedermayer
0a946599f8 Merge commit 'ecff5acb5a738fcb4f9e206a12070dac4bf259b3'
* commit 'ecff5acb5a738fcb4f9e206a12070dac4bf259b3':
  svq1dec: clip motion vectors to the frame size.

Conflicts:
	libavcodec/svq1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 15:52:10 +02:00
Michael Niedermayer
251f283b9d Merge commit 'b1bb8fb860b47e90dd67f0c5740698128fc82dcc'
* commit 'b1bb8fb860b47e90dd67f0c5740698128fc82dcc':
  svq1dec: check that the reference frame has the same dimensions as the current one

Conflicts:
	libavcodec/svq1dec.c

See: 3b57bb478f

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-17 15:40:47 +02:00
Anton Khirnov
a0a872d073 indeo3: check motion vectors.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 12:10:42 +02:00
Anton Khirnov
34e6af9e20 indeo3: fix data size check
The data offsets are relative to the bistream header, which is 16 bytes
after the start of the data.
Fixes invalid reads with corrupted files.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 12:09:36 +02:00
Anton Khirnov
66531d634e indeo3: switch parsing the header to bytestream2
Also add an additional sanity check to the alt_quant table.
Fixes invalid reads with corrupted files.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 12:08:49 +02:00
Anton Khirnov
01d376f598 rv10: check that extradata is large enough
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 11:01:52 +02:00
Anton Khirnov
bac8d38c0a rv10: return meaningful error codes.
Also improve some error messages.
2013-04-17 11:01:17 +02:00
Anton Khirnov
69f6f03cd1 rv10: cosmetics, reformat 2013-04-17 10:58:29 +02:00
Anton Khirnov
34f87a5853 qdm2: check that the FFT size is a power of 2
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 10:56:11 +02:00
Anton Khirnov
ecff5acb5a svq1dec: clip motion vectors to the frame size.
Fixes invalid reads for corrupted files.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 10:55:51 +02:00
Anton Khirnov
b1bb8fb860 svq1dec: check that the reference frame has the same dimensions as the current one
They can be different if the last keyframe failed to decode correctly.
Fixes possible invalid reads in such a case.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
2013-04-17 10:55:30 +02:00
Carl Eugen Hoyos
fe1de12faf Remove two anonymous arrays.
Fixes compilation of pngenc.c and flvdec.c with PGC 13.4-0.
2013-04-17 00:37:05 +02:00
Carl Eugen Hoyos
9802f56684 ass_split: Do not use the function name as a parameter name in a declaration.
Fixes compilation of srtenc.o with PGC 13.4-0.
2013-04-17 00:35:00 +02:00
Paul B Mahol
c1fe41ed47 libaacpluc: remove unused code
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 21:13:51 +00:00
Paul B Mahol
9429408cc1 sgirledec: remove unused headers
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 20:46:45 +00:00
Paul B Mahol
b05d8d4cf4 lavc: avcodec_open2(): pass context to av_log()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 20:46:34 +00:00
Michael Niedermayer
bec402b502 mjpegdec: fix overlapping memcpy with upscale_v
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 20:15:24 +02:00
Paul B Mahol
6575539176 libaacplus: support for float sample format
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 16:14:05 +00:00
Michael Niedermayer
6b657ac788 avcodec/c93: Check for block overlap.
Fixes overlapping memcpy()

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 17:04:16 +02:00
Paul B Mahol
0b06bd1c7a libaacplus: set supported profiles
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 10:20:17 +00:00
Paul B Mahol
82082695de libaacplus: set supported channel_layouts
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 10:20:17 +00:00
Paul B Mahol
97b2865aa2 libaacplus: remove FF_API_OLD_ENCODE_AUDIO cruft
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-16 08:44:56 +00:00
Michael Niedermayer
d98c3adef2 Merge commit '015821229f96bf7e677f2a711a58dbea3009f574'
* commit '015821229f96bf7e677f2a711a58dbea3009f574':
  vp3: Use full transpose for all IDCTs

Conflicts:
	libavcodec/vp3.c
	libavcodec/vp3dsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 00:56:15 +02:00
Michael Niedermayer
05bea44393 Merge commit '5941978e71d2c3a8e2a7e87951e081e0b2e77da9'
* commit '5941978e71d2c3a8e2a7e87951e081e0b2e77da9':
  vp3: bfin: Transpose the IDCTs

Conflicts:
	libavcodec/bfin/vp3_bfin.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 00:50:33 +02:00
Michael Niedermayer
d5c31403aa Merge commit 'c46819f2299c73cd1bfa8ef04d08b0153a5699d3'
* commit 'c46819f2299c73cd1bfa8ef04d08b0153a5699d3':
  x86: Move constants to the only place where they are used

Conflicts:
	libavcodec/x86/vp3dsp.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-16 00:44:20 +02:00
Michael Niedermayer
1557f34b10 dfa: support decoding version=1.0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-15 12:13:41 +02:00
Ronald S. Bultje
015821229f vp3: Use full transpose for all IDCTs
This way, the special IDCT permutations are no longer needed. This
is similar to how H264 does it, and removes the dsputil dependency
imposed by the scantable code.

Also remove the unused type == 0 cases from the plain C version
of the idct.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:32:05 +03:00
Martin Storsjö
5941978e71 vp3: bfin: Transpose the IDCTs
While this change isn't bitexact, the IDCTs weren't bitexact to
start with either.

This simplifies decoupling vp3 from dsputil.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:31:52 +03:00
Ronald S. Bultje
c46819f229 x86: Move constants to the only place where they are used
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:17:39 +03:00
Martin Storsjö
c0dcf89887 bfin: Match DEFUN_END macros to the right functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-15 12:13:26 +03:00
Reimar Döffinger
c10d498bfd Add thread-safe wrapper for get_format().
Just like get_buffer, get_format should not be called from a different
thread if thread_safe_callbacks is not set.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-04-15 09:04:07 +02:00
Reimar Döffinger
8067f55edf Fix compilation on ARM with android gcc 4.7
With the current code it fails due to running out
of registers.
So code the store offsets manually into the assembler
instead.
Passes "make fate-dts".

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2013-04-15 09:04:07 +02:00
Clément Bœsch
1e3104cd3c Add avpriv_dsputil_init() and use it in lavfi where relevant.
dsputil_init() is deprecated and not meant to be exported.
ff_dsputil_init() is internal to libavcodec and thus can not be used.
avpriv_dsputil_init() is the version shared between libraries.

This commit fixes 3 unjustified libavfilter deprecated warnings.
2013-04-14 20:15:54 +02:00
Michael Niedermayer
ded2f187a2 avcodec: fix ignorecrop AVOption offset
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-13 20:17:37 +02:00
Michael Niedermayer
34b78ad04f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Move some ifdefs to avoid unused variable warnings

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 23:38:41 +02:00
Michael Niedermayer
ed3680bc9b Merge commit '2004c7c8f763280ff3ba675ea21cf25396528fd3'
* commit '2004c7c8f763280ff3ba675ea21cf25396528fd3':
  x86: dsputil: cosmetics: Remove two pointless variable indirections

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 23:28:23 +02:00
Michael Niedermayer
694fa0035a Merge commit 'c51a3a5bd9a5b404176ff343ecadb80b2553b256'
* commit 'c51a3a5bd9a5b404176ff343ecadb80b2553b256':
  x86: dsputil: Refactor some ff_{avg|put}_pixels function declarations

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:36:31 +02:00
Michael Niedermayer
43bf4ee9a9 Merge commit 'e027032fc6a49db5a4ce12fc3e09ffb86ff20522'
* commit 'e027032fc6a49db5a4ce12fc3e09ffb86ff20522':
  x86: dsputil: ff_h263_*_loop_filter declarations to a more suitable place

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:29:30 +02:00
Michael Niedermayer
52bda1d903 Merge commit 'a89c05500f68d94a0269e68bc522abfd420c5497'
* commit 'a89c05500f68d94a0269e68bc522abfd420c5497':
  x86: h264qpel: int --> ptrdiff_t for some line_size parameters

Conflicts:
	libavcodec/x86/qpelbase.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-12 22:22:27 +02:00
Diego Biurrun
a3cb865310 x86: dsputil: Move some ifdefs to avoid unused variable warnings 2013-04-12 09:36:47 +02:00
Diego Biurrun
2004c7c8f7 x86: dsputil: cosmetics: Remove two pointless variable indirections 2013-04-12 09:36:47 +02:00
Diego Biurrun
c51a3a5bd9 x86: dsputil: Refactor some ff_{avg|put}_pixels function declarations 2013-04-12 09:36:46 +02:00
Diego Biurrun
e027032fc6 x86: dsputil: ff_h263_*_loop_filter declarations to a more suitable place 2013-04-12 09:36:46 +02:00
Diego Biurrun
a89c05500f x86: h264qpel: int --> ptrdiff_t for some line_size parameters 2013-04-12 09:30:12 +02:00
Michael Niedermayer
b3c3996212 avcodec: rename prores encoders
Using the first names of authors sounds somewhat unprofessional
and might be considered offensive which is not intended.
The new names use the initials of the authors due to simplicity
and the possibility to apply it consistently without the need
to find political correct names for each future case where
alternative codecs might exist. Also its shorter ...

If someone has a better idea, like maybe 2 random letters
and people prefer it then iam happy to switch to that ...

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 23:13:34 +02:00
Paul B Mahol
d185343687 libshine fixed point MP3 encoding support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-11 14:27:59 +00:00
Michael Niedermayer
580a0600ef Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Move misplaced file author information where it belongs

Conflicts:
	libavcodec/adpcm.c
	libavcodec/adpcmenc.c
	libavcodec/gif.c
	libavcodec/x86/dsputilenc_mmx.c
	libavcodec/x86/fmtconvert_init.c
	libavformat/au.c
	libavformat/gif.c
	libavformat/mov.c
	libavformat/nsvdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 15:56:18 +02:00
Michael Niedermayer
cf7d3846fc Merge commit '9de9b828ef005dec37052548c195a6b4f18fc701'
* commit '9de9b828ef005dec37052548c195a6b4f18fc701':
  lavc: don't overwrite display dimensions with coded dimensions.
  lavc: extend / update the [coded_]{width,height} doxy

Conflicts:
	libavcodec/avcodec.h
	libavcodec/utils.c

The change to the w/h handling is not merged as it breaks lowres

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 15:42:32 +02:00
Michael Niedermayer
5ec016ad0b Merge commit '20429ba96e55db17ac57f6c0e330914287f1f614'
* commit '20429ba96e55db17ac57f6c0e330914287f1f614':
  h261: Move encoder/decoder shared table init to common code

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 14:48:27 +02:00
Michael Niedermayer
567616c1b3 Merge commit '8a776ad90e00ab2b98e8683ac6182d641a383c3a'
* commit '8a776ad90e00ab2b98e8683ac6182d641a383c3a':
  h261: Move shared data tables from a header to a proper C file

Conflicts:
	libavcodec/Makefile
	libavcodec/h261data.c
	libavcodec/h261dec.c
	libavcodec/h261enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 14:25:38 +02:00
Paul B Mahol
310bf28354 mss4: make code independent of sizeof(AVFrame)
Also fixes #2455.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-11 10:40:15 +00:00
Paul B Mahol
b6d5a948f9 mss4: use init_get_bits8()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-11 10:40:15 +00:00
Michael Niedermayer
742c392885 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dsputil: Make dsputil selectable

Conflicts:
	configure
	libavcodec/Makefile
	libavcodec/x86/Makefile
	libavcodec/x86/constants.c
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/dsputil_mmx.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 12:32:29 +02:00
Michael Niedermayer
65120f628c Merge commit '85deb51a01f1ecc5ac5faa52ad8ea141c384e23a'
* commit '85deb51a01f1ecc5ac5faa52ad8ea141c384e23a':
  h264: Only initialize dsputil if error resilience is enabled

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 12:00:05 +02:00
Michael Niedermayer
0724b4a16d Merge commit '62844c3fd66940c7747e9b2bb7804e265319f43f'
* commit '62844c3fd66940c7747e9b2bb7804e265319f43f':
  h264: Integrate clear_blocks calls with IDCT

Conflicts:
	libavcodec/arm/h264idct_neon.S
	libavcodec/h264idct_template.c
	libavcodec/x86/h264_idct.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 11:53:19 +02:00
Michael Niedermayer
944ad46182 Merge commit 'e8cafd2773bc56455c8816593cbd9368f2d69a80'
* commit 'e8cafd2773bc56455c8816593cbd9368f2d69a80':
  h264: Clear the mb members via memset instead of using dsputil

Conflicts:
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 11:40:05 +02:00
Michael Niedermayer
3bc3c78a59 Merge commit '6d25c9db11e87ec58652de6588448225137b0c57'
* commit '6d25c9db11e87ec58652de6588448225137b0c57':
  dsputil: Make square put/avg_pixels functions local to h264qpel

Conflicts:
	libavcodec/dsputil.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-11 11:26:43 +02:00
Diego Biurrun
ac9362c5d9 Move misplaced file author information where it belongs 2013-04-11 02:42:11 +02:00
Anton Khirnov
9de9b828ef lavc: don't overwrite display dimensions with coded dimensions. 2013-04-10 20:54:27 +02:00
Anton Khirnov
2d6edb2b7e lavc: extend / update the [coded_]{width,height} doxy 2013-04-10 20:54:22 +02:00
Diego Biurrun
20429ba96e h261: Move encoder/decoder shared table init to common code 2013-04-10 13:32:04 +02:00
Diego Biurrun
8a776ad90e h261: Move shared data tables from a header to a proper C file 2013-04-10 13:32:04 +02:00
Michael Niedermayer
0594ef0dea Merge commit 'b439c992c23f3e0f3832fffd2a34a664b236c525'
* commit 'b439c992c23f3e0f3832fffd2a34a664b236c525':
  lavfi: switch to an AVOptions-based system.
  dfa: implement missing TDLT coding method

Conflicts:
	libavcodec/dfa.c
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-10 12:41:06 +02:00
Ronald S. Bultje
b93b27edb0 dsputil: Make dsputil selectable
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:04:05 +03:00
Ronald S. Bultje
85deb51a01 h264: Only initialize dsputil if error resilience is enabled
It is only used for error resilience. This allows building the
h264 decoder without dsputil, if error resilience is disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:03:53 +03:00
Ronald S. Bultje
62844c3fd6 h264: Integrate clear_blocks calls with IDCT
The non-intra-pcm branch in hl_decode_mb (simple, 8bpp) goes from 700
to 672 cycles, and the complete loop of decode_mb_cabac and hl_decode_mb
(in the decode_slice loop) goes from 1759 to 1733 cycles on the clip
tested (cathedral), i.e. almost 30 cycles per mb faster.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:03:06 +03:00
Martin Storsjö
e8cafd2773 h264: Clear the mb members via memset instead of using dsputil
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 11:01:21 +03:00
Ronald S. Bultje
6d25c9db11 dsputil: Make square put/avg_pixels functions local to h264qpel
Put a copy of the 8bit functions only in dsputil, where they are
used for some other things (e.g. mpeg4qpel, mspel, cavsqpel).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-10 10:59:14 +03:00
Christophe Gisquet
2383068cbf x86: sbrdsp: implement SSE2 qmf_pre_shuffle
From 253 to 51 cycles on Arrandale and Win64.
44 cycles on SandyBridge.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-10 02:42:22 +02:00
Michael Niedermayer
62a1181015 h264: wait for missing slices only on frames
The EC code does not support fields currently thus it makes no
sense to wait for these cases (which also the check doesnt handle
correctly)

Fixes Ticket 2454

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-09 23:12:24 +02:00
Clément Bœsch
1043cb8e80 lavc/ass: use bprint API in ff_ass_add_rect(). 2013-04-09 21:43:44 +02:00
Kostya Shishkov
56c1b92576 dfa: implement missing TDLT coding method 2013-04-09 18:32:00 +02:00
Michael Niedermayer
b4eb06d325 msmpeg4: ignore negative DC overflow
Fixes second half of Ticket2414

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-09 16:27:49 +02:00
Michael Niedermayer
c03dc44070 msmpeg4: fix asm code in ff_msmpeg4_pred_dc()
Fixes first half of Ticket2414

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-09 16:26:52 +02:00
Martin Storsjö
bc0522dffa h264pred: Add a few missing const declarations for ff_cropTbl derived pointers
The pointers that get assigned ff_cropTbl were made const in
9e0f14f1, but other variables that transitively are assigned
based on these variables were missed.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 21:39:15 +03:00
Michael Niedermayer
0138fe5656 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables

Conflicts:
	libavcodec/mathtables.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 12:54:18 +02:00
Michael Niedermayer
024a5f72ee Merge commit '9e0f14f16cfc9456a691655fda7d01090bffe47e'
* commit '9e0f14f16cfc9456a691655fda7d01090bffe47e':
  lavc: Make pointers to ff_cropTbl const
  vp3: Embed idct_permutation array directly in VP3DecoderContext

Conflicts:
	libavcodec/bit_depth_template.c
	libavcodec/vp3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 12:47:49 +02:00
Michael Niedermayer
5f49e92eb9 Merge commit '610b18e2e3d8ef5eca3e78f33a0625689b8d2bb9'
* commit '610b18e2e3d8ef5eca3e78f33a0625689b8d2bb9':
  x86: qpel: Move fullpel and l2 functions to a separate file
  bfin: Make vp3 functions static

Conflicts:
	libavcodec/bfin/vp3_bfin.c
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 12:40:26 +02:00
Michael Niedermayer
1090f69386 Merge commit 'aa8d89536d35af0a0c8d8bac2b452ffe7b82cae5'
* commit 'aa8d89536d35af0a0c8d8bac2b452ffe7b82cae5':
  bfin: Don't use the vp3 idct functions if bitexact behaviour is expected

Conflicts:
	libavcodec/bfin/vp3_bfin.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 12:18:29 +02:00
Ronald S. Bultje
d2ec6ea6c6 lavc: Move ff_cropTbl and ff_zigzag_direct from dsputil to mathtables
These are widely used throughout libavcodec, nothing dsputil-specific.

Change ff_cropTbl to a statically initialized table, to avoid
initializing it with a function call.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:38:33 +03:00
Martin Storsjö
9e0f14f16c lavc: Make pointers to ff_cropTbl const
There's no point in these pointers not being const.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:38:33 +03:00
Ronald S. Bultje
610b18e2e3 x86: qpel: Move fullpel and l2 functions to a separate file
This way, they can be shared between mpeg4qpel and h264qpel without
requiring either one to be compiled unconditionally.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:38:33 +03:00
Ronald S. Bultje
18df366a18 vp3: Embed idct_permutation array directly in VP3DecoderContext
This makes the vp3 decoder less dependent on dsputil, and will aid
in making it (eventually) dsputil-independent.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:38:33 +03:00
Martin Storsjö
0f59845708 bfin: Make vp3 functions static
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:29:40 +03:00
Martin Storsjö
aa8d89536d bfin: Don't use the vp3 idct functions if bitexact behaviour is expected
In the non-bitexact mode, vp3 currently decodes to the same
frame crcs as before 28f9ab702 (and the output visually looks
correct).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-04-08 12:28:52 +03:00
Christophe Gisquet
e2946e5c34 x86: sbrdsp: implement SSE qmf_deint_bfly
From 312 to 89/68 (sse/sse2) cycles on Arrandale and Win64.
Sandybridge: 68/47 cycles.

Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-08 02:26:34 +02:00
Paul B Mahol
1adf54de56 dfa: implement tdlt chunk decoding
Sample & pseudo code provided by Vladimir "VAG" Gneushev.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-07 21:48:22 +00:00
Michael Niedermayer
2f284c0170 dpxdec: Fix decoding of RGBA10
Fixes Ticket2392

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-07 21:39:51 +02:00
Nicolas George
0884d04dc3 lavc: fix recoded subtitles end.
Text subtitles packets are not 0-terminated (and if they are,
it is handled by the recoding process since 0 is a valid
Unicode code point). The terminating 0 would overwrite the
last payload octet.

OTOH, packets must be 0-padded.

Fix a problem reported in trac ticket #2431.
2013-04-07 13:25:24 +02:00
Christophe Gisquet
11774169ae sbrdsp: unroll and use integer operations
This patch can be controversial, by assuming floats are IEEE-754 and
particular behaviour of the FPU will get in the way.
Timing on Arrandale and Win32 (thus, x87 FPU is used in the reference).

sbr_qmf_pre_shuffle_c: 115 to 76
sbr_neg_odd_64_c: 84 to 55
sbr_qmf_post_shuffle_c: 112 to 83

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 15:52:42 +02:00
Christophe Gisquet
f4ac80227b sbrdsp: unroll sbr_autocorrelate_c
1410 cycles to 1148 on Arrandale/Win64.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 15:52:42 +02:00
Michael Niedermayer
32bac65ba0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: sbrdsp: Implement SSE neg_odd_64

Conflicts:
	libavcodec/x86/sbrdsp.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-06 13:30:19 +02:00
Christophe Gisquet
f4b0d12f5b x86: sbrdsp: Implement SSE neg_odd_64
Timing on Arrandale:
        C   SSE
Win32:  57   44
Win64:  47   38
Unrolling and not storing mask both save some cycles.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-05 22:47:04 +02:00
Michael Niedermayer
37f080f6f6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h261: Move mvmap table to the only place it is used

Conflicts:
	libavcodec/h261data.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 22:09:10 +02:00
Michael Niedermayer
473d129742 Merge commit '0404ec619d43f27b87c424aa1a572a6699fe6a31'
* commit '0404ec619d43f27b87c424aa1a572a6699fe6a31':
  h261: cosmetics: Move functions to avoid forward declarations

Conflicts:
	libavcodec/h261dec.c
	libavcodec/h261enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 22:00:38 +02:00
Michael Niedermayer
04b0fd7e91 Merge commit 'b78f81c8033904e2e75add0c9a603df6df514a30'
* commit 'b78f81c8033904e2e75add0c9a603df6df514a30':
  h261: K&R formatting and prettyprinting cosmetics

Conflicts:
	libavcodec/h261_parser.c
	libavcodec/h261data.h
	libavcodec/h261dec.c
	libavcodec/h261enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 21:53:57 +02:00
Michael Niedermayer
e7c801d9d3 Merge commit '66ac3dbf1e60c27d0f1d779a424c0b33b7ca3780'
* commit '66ac3dbf1e60c27d0f1d779a424c0b33b7ca3780':
  h261: Move function declarations to h261.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 21:31:14 +02:00
Michael Niedermayer
3d73be071d Merge commit 'ed16c2dbf47cdd7c48825b4da6e7036698e5dde1'
* commit 'ed16c2dbf47cdd7c48825b4da6e7036698e5dde1':
  h261: Remove H.261 loop filter from dsputil

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 21:25:49 +02:00
Michael Niedermayer
fa871b1bde Merge commit 'ae35d91d44c5e676af3d146bf8d05b241c467675'
* commit 'ae35d91d44c5e676af3d146bf8d05b241c467675':
  h261: Move ff_h261_rl_table_store declaration to header file

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 21:09:04 +02:00
Christophe Gisquet
37a9708391 x86: sbrdsp: implement SSE neg_odd_64
Timing on Arrandale:
        C   SSE
Win32:  57   44
Win64:  47   38
Unrolling and not storing mask both save some cycles.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 16:42:12 +02:00
Michael Niedermayer
29a4221ad3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: Add support for XYZ colorspace, found in DCINEMA frames

Conflicts:
	libavcodec/libopenjpegdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-05 12:52:23 +02:00
Diego Biurrun
52cd84d4d4 h261: Move mvmap table to the only place it is used 2013-04-05 12:25:12 +02:00
Diego Biurrun
0404ec619d h261: cosmetics: Move functions to avoid forward declarations 2013-04-05 12:25:12 +02:00
Diego Biurrun
b78f81c803 h261: K&R formatting and prettyprinting cosmetics 2013-04-05 12:25:12 +02:00
Diego Biurrun
66ac3dbf1e h261: Move function declarations to h261.h 2013-04-05 12:25:12 +02:00
Diego Biurrun
ed16c2dbf4 h261: Remove H.261 loop filter from dsputil
There is no arch-optimized version of the H.261 loop filter and there
likely will never be, so the dsputil overhead does not give any benefit.
2013-04-05 12:24:28 +02:00
Diego Biurrun
ae35d91d44 h261: Move ff_h261_rl_table_store declaration to header file 2013-04-05 12:24:28 +02:00
Paul B Mahol
faf689c7eb xbmenc: remove unused code
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 22:43:26 +00:00
Paul B Mahol
08b31a72db xwdenc: remove unused code
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 22:43:25 +00:00
Paul B Mahol
77535bb3c3 bmpenc: get rid of BMPContext as it is unused
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-04 22:43:25 +00:00
Michael Niedermayer
0a512e347f Merge remote-tracking branch 'cigaes/master'
* cigaes/master:
  lavc: use packet duration for subtitles if necessary.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 21:19:45 +02:00
Nicolas Bertrand
28a807e28b libopenjpeg: Add support for XYZ colorspace, found in DCINEMA frames
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-04-04 19:53:07 +02:00
Michael Niedermayer
740ebe468c dfa: remove redundant check
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 14:49:00 +02:00
Michael Niedermayer
208be6b54a Merge commit 'd1016dccdcb10486245e5d7c186cc31af54b2a9c'
* commit 'd1016dccdcb10486245e5d7c186cc31af54b2a9c':
  xmv: check audio track parameters validity.
  bmv: check for len being valid in bmv_decode_frame().

Conflicts:
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 14:20:51 +02:00
Nicolas George
83affcde51 lavc: use packet duration for subtitles if necessary.
Fix trac ticket #2397.
2013-04-04 14:04:51 +02:00
Michael Niedermayer
cdafcf838c Merge commit '8d617b11cfc87b2c6056fee029ac5bc760af874a'
* commit '8d617b11cfc87b2c6056fee029ac5bc760af874a':
  id3v2: pad the APIC packets as required by lavc.
  dfa: check for invalid access in decode_wdlt().

Conflicts:
	libavformat/id3v2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-04 13:41:01 +02:00
Anton Khirnov
b88f902125 bmv: check for len being valid in bmv_decode_frame().
It can be 0 or -1 for invalid files, which may result in invalid memory
access.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-04-04 07:54:27 +02:00
Anton Khirnov
3623589edc dfa: check for invalid access in decode_wdlt().
This can happen when the number of skipped lines is not consistent with
the number of coded lines.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-04-04 07:54:07 +02:00
Peter Meerwald
dfcbe8cbd7 doc: Fix best_nb_channells typo
Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-04-04 07:51:28 +02:00
Nicolas George
464f94b206 lavc: do not init frame with guessed layout.
It is breaking support from files with unknown layout.
2013-04-03 17:44:10 +02:00
Michael Niedermayer
aa7d9809c1 h264pred: fix "warning: initialization discards const qualifier from pointer target type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-03 03:14:09 +02:00
Michael Niedermayer
c09da45ffb dsputil: Fix "warning: initialization discards const qualifier from pointer target type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-02 14:52:18 +02:00
Paul B Mahol
1de11a7cab libmp3lame: allow joint stereo to be disabled
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-04-02 12:14:14 +00:00
Michael Niedermayer
4dd31f88f5 cavs: fix "warning: initialization discards const qualifier from pointer target type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-02 05:12:10 +02:00
Michael Niedermayer
4394528d2d cavsdsp: fix "warning: initialization discards const qualifier from pointer target type"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-01 20:47:48 +02:00
Michael Niedermayer
ac126a98e5 dvdec: fix lowres=3 with yuv 4:1:1
Fixes Ticket2390

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-31 20:37:49 +02:00
Michael Niedermayer
34ea5f418e h264_refs: check for multiple mismatching long term ref assignments
Fixes failure of the assert added a few hours ago.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-31 00:18:23 +01:00
Michael Niedermayer
3d68f5e032 h264_direct: assert the validity of the spatial ref
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 21:13:19 +01:00
Michael Niedermayer
285c5f6838 h264: move last_slice_type reset into decode_slice_header
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 20:57:31 +01:00
Michael Niedermayer
11c3381ce3 h264: move the default_ref_list_done check down after its inputs have been written
Fixes out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 20:28:00 +01:00
Michael Niedermayer
3f2ce24f59 h264_refs: assert that the references are not deallocated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 20:28:00 +01:00
Michael Niedermayer
fbb6741a84 h264_refs: assert that long ref fields have not been inserted multiple times
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 20:28:00 +01:00
Michael Niedermayer
746016598d h264: Move slice_table clean out of frame_start
Fixes inconsistency ultimately leading to an out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-30 20:28:00 +01:00
Matt Wolenetz
1d6e618939 vp8: Fix pthread_cond and pthread_mutex leaks
CC: libav-stable@libav.org

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-03-30 16:08:50 +01:00
Paul B Mahol
95c7cad70c lavc: remove empty function
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-30 03:23:02 +00:00
Stefano Sabatini
37fce84e27 lavc/libtheoraenc: clarify comment about global_quality to quality conversion 2013-03-30 16:58:40 +01:00
Carl Eugen Hoyos
670bb1c979 Fix compilation with --enable-decoder=webp --disable-decoder=vp8 2013-03-30 08:25:44 +01:00
Matt Wolenetz
65340c976c Fix pthread_cond and pthread_mutex leaks in vp8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 21:36:04 +01:00
Paul B Mahol
1c11ab82d6 paf_video: make code independent of sizeof(AVFrame)
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-29 20:19:10 +00:00
Michael Niedermayer
66e9716a36 aacps: correct opdipd code to match spec
This fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 21:03:59 +01:00
Paul B Mahol
a345b7f906 vmdav: use more unchecked bytestream2 variants where it makes sense
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-29 19:48:45 +00:00
Paul B Mahol
67f9bbbb3f noise_bsf: check if allocation failed
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-29 19:00:16 +00:00
Paul B Mahol
8263726c69 lavc: fix typo
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-03-29 18:59:56 +00:00
Xidorn Quan
c7269e3a26 vda_h264_dec: fit the new API
It fixes a memory leak in this decoder caused by the API change.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 17:55:48 +01:00
Michael Niedermayer
aa28c42534 mjpegdec: check buffer before using it
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 05:00:15 +01:00
Michael Niedermayer
6ae03353de mpegvideo: Make the table reallocation more robust.
This fixes out of array writes after resolution changes
No FFmpeg releases are known to be affected by this

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-29 02:11:34 +01:00
Michael Niedermayer
3969b4b861 gmc: Always use edge emu
The gmc functions access more pixels than there is allocated memory.
Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 22:24:33 +01:00
Michael Niedermayer
8fc52a5ef9 wmv2: drop non emu edge mode
slightly (~ 0.5%) faster, tested with time ./ffmpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 21:59:23 +01:00
Michael Niedermayer
76e6b1eba1 wmv2: Use emu edge mode when the edge is too small
Fixes out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 21:50:53 +01:00
Michael Niedermayer
92002db3eb h264_refs: Check for attempts to assign pictures to short & long.
Fixes null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 21:09:47 +01:00
Michael Niedermayer
37bdf33cff Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vmdav: convert to bytestream2
  FATE: add a test for the join filter
  FATE: add a test for the volume filter

Conflicts:
	libavcodec/vmdav.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 15:02:49 +01:00
Michael Niedermayer
2b6185cac9 Merge commit 'b4d24b471bc52f1f78a43ee330199e70483e51c3'
* commit 'b4d24b471bc52f1f78a43ee330199e70483e51c3':
  build: Remove configure-generated .config file on distclean
  msmpeg4: Split decoding related functions to a separate file

Conflicts:
	Makefile
	libavcodec/Makefile
	libavcodec/msmpeg4.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 12:07:38 +01:00
Michael Niedermayer
2bfcd74ad3 Merge commit 'e557584aa7df6ac9f52af7ee7e5c963437da2e2f'
* commit 'e557584aa7df6ac9f52af7ee7e5c963437da2e2f':
  mpeg12: Move Mpeg1Context declaration to the only place it is used

Conflicts:
	libavcodec/mpeg12.h
	libavcodec/mpeg12dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:56:05 +01:00
Michael Niedermayer
016c00cf68 Merge commit '1b6d66745ac1768adb387c2227cdcf4452271149'
* commit '1b6d66745ac1768adb387c2227cdcf4452271149':
  Split MPEG-1/2 decoder code off from MPEG-1/2 common code

Conflicts:
	libavcodec/Makefile
	libavcodec/mpeg12.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:45:50 +01:00
Michael Niedermayer
385ffc7650 Merge commit 'eee2000b41234ae9465c314e18bfec1700181f32'
* commit 'eee2000b41234ae9465c314e18bfec1700181f32':
  mpeg12: Move some ff_mpeg1_* function declarations to a more suitable place

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:30:29 +01:00
Michael Niedermayer
63a97d5674 Merge commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa'
* commit 'b6649ab5037fb55f78c2606f3d23cea0867cdeaa':
  cosmetics: Remove unnecessary extern keywords from function declarations

Conflicts:
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:20:41 +01:00
Michael Niedermayer
b1064dd783 Merge commit '1db6a080bddd14fed6b29140ecd2e21e42b1c022'
* commit '1db6a080bddd14fed6b29140ecd2e21e42b1c022':
  dca: Move ff_dca_convert_bitstream() to the DCA common code
  vdpau: wrap codec specific functions in appropiate #ifs

Conflicts:
	libavcodec/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 11:18:23 +01:00
Alexandra Khirnova
0afcf97e1e vmdav: convert to bytestream2
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-03-28 08:30:38 +01:00
Michael Niedermayer
e234daa518 mlpdec: Fix reading state with 0 bit elements.
This fixes an assertion failure

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 04:01:34 +01:00
Michael Niedermayer
10ece44d09 h264_cavlc: fix assertion failure due to reading too long vlc
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 04:01:34 +01:00
Michael Niedermayer
a56d963f11 vp3: Check fps validity more completely
Fix assertion failure

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 00:56:12 +01:00
Michael Niedermayer
c6831e2a70 wavpack: check K, fix assertion failure
Instead of this it would be possible to change the code to support
larger K but that would make the code slower and probably still need
checks on K.
This variant is choosen as there are no known valid files that need
larger K

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-28 00:54:45 +01:00
Michael Niedermayer
e9d3b40052 snow: drop commented out asserts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 23:06:29 +01:00
Martin Storsjö
3891a270f5 msmpeg4: Split decoding related functions to a separate file
This fixes standalone compilation of the msmpeg4v2, msmpeg4v3
and wmv2 encoders, that previously failed to link due to the
decoder codepaths requiring error_resilience.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-27 15:45:56 +02:00
Diego Biurrun
e557584aa7 mpeg12: Move Mpeg1Context declaration to the only place it is used 2013-03-27 14:26:11 +01:00
Diego Biurrun
1b6d66745a Split MPEG-1/2 decoder code off from MPEG-1/2 common code 2013-03-27 14:26:11 +01:00
Diego Biurrun
eee2000b41 mpeg12: Move some ff_mpeg1_* function declarations to a more suitable place 2013-03-27 14:21:45 +01:00
Diego Biurrun
b6649ab503 cosmetics: Remove unnecessary extern keywords from function declarations 2013-03-27 14:21:45 +01:00
Diego Biurrun
1db6a080bd dca: Move ff_dca_convert_bitstream() to the DCA common code
This makes the DCA parser and decoder independent.
2013-03-27 14:21:45 +01:00
Janne Grunau
b247253929 vdpau: wrap codec specific functions in appropiate #ifs
Fixes linking when only a subset of the deprecated vdpau decoders is
enabled.
2013-03-27 13:20:13 +01:00
Michael Niedermayer
ace0cfea60 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  hwaccel: fix use with frame based multithreading

Conflicts:
	libavcodec/h263dec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 11:51:33 +01:00
Michael Niedermayer
12f203a098 Merge commit 'c24469e812501903a46a06eff9722a82e136e841'
* commit 'c24469e812501903a46a06eff9722a82e136e841':
  utils: add workaround for AVHWAccel in ff_get_buffer compat code
  configure: Remove a stray msmpeg4v1 encoder declaration

Conflicts:
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 11:42:15 +01:00
Michael Niedermayer
ef8ab2f953 Merge commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d'
* commit '3b2d0ec473b036bdd0a5bc0d896fd5292915f44d':
  configure: Remove the mpegvideo dependency from svq1
  x86: vc1dsp: Fix indentation

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-27 11:32:45 +01:00
Janne Grunau
757d85868b vdpau: fix obsolete mpeg1 vdpau decoder when mpeg2 is disabled 2013-03-26 22:53:29 +01:00
Michael Niedermayer
46c48d546d mpegvideo: fix null pointer dereference on switching streams
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 21:54:36 +01:00
Janne Grunau
05fa79b844 hwaccel: fix use with frame based multithreading
Allows use of AVHWAccel based decoders with frame based multithreading.
The decoders will be forced into an non-concurrent mode by delaying
ff_thread_finish_setup() calls after decoding of the current frame
is finished.

This wastes memory by unnecessarily using multiple threads and thus
copies of the decoder context but allows seamless switching between
hardware accelerated and frame threaded software decoding when the
hardware decoder does not support the stream.
2013-03-26 19:44:50 +01:00
Janne Grunau
c24469e812 utils: add workaround for AVHWAccel in ff_get_buffer compat code
Since c977039e58 plane count for
PIX_FMT_HWACCEL pixel formats is 0 instead of 1. The created dummy
AVBuffers are still bogus since AVFrame does not hold frame data when
AVHWAccels are used.
2013-03-26 19:44:50 +01:00
Michael Niedermayer
7b3ca7ae8b mpegvideo/h264: drop period_since_free
This should not be needed anymore

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 19:27:32 +01:00
Martin Storsjö
a2acadd058 x86: vc1dsp: Fix indentation
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 15:49:42 +02:00
Michael Niedermayer
365ad0042a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h264: Make it possible to compile without error_resilience

Conflicts:
	configure
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 14:36:00 +01:00
Michael Niedermayer
b19604cc4b Merge commit 'f1e9398621af0bc9d166014e4ce6996bb4f141d0'
* commit 'f1e9398621af0bc9d166014e4ce6996bb4f141d0':
  lavc: Rename avpriv_mpv_find_start_code after moving out from mpegvideo

Conflicts:
	libavcodec/h264_parser.c
	libavcodec/internal.h
	libavcodec/mpeg12.c
	libavcodec/utils.c
	libavformat/mpegtsenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:44:09 +01:00
Michael Niedermayer
2cdedcbcea Merge commit '75644335b907919057960716508477239c26fed4'
* commit '75644335b907919057960716508477239c26fed4':
  lavc: Move start code finding to utils.c

Conflicts:
	configure
	libavcodec/mpegvideo.c
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:22:48 +01:00
Michael Niedermayer
795b911bd8 Merge commit '613a37eca4c7b8eefceaa3e0231c23ad090ca94f'
* commit '613a37eca4c7b8eefceaa3e0231c23ad090ca94f':
  ape: 3.80-3.92 decoding support
  h264: Remove an unused variable

Conflicts:
	libavcodec/apedec.c
	libavformat/ape.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:14:16 +01:00
Michael Niedermayer
9b9205e760 x86/dsputil.asm: make unaligned bswap actually work
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:07:46 +01:00
Michael Niedermayer
cb69a9dbf4 Merge commit 'e5c2794a7162e485eefd3133af5b98fd31386aeb'
* commit 'e5c2794a7162e485eefd3133af5b98fd31386aeb':
  x86: consistently use unaligned movs in the unaligned bswap

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 13:07:37 +01:00
Ronald S. Bultje
0b499c9b06 h264: Make it possible to compile without error_resilience
Error resilience is enabled by the h264 decoder, unless explicitly
disabled. --disable-everything --enable-decoder=h264 will produce
a h264 decoder with error resilience enabled, while
--disable-everything --enable-decoder=h264 --disable-error-resilience
will produce a h264 decoder with error resilience disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:55:05 +02:00
Martin Storsjö
f1e9398621 lavc: Rename avpriv_mpv_find_start_code after moving out from mpegvideo
Also move the declaration to internal.h, and add restrict qualifiers
to the declaration (as in the implementation).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:50:02 +02:00
Martin Storsjö
75644335b9 lavc: Move start code finding to utils.c
This allows dropping the mpegvideo dependency from a number of
components.

This also fixes standalone building of the h264 parser, which
was broken in 64e438697.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-26 09:48:12 +02:00
Michael Niedermayer
ea7b96af96 avcodec/x86/dsputil_qns_template: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-26 04:08:28 +01:00
Kostya Shishkov
613a37eca4 ape: 3.80-3.92 decoding support 2013-03-25 18:40:56 +01:00
Michael Niedermayer
67607e20e8 xxan: make code independent of sizeof(AVFrame)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 17:35:58 +01:00
Michael Niedermayer
8097e5b212 yop: Fix return type
Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 15:14:20 +01:00
Martin Storsjö
ccd349e555 h264: Remove an unused variable
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-03-25 15:00:05 +02:00
Michael Niedermayer
afdfff485b avcodec/gifdec: Add av_log() to workaround gcc 4.2 miscompiling the code
It appears gcc forgets to increment the byte stream pointer at -O3
I was not able to spot a reason/excuse for it to do that. It
also disappears if the function isnt inlined.

This should fix the gif fate failures on open & free bsd

See: [FFmpeg-devel] [PATCH] gifdec: workaround old gcc 4.2 mis-compiling code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 13:32:45 +01:00
Michael Niedermayer
ad438f450b xan: make decoder independent of sizeof(AVFrame)
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 13:30:30 +01:00
James Almer
45013b365e lavc/flacdec: Propagate and return meaningful error codes
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 13:16:33 +01:00
Janne Grunau
e5c2794a71 x86: consistently use unaligned movs in the unaligned bswap
Fixes fate errors in asv1, ffvhuff and huffyuv on x86_32.
2013-03-25 12:11:11 +01:00
Michael Niedermayer
01df2a13c3 avcodec/utils: initialize pixel buffer pool
This should silence many valgrind warnings about use of uninitialized
data, all the warnings i looked at where false positives having their
uninitialized data not actually used.

The same effect could be achieved by listing all code that touches
the pixel buffer in the valgrind suppression file.
Note, valgrind also fails to trace the origins correctly.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-03-25 00:43:14 +01:00