Dustin Brody
b2700a5c7c
lavc: fix misspelling in comment
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-05 18:18:38 -07:00
Dustin Brody
680b1852ab
aac: propagate error return values for AV_LOG_ERROR-triggering events
2011-08-05 12:35:49 -07:00
Alex Converse
ad62507f32
h263dec: Fix asserts broken by the elimination of FF_COMMON_FRAME.
2011-08-03 17:56:47 -07:00
Diego Biurrun
fed6c90b68
cosmetics: remove some stray comments from AVCodec declarations
2011-08-03 23:31:45 +02:00
Diego Biurrun
933a6fd5a1
cosmetics: fix indentation/alignment in AVCodec declarations
2011-08-03 23:31:45 +02:00
Måns Rullgård
9a83adaf34
arm: Avoid using the movw instruction needlessly
...
This fixes building for ARM11 without Thumb2.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-08-03 11:56:58 +03:00
Martin Storsjö
d0a2f0af9d
Move an int64_t down in MpegEncContext
...
This allows using the same arm assembler offsets for both EABI
and the mach-o ABI.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-08-03 11:56:56 +03:00
Vitor Sessak
18b131de04
dct32: Add SSE2 ASM optimizations
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-02 10:17:29 -07:00
Kostya Shishkov
6f7fe4723b
Correct chroma vector calculation for RealVideo 3.
...
Old version divided it wrong, which resulted in chroma drift (visible on FATE
sample too as dirty trails left by clouds).
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-02 08:23:47 -07:00
Luca Barbato
9d39cbf6cf
avpacket: signal possibly corrupted packets
...
Use AV_PKT_FLAG_CORRUPT flag to mark packets that might be incomplete
or have errors. Formats that have a mean to validate their packets
should use this flag to deliver such information instead of silently
dropping the packets.
2011-08-02 02:19:31 +02:00
Dustin Brody
4326f6f525
mpeg4videodec: remove dead code that would have detected erroneous encoding
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-01 21:06:48 +02:00
Alex Converse
a6c49f18ab
aac: Remove some suspicious illegal memcpy()s from LTP.
2011-08-01 09:39:33 -07:00
Alex Converse
e11a5fccb2
bink: Eliminate unnecessary shadow declaration.
2011-08-01 09:39:33 -07:00
Dustin Brody
18cb40f074
lavc: Deprecate unused FF_ER_VERY_AGGRESSIVE
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-31 14:53:38 -07:00
Jason Garrett-Glaser
a3bf7b864a
H.264: tweak some other x86 asm for Atom
2011-07-29 12:24:15 -07:00
Dustin Brody
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 Rullgard
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 Brody
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 Shishkov
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 Niedermayer
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 Kang
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 Shishkov
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 Artsimovich
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 Foucu
c4ab43ff3c
mpeg4: add Mpeg4 Profiles names.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:34:11 -07:00
Thierry Foucu
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 Sabatini
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 Artsimovich
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
Mans Rullgard
e23a05ab06
Fix incorrect max_lowres values
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 10:19:36 +01:00
Justin Ruggles
953302656a
cosmetics: indentation
2011-07-19 14:15:00 -04:00
Justin Ruggles
08a747afb9
eac3enc: use frame exponent strategy when applicable.
...
This checks if the set of selected exponent strategies for all blocks in a
channel are in the frame exponent strategy table, and if so, writes the
table index instead of each strategy. This saves up to 7 bits per channel per
frame, so the overall effect on quality is small.
2011-07-19 14:15:00 -04:00
Justin Ruggles
31b69928e5
cosmetics: rename eac3dec_data.c/h to eac3_data.c/h since the tables will also
...
be used in the E-AC-3 encoder.
2011-07-19 14:15:00 -04:00
Mans Rullgard
29b42c66f7
dsputil: fix ff_check_alignment()
...
The change to LOCAL_ALIGNED means the declared object must be an
array and the subsequent test should not use the & operator.
Noticed by Uoti Urpala.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-19 17:44:35 +01:00
Mans Rullgard
3e9409b1d0
simple_idct: simplify some ifdeffery
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 20:57:27 +01:00
Mans Rullgard
dbb5ee8ea7
simple_idct: remove code for DCTELEM != int16
...
DCTELEM can never be changed to anything else, too much code
depends on it.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 20:57:22 +01:00
Mans Rullgard
3f5dcde7e6
Remove VLAs in ff_amrwb_lsp2lpc()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 18:48:13 +01:00
Diego Biurrun
e463f0e979
dsputil: restore mistakenly removed hunk of disabled code
...
This particular part serves to document the optimized code variant.
2011-07-18 18:04:56 +02:00
Diego Biurrun
65083b4911
dsputil: remove disabled code
2011-07-18 11:48:35 +02:00
Diego Biurrun
c99c0e2625
tta: remove disabled code
2011-07-18 01:47:50 +02:00
Martin Storsjö
8f62ef0f95
x86: Use LOCAL_ALIGNED in mpegvideo_mmx_template
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-07-18 00:10:45 +03:00
Diego Biurrun
e0ae2174db
simple_idct: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
473e547e80
motion_est: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
9cab9421ce
vc1: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
fd065d3e79
cabac: Move code only used in the cabac test program to cabac.c.
2011-07-17 12:56:42 +02:00
Mans Rullgard
2f07cb4d39
dct-test: remove write-only variable
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-16 19:39:19 +01:00
Mans Rullgard
58d7efdb29
Use LOCAL_ALIGNED in ff_check_alignment()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-16 19:39:19 +01:00
Diego Biurrun
8342a82680
arm: remove disabled function dct_unquantize_h263_inter_iwmmxt()
2011-07-16 19:15:01 +02:00
Diego Biurrun
4d4c7f8ef0
Remove commented-out call to non-existing function print_pow1().
2011-07-16 19:13:45 +02:00
Rafaël Carré
289c60001f
Do not decode RV30 files if the extradata is too small
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-07-16 18:17:43 +02:00
Diego Biurrun
b8783b98c5
flashsv: split flashsv_decode_block() off from flashsv_decode_frame().
2011-07-16 09:08:51 +02:00
Diego Biurrun
21aed0ed92
ppc: remove disabled code
2011-07-16 02:56:52 +02:00
Diego Biurrun
0523dc57ff
libspeexdec: Drop const qualifier to silence compiler warning.
...
libavcodec/libspeexdec.c:108: warning: passing argument 2 of ‘speex_bits_read_from’ discards qualifiers from pointer target type
/usr/include/speex/speex_bits.h:80: note: expected ‘char *’ but argument is of type ‘const uint8_t *’
2011-07-16 01:26:51 +02:00
Diego Biurrun
34e36f3a1c
libopenjpeg: Drop const qualifier to silence compiler warning.
...
libavcodec/libopenjpeg.c💯 warning: passing argument 2 of ‘opj_cio_open’ discards qualifiers from pointer target type
/usr/include/openjpeg.h:770: note: expected ‘unsigned char *’ but argument is of type ‘const uint8_t *’
2011-07-16 01:26:51 +02:00
Diego Biurrun
8b587fa292
alac: Remove unused dummy code.
2011-07-16 01:21:17 +02:00
Diego Biurrun
356be9307c
Remove unused structs and tables.
2011-07-16 01:08:31 +02:00
Diego Biurrun
f20418c349
vaapi: do not assert on value read from input bitstream
...
User-provided data should never trigger an assert; return error instead.
Also fix an instance of get_bits where get_bits_long should have been used.
This eliminates the following warning:
libavcodec/vaapi_mpeg2.c:112:14: warning: variable 'start_code' set but not used
2011-07-16 00:28:07 +02:00
Diego Biurrun
86e8272a23
flashsvenc: replace bitstream description by a link to the specification
...
An official specification now exists and it is both more detailed and
easier to understand than the incomplete notes available here.
2011-07-16 00:28:04 +02:00
Diego Biurrun
20a6f210cd
flashsvenc: drop unnecessary cast
2011-07-16 00:27:15 +02:00
Diego Biurrun
0686515cb4
flashsvenc: improve some variable names and fix corresponding comments
2011-07-16 00:27:15 +02:00
Diego Biurrun
59ef6bded5
flashsvenc: merge two consecutive if-conditions
2011-07-16 00:27:12 +02:00
Diego Biurrun
12e9bf3e84
flashsvenc: merge variable declarations and initializations
2011-07-16 00:26:19 +02:00
Diego Biurrun
b88523c25d
flashsvenc: convert some debug av_log() to av_dlog()
2011-07-16 00:26:18 +02:00
Diego Biurrun
3d5669c6e9
flashsvenc: whitespace cosmetics
2011-07-16 00:26:18 +02:00