Christophe GISQUET
e75d1d4f73
dsputil x86: revert a test back to its previous value
...
Commit 356ee8d
caused the initial inversion.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Christophe Gisquet
fe5ed69dc7
rv34dsp x86: implement MMX2 inverse transform
...
141 cycles down to 51.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Roland Scheidegger
9b9df1cdff
h264: new assembly version of get_cabac for x86_64 with PIC
...
This adds a hand-optimized assembly version for get_cabac much like the
existing one, but it works if the table offsets are RIP-relative.
Compared to the non-RIP-relative version this adds 2 lea instructions
and it needs one extra register. get_cabac() gets about 40% faster, for
an overall speedup of about 5%.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Roland Scheidegger
14e9ffc1e4
h264: use one table instead of several for cabac functions
...
The reason is this is easier for PIC code (in particular on darwin...).
Keep the old names as pointers (static in cabac_functions.h so gcc
knows these are just immediate offsets) so the c code can nicely stay the same
(alternatively could use offsets directly in the functions needing the
tables). This should produce the same code as before with non-pic and better
code (confirmed) with pic.
The assembly uses the new table but still won't work for PIC case.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Roland Scheidegger
444f47b55c
h264: (trivial) remove unneeded macro argument in x86/cabac.h
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Jordi Ortiz
a7fa5ce671
libschroedingerdec: check malloc
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
13 years ago
Clément Bœsch
423b827668
lavc: add MicroDVD decoder.
...
Based on my MicroDVD->ASS conversion code from MPlayer
(sub/subassconvert.c).
13 years ago
Mans Rullgard
0a07f2b346
dsputil: fix invalid array indexing
...
Indexing outside an array is invalid and causes errors with
gcc 4.8.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
a4b58fd9e8
ffv1: add examples of supported slices counts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
b6a6e90a7c
fft-test: add option to set cpuflag mask
...
This can be useful for testing.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
3d11c2d76d
vp8: armv6: fix non-armv6t2 build
...
The assembler may fail to place literal pools close enough to
instructions referencing them. An explicit .ltorg directive
fixes this.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
e4ac031233
vp8: armv6 optimisations
...
Based on patch by Ronald S. Bultje <rsbultje@gmail.com>,
partially ported from libvpx.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
b692d246ea
vp8: arm: separate ARMv6 functions from NEON
...
This is a preparation for complete ARMv6 optimisations.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Mans Rullgard
dac78fd1d7
ARM: add some compatibility macros
...
This adds some macros simplifying Thumb and pre-v6T2 compatibility.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
cab15f9db4
ffv1: remove clear_state(), it has become unused
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
83bf9fb6ec
ffv1: move clear_state() to clear_slice_state() in encoding threads
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
68a9194bb6
ffv1: indent
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
3f4c0dad16
ffv1: move init_slice_state() into the decoder threads.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
60217b5b9c
ffv1: Remove slice count field with 1.3 and just count slices.
...
This field was problematic because in case of damaged slices it can be
lost
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
3ed6917ab8
ffv1: store slice size with all slices in 1.3
...
This simplifies handling by removing a special case.
Its also needed to make the next change possible.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
c24ca7b88e
ffv1: add 1 status byte to slices in in case crcs are stored too.
...
This will allow storing of information about corrected and uncorrectable
errors.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
0c27854532
ffv1: Always store slice size when error reobustness is enabled.
...
This simplifies finding slices within a damaged bitstream.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
16524d1be0
ffv1: include solution hint in the slice error message
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
fe5bc46f60
ffv1: support vlc mode in 1.3
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
3158160334
ffv1: move the decoder side ac->vlc switch to decode_slice()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
44f789c092
ffv1: allow selecting 1.3 by using -level
...
Note, 1.3 is not finalized and the bitstream will still change
do not use it yet. This option is just to make playing with it
easier, otherwise one would have to edit the source
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
e37419a806
ffv1: move ac->vlc switch to encode_slice()
...
This will allow us to use vlc coding in 1.3 too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
ae0591f913
Add missing newline in shorten decoder.
13 years ago
Michael Niedermayer
9c99bc433e
mpc8: print error messages on maxband(s) errors
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
88ee2aa5ad
mpc8: make maxband check less picky.
...
Fixes Ticket1245
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
2954574126
indeo4: check quant_mat more fully.
...
quant_mats valid range depends on the block size.
This fixes a global array overread.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
068d0b4e25
h264: some fields in SEIs are longer than 25 bits thus use get_bits_long()
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
4d87001096
vp8: fix crash due to skiped update_dimensions().
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Diego Biurrun
a229d6c285
Remove libdirac decoder.
...
libschroedinger is the preferred way to decode Dirac video.
13 years ago
Michael Niedermayer
70d54392f5
lowres2 support.
...
The new lowres support is limited to decoders where lowres decoding
is possible in high quality.
I was not able to measure any speed difference, but if one is found
the 2-3 lines that might affect speed can be made compile time conditional
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
2e07f42957
Support flicvideo with 904 bytes extradata.
...
Fixes ticket #1234 .
13 years ago
Michael Niedermayer
951cbea56f
mpeg12dec: reset data size after parsing extradata.
...
This ended up corrupting data structures and may possibly
lead to a double free.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
41abc9da50
iff: fix null ptr dereference
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
9a4f5b7616
mjpegbdec: check SOS/SOF ordering.
...
Fixes null ptr dereference
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
abec6549ae
ffv1dec: Require a valid keyframe for decoding non keyframes.
...
Before this the context could become inconsistent, this lead to a null ptr
dereference.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
d526c5338d
ARM: allow runtime masking of CPU features
...
This allows masking CPU features with the -cpuflags avconv option
which is useful for testing different optimisations without rebuilding.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago
Michael Niedermayer
605f2b6b00
asv1dec: check extradatasize before reading.
...
Fixes null ptr dereference
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
fa5dacce14
indeo5: check against scaleable frames in non scaleable streams.
...
Fixes a null ptr dereference.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
f7c67536fe
svq1dec: Fix overread on very small input
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
b21ba20cc8
wmaprodec: tighter check for num_vec_coeffs
...
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Carl Eugen Hoyos
2f06b56382
Support broken v210 files with 64 byte padding.
...
Fixes ticket #743 .
Reviewed-by: Paul B Mahol
13 years ago
Michael Niedermayer
6c0027bb39
dnxhddec: check that the indicated bit depth matches the tables.
...
Fixes crash
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
8c59e0c362
xldec: move buffer size check up, it can be done before allocating a frame
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
94b42da696
xldec: Check that width is a multiple of 4
...
Fixes out of array reads
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mans Rullgard
d7458bc8c6
dsputil: remove unused functions
...
These functions were left unused by the lowres removal.
Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years ago