Commit Graph
13906 Commits
Author SHA1 Message Date
Dustin BrodyandAnton Khirnov 8f9d3f6d9a s302m: use nondeprecated audio sample format API
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-29 08:47:34 +02:00
Anton Khirnov ec6402b7c5 lavc: use designated initialisers for all codecs.
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Mans RullgardandAlex Converse 3ad1684126 x86: cabac: add operand size suffixes missing from 6c32576
This fixes build with clang.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-28 18:59:23 -07:00
Dustin BrodyandRonald S. Bultje 2a11952f45 h263dec: Propagate AV_LOG_ERRORs from slice decoding through frame decoding with sufficient error recognition
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-28 15:23:07 -07:00
Mans Rullgard f5f004bc5a x86: cabac: don't load/store context values in asm
Inspection of compiled code shows gcc handles these fine on its own.
Benchmarking also shows no measurable speed difference.

Removing the remaining cases in get_cabac_bypass_sign_x86() does
cause more substantial changes to the compiled code with uncertain
impact.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-28 22:25:21 +01:00
Jason Garrett-Glaser 6c32576548 H.264: optimize CABAC x86 asm for Atom 2011-07-28 13:06:13 -07:00
Ronald S. Bultje 8dcf518430 vp3/theora: flush after seek. 2011-07-28 12:17:26 -07:00
Mans Rullgard ca6a904656 ppc: remove redundant setting of Altivec IDCT
This is already set by dsputil_init_ppc() and is best done in only
one place.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 20:14:12 +01:00
Mans Rullgard c3027b4d2f mpegvideo: initialise DSPContext in ff_dct_common_init()
The functions and tables initialised in this function rely on an
initialised DSPContext.  Make sure they always have one.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 20:14:12 +01:00
Justin Ruggles 093ee8e199 cosmetics: reindent 2011-07-27 11:51:46 -04:00
Justin Ruggles 1bca72e1bd eac3enc: support writing of basic mixing and info metadata 2011-07-27 11:51:46 -04:00
Mans Rullgard e72f3d10f6 dnxhdenc: fix declarations in for loops
Apparently the gcc warning doesn't trigger on these.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:36:02 +01:00
Mans Rullgard c358a0364e dsputil: remove stale bink prototypes and comments
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Mans Rullgard 1b3539d453 dsputil: move a bink-only function to binkdsp
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Mans Rullgard cbd58a872d dsputil: remove some unused functions
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Kostya ShishkovandMans Rullgard 2968bedf12 bink: make IDCT take 32-bit input
Since IDCT transforming 32-bit input to 8-bit output is unusual and unpractical
for most codecs, move Bink IDCT into separate context. Get rid of an additional
permutation table while at it since SIMD support for Bink IDCT is unlikely to
be implemented in foreseeable future.
Quantisation tables also have to change type to signed for proper
dequantisation of DCT coefficients.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 14:39:56 +01:00
Diego Biurrun 9b3139ebca dctref: make sure function declarations match between .c and .h file 2011-07-27 00:26:13 +02:00
Mans Rullgard da4c7cce21 x86: fix build with gcc 4.7
The upcoming gcc 4.7 has more advanced constant propagation
resulting some inline asm operands becoming constants and thus
emitted as literals, sometimes in contexts where this results
in invalid instructions.

This patch changes the constraints of the relevant operands
to "rm" thus forcing a valid type.  While obviously suboptimal,
this is what older gcc versions already did, and there is no
change to the code generated with these.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-26 22:17:43 +01:00
Michael NiedermayerandReinhard Tartler 8c0fa61a97 jpegdec: actually search for and parse RSTn
Fixes decoding of MJPEG files produced by some UVC Logitec web cameras,
such as "Notebook Pro" and "HD C910".

References:
http://trac.videolan.org/vlc/ticket/4215
http://ffmpeg.org/trac/ffmpeg/ticket/267

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Reviewed-by: Kostya <kostya.shishkov@gmail.com>
(cherry picked from commit 7b8ed831eb)
2011-07-23 19:19:13 +02:00
Mans Rullgard b4cfb8254e dnxhddec: avoid a branch in 10-bit decode_dct_block()
The minimum weight value is 32 so this test can be skipped for the
10-bit case.  Overall speedup 3-4%.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-22 23:39:31 +01:00
Daniel KangandRonald S. Bultje 406fbd24dc H.264: Add optimizations to predict x86 assembly.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-22 14:54:33 -07:00
Kostya ShishkovandRonald S. Bultje c2d23309ef add Flash Screen Video 2 decoder
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-22 09:12:30 -07:00
Mans Rullgard bb32fded36 dnxhddec: optimise dnxhd_decode_dct_block()
Template the function for 8/10-bit and use lowlevel bitstream
macros.

6% faster overall on i7 gcc 4.5.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 23:14:37 +01:00
Justin Ruggles be7bd626c4 eac3enc: use different numbers of blocks per frame to allow higher bitrates 2011-07-21 14:57:10 -04:00
Joseph ArtsimovichandMans Rullgard 5ab21439fd dnxhd: 10-bit support
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:44:40 +01:00
Mans Rullgard a617c6aaa3 dsputil: update per-arch init funcs for non-h264 high bit depth
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard 874f1a901d dsputil: template get_pixels() for different bit depths
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard 5cc2600964 dsputil: create 16/32-bit dctcoef versions of some functions
High bitdepth H.264 needs 32-bit transform coefficients, whereas
dnxhd does not.  This creates a conflict with the templated
functions operating on DCTELEM data.  This patch adds a field
allowing the caller to choose the element size in dsputil_init()
and adds the required functions.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard 0a72533e98 jfdctint: add 10-bit version
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Thierry FoucuandRonald S. Bultje c4ab43ff3c mpeg4: add Mpeg4 Profiles names.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:34:11 -07:00
Thierry FoucuandRonald S. Bultje 0637e50579 mpeg4: decode Level Profile for MPEG4 Part 2.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:33:34 -07:00
Stefano SabatiniandDiego Biurrun 09e8163625 imgconvert: remove unused glue and xglue macros
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-07-21 17:55:27 +02:00
Diego Biurrun e5985185d2 rv30: return AVERROR(EINVAL) instead of EINVAL
On some platforms EINVAL could be positive, ensure we return negative values.
2011-07-21 14:26:06 +02:00
Mans Rullgard 2cc4f3b21f simple_idct: whitespace cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 12:49:51 +01:00
Mans Rullgard a402f10959 simple_idct: make repeated code a macro
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 12:49:51 +01:00
Mans Rullgard 7df701a192 dsputil: remove huge #if 0 block
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 11:04:56 +01:00
Mans Rullgard e7bcc5baf7 simple_idct: change 10-bit add/put stride from pixels to bytes
This matches other dsputil functions and simplifies calls.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 09:26:37 +01:00
Mans Rullgard a82beafd64 dsputil: allow 9/10-bit functions for non-h264 codecs
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 09:26:26 +01:00
Joseph ArtsimovichandMans Rullgard 42c27f2eca dnxhd: rename some data tables
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 03:30:29 +01:00
Mans Rullgard b049978397 dnxhdenc: remove inline from function only called through pointer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 02:13:03 +01:00
Mans Rullgard 1073823984 dnxhdenc: whitespace cosmetics
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 02:12:47 +01:00
Diego Biurrun 79a9aab56f Remove unused and non-compiling vestigial g729 decoder 2011-07-20 20:47:07 +02:00
Diego Biurrun a005174b25 Remove unused code under G729_BITEXACT #ifdef.
G729_BITEXACT is never set, so the code is all dead code.
2011-07-20 20:47:07 +02:00
Ronald S. Bultje 80469eafb7 mpegvideo: fix invalid picture unreferencing.
Mpegvideo would free frames as soon as they're not the next or prev
picture. This is fine for a single-threading model, but fails miserably
in a system where pictures can be referenced (as e.g. last/prev pic)
in other threads. Keeping track of ownership of pictures keeps image
references (e.g. motion vectors, or the reference of a motion vector)
alive as long as the picture data itself is alive.

This also happens to fix make THREADS=[3-16] fate-vsynth[12]-error.
2011-07-20 10:26:49 -07:00
Alex Converse e4b50572b7 dsputil: Remove extra blank line at end. 2011-07-20 10:15:57 -07:00
Alex Converse d9a9f50a36 dsputil: Replace a LONG_MAX check with HAVE_FAST_64BIT. 2011-07-20 10:15:57 -07:00
Mans Rullgard e7a972e113 simple_idct: add 10-bit version
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 17:49:48 +01:00
Mans Rullgard 7b4ee3a21d Remove h264_lowres_idct_put/add functions
Use of these has been broken ever since the h264 idct was changed
to always use transposed inputs.  Furthermore, they were only
ever used if some *other* non-default idct was requested.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 16:13:04 +01:00
Mans Rullgard 89cc8a316d Remove snow/dwt test program
This test program so full of programming errors it is impossible
to make sense of it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 14:54:24 +01:00
Diego Biurrun 1b4a17094e h264: remove some disabled code 2011-07-20 15:04:51 +02:00