Christophe Gisquet
4f50646697
x86: sbrdsp: Implement SSE qmf_post_shuffle
...
255 to 174 cycles on Arrandale / Win64. Unrolling yields no gain.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-01-06 13:57:01 +01:00
Christophe Gisquet
44a0036d10
x86: sbrdsp: Implement SSE sum64x5
...
698 to 174 cycles on Arrandale. Unrolling is a 6 cycles gain.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-01-06 13:57:01 +01:00
Diego Biurrun
5b4dfbffc2
x86: ABS1: port to cpuflags
2013-01-06 13:57:01 +01:00
Anton Khirnov
de16f08e48
v210x: cosmetics, reformat
2013-01-06 13:31:40 +01:00
Anton Khirnov
6689474b91
v210x: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
39039f2405
r210dec: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
4324a3ce75
vb: cosmetics, reformat
2013-01-06 13:31:40 +01:00
Anton Khirnov
9dbbda235d
vb: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
a0ffcee1ee
ptx: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
b2a7b81b9c
tiff: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
26a161a166
vqavideo: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
edfe05ddf1
mss2: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
f0547c9bd0
v210dec: return meaningful error codes
2013-01-06 13:31:40 +01:00
Anton Khirnov
c04c64c08e
indeo2: cosmetics, reformat
2013-01-06 13:31:40 +01:00
Anton Khirnov
7b1fbd4729
indeo2: check decoding errors.
2013-01-06 13:31:40 +01:00
Anton Khirnov
6ea2c9a4cf
indeo2: return meaningful error codes
2013-01-06 13:31:40 +01:00
Anton Khirnov
6781b5315e
rl2: cosmetics, reformat
2013-01-06 13:31:40 +01:00
Anton Khirnov
3c6e5a840c
rl2: use fixed-width integer types where appropriate
2013-01-06 13:31:40 +01:00
Anton Khirnov
126abaaaae
rl2: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
7c8fceef6c
cljr: return a meaningful error code.
2013-01-06 13:31:40 +01:00
Anton Khirnov
80344261aa
fraps: cosmetics, reformat
2013-01-06 13:31:40 +01:00
Anton Khirnov
57d11e5e28
fraps: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
405486c28b
kgv1dec: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
e1a7061d63
kmvc: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
f3fcb1a7b2
wnv1: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
0c19b23bd5
dpx: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
b61e0b99df
truemotion1: return meaningful error codes
2013-01-06 13:31:40 +01:00
Anton Khirnov
380242ca50
pnm: return meaningful error codes.
2013-01-06 13:31:40 +01:00
Anton Khirnov
84f2847de3
xl: return a meaningful error code.
2013-01-06 13:31:40 +01:00
Anton Khirnov
d47dabbac2
xan: return a meaningful error code.
2013-01-06 13:31:40 +01:00
Anton Khirnov
4aebb8d999
xxan: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
aaf208329f
zmbv: return more meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
01b60883ea
yop: use a meaningful error code.
2013-01-06 13:31:39 +01:00
Anton Khirnov
11c3f2047e
c93: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
2b011a43e9
bmv: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
abcc235481
bmp: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
6a97ea65b6
bink: operate with pointers to AVFrames instead of whole structs.
...
This is more correct and avoids breaking extended_data.
2013-01-06 13:31:39 +01:00
Anton Khirnov
86d4e75422
bink: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
86e09b9e60
bfi: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
fc2a94c15e
bethsoftvideo: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
e83c1e2d0b
avs: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
620faee5d1
aura: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
38de3365ca
asvdec: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
b3b17f7800
ansi: return a meaningful error code
2013-01-06 13:31:39 +01:00
Anton Khirnov
b622e2b540
anm: return meaningful error codes
2013-01-06 13:31:39 +01:00
Anton Khirnov
18009e60d2
aasc: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
313da47aa1
8bps: return meaningful error codes.
2013-01-06 13:31:39 +01:00
Anton Khirnov
f7d15d2f42
4xm: operate with pointers to AVFrames instead of whole structs.
...
This is more correct and avoids breaking extended_data.
2013-01-06 13:31:39 +01:00
Anton Khirnov
85383d139a
4xm: eliminate a pointless indirection
2013-01-06 13:31:39 +01:00
Anton Khirnov
aa15afb7ce
4xm: simplify code with FFSWAP
2013-01-06 13:31:39 +01:00
Anton Khirnov
10c26e928a
4xm: return meaningful error codes
2013-01-06 13:31:39 +01:00
Clément Bœsch
3048fae63c
build: Avoid detecting bogus components named 'x'
...
The function find_things() in configure is confused by component
registration calls as part of multiline macros defining combined
component registration. Coalesce those macros into one line to
work around the issue.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-01-03 15:11:25 +02:00
Janne Grunau
9ac44ad9d0
h264: check SPS entries directly to detect pixel format changes
...
Comparing AVCodecContext.pix_fmt against the get_pixel_format() return
value has the side effect of calling the get_format() callback on each
slice. Users of the callback will probably handle hardware accelerator
initialization in the callback.
2013-01-03 11:09:00 +01:00
Diego Biurrun
117f79de2d
truemotion2: Sanitize tm2_read_header()
...
Also give a variable a more sensible name.
2012-12-31 11:20:45 +01:00
Anton Khirnov
fb0cb11f09
cavsdec: export picture type in the output frame
2012-12-30 18:52:26 +01:00
Anton Khirnov
7d84826400
cavs: deMpegEncContextize
...
It does not use any of the mpegvideo infrastructure, just a few fields
from the context.
Fixes a segfault with the emu edge flag, since emu edge buffer is now
allocated as a part of the frame buffer allocation and cavs calls
ff_get_buffer() directly, it does not use mpegvideo buffer management.
Fixes a memleak of the last frame.
2012-12-30 18:48:11 +01:00
Anton Khirnov
64bb3fa6b7
cavs: cosmetics, reformat top part
2012-12-30 18:47:54 +01:00
Anton Khirnov
185c2ef849
cavsdec: cosmetics, reformat
2012-12-30 18:47:30 +01:00
Diego Biurrun
015da965a6
libavcodec/utils: Add braces to shut up gcc warnings
...
libavcodec/utils.c:1050:5: warning: missing braces around initializer [-Wmissing-braces]
libavcodec/utils.c:1314:5: warning: missing braces around initializer [-Wmissing-braces]
2012-12-30 01:52:04 +01:00
Luca Barbato
d615da60c1
snow: use VideoDSPContext
...
It was left over from the initial conversion.
2012-12-29 18:05:49 +01:00
Diego Biurrun
c73c87b412
cosmetics: Prettyprint codec/format/filter registration files
2012-12-28 19:18:13 +01:00
Janne Grunau
1f4ea4e068
mpegvideo: initialize videodsp with correct pixel depth
...
Fixes decoding of 9/10 bit per pixel h264 videos as reported in
https://bugzilla.libav.org/show_bug.cgi?id=404 .
2012-12-26 00:24:21 +01:00
Anton Khirnov
0a9132b84c
wnv1: cosmetics, reformat
2012-12-24 09:18:19 +01:00
Anton Khirnov
51648da4dc
xan: remove a trivially true if().
...
This function used to be shared with the xxan decoder, but that is not
true anymore.
2012-12-24 09:17:57 +01:00
Anton Khirnov
99e36ddd3e
ansi: do not depend on get_buffer() initializing the frame.
...
The background changes from 128 (used by the default/cmdutils
get_buffer()) to 0. This looks more correct.
2012-12-24 09:17:45 +01:00
Anton Khirnov
261f0b14ed
zerocodec: remove an unused variable.
2012-12-24 09:17:40 +01:00
Anton Khirnov
8adfacff5c
zmbv: remove some pointless comments and empty lines
2012-12-24 09:17:34 +01:00
Anton Khirnov
c6303f8d70
yop: simplify/sanitize the decoding loop
...
Do not overwrite linesize set by get_buffer().
The last frame in the FATE test is not decoded anymore, since the file
is cut and a part of it is missing.
2012-12-24 09:16:51 +01:00
Anton Khirnov
f6e395e132
c93: set palette_has_changed.
2012-12-24 09:16:11 +01:00
Anton Khirnov
3eab600752
bmp: cosmetics, reformat
2012-12-24 09:15:30 +01:00
Martin Storsjö
0940580adb
lavc: Correct the description of pkt_dts
...
The description as updated in 6e5c44b0f made it sound like it is
handled exactly like the pts, which it is not. Clarify that it
is the packet that triggered returning the frame instead of just
the last avpacket (in case of frame threading, it won't be the
dts of the last packet).
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-23 20:52:21 +02:00
Diego Biurrun
f3298f1299
Return proper error code after av_log_ask_for_sample()
2012-12-23 18:56:56 +01:00
Anton Khirnov
b6d7d4efae
8bps: cosmetics
...
Remove some pointless comments and empty lines.
2012-12-23 11:17:53 +01:00
Anton Khirnov
c64cf2a37b
aasc: cosmetics, reformat
2012-12-23 11:17:53 +01:00
Anton Khirnov
808b2227d7
ansi: remove an extra return
2012-12-23 11:17:53 +01:00
Anton Khirnov
c3a76c3dec
asvdec: cosmetics, reformat
2012-12-23 11:17:53 +01:00
Anton Khirnov
bdfa24514e
aura: cosmetics, reformat
2012-12-23 11:17:53 +01:00
Anton Khirnov
b047c68783
4xm: don't rely on get_buffer() initializing the frame.
2012-12-23 11:17:53 +01:00
Anton Khirnov
2ca5ca2957
huffyuv: split encoder and decoder into separate files.
2012-12-23 11:17:49 +01:00
Anton Khirnov
6e5c44b043
lavc: make pkt_{p,d}ts doxy less confusing
2012-12-23 10:35:32 +01:00
Anton Khirnov
418693bdc5
lavc: rewrite and extend AVFrame doxy
2012-12-23 10:35:27 +01:00
Justin Ruggles
5778299c7e
ttadec: fix last frame handling when seeking
...
Using a frame count, as is done currently, does not work at all with
seeking. Instead, when the number of samples in the final frame has
been decoded, we check if only the 32-bit CRC is remaining. If so, we
assume that it is the final frame.
There is no longer a need to keep total_frames in TTAContext.
2012-12-22 14:45:35 -05:00
Justin Ruggles
68a04b0cce
alacdec: do not be too strict about the extradata size
...
Sometimes the extradata has duplicate atoms, but that shouldn't prevent
decoding. Just ensure that it is at least 36 bytes as a sanity check.
CC: libav-stable@libav.org
2012-12-22 12:18:41 -05:00
Justin Ruggles
aef5150719
flac: only set channel layout if not previously set or on channel count change
...
Fixes Bug 402
2012-12-22 01:35:28 -05:00
Diego Biurrun
511cf612ac
miscellaneous typo fixes
2012-12-21 00:18:34 +01:00
Luca Barbato
6906b19346
lavc: add missing files for arm
...
Across the many retouches those did not make the main commit.
2012-12-20 14:07:23 +01:00
Ronald S. Bultje
8c53d39e7f
lavc: introduce VideoDSPContext
...
Move some functions from dsputil. The idea is that videodsp contains
functions that are useful for a large and varied set of video decoders.
Currently, it contains emulated_edge_mc() and prefetch().
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-20 13:40:45 +01:00
Anton Khirnov
5823686261
mpeg12: do not decode extradata more than once.
...
Fixes CVE-2012-2803.
CC: libav-stable@libav.org
2012-12-19 22:32:54 +01:00
Victor Lopez
1c8bf3bfed
h264: fix sps parsing for SVC and CAVLC 4:4:4 Intra profiles
...
Fixes bug 396.
CC: libav-stable@libav.org
2012-12-19 13:40:48 +01:00
Janne Grunau
45635885e4
mpegvideo: increase edge_emu_buffer size for VC1
...
The VC1 decoder uses edge_emu_buffer simultaneously for luma and chroma
and needs more space. That was not a problem before f1d8763a02
since the size for edge_emu_buffer was always calculated with 2 byte per
pixel since the linesize was not known.
Fixes occasionally fate errors in vc1_sa10143.
2012-12-19 07:57:22 +01:00
Janne Grunau
acb571c89a
avcodec: bump minor for adaptive h264 frame-mt
...
Also adds forgotten Changelog entry.
2012-12-18 20:26:53 +01:00
Janne Grunau
9e696d2e5f
h264: support frame parameter changes during frame-mt
...
Fixes CVE-2012-2782.
2012-12-18 19:55:10 +01:00
Janne Grunau
f1d8763a02
mpegvideo: allocate scratch buffers after linesize is known
...
Since we can't know which stride a custom get_buffer() implementation is
going to use we have to allocate this scratch buffers after the linesize
is known. It was pretty safe for 8 bit per pixel pixel formats since we
always allocated memory for up to 16 bits per pixel. It broke hoever
with cmdutis.c's alloc_buffer() and high pixel bit depth since it
allocated larger edges than mpegvideo expected.
Fixes fuzzed sample nasa-8s2.ts_s244342.
2012-12-18 19:48:30 +01:00
Michael Niedermayer
ed2d7d5868
ff_h264_direct_ref_list_init: fix B slice check.
...
Fixes null pointer dereference.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-12-18 19:44:22 +01:00
Janne Grunau
73ad2c2fa7
h264: increase dist_scale_factor for up to 32 references
...
Compute dist_scale_factor_field only for MBAFF since that is the only
case in which it is used.
2012-12-18 19:36:58 +01:00
Diego Biurrun
523c7bd23c
misc typo, style and wording fixes
2012-12-18 13:36:51 +01:00
Michael Niedermayer
c9aab8a123
h264: use mbaff ref indices in fill_colmap() only for mbaff references
...
Prevents writing beyond array bounds.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-12-18 11:02:23 +01:00
Janne Grunau
61c6eef545
h264: prevent decoding of slice NALs in extradata
...
It is not posible to call get_buffer during frame-mt codec
initialization. Libavformat might pass huge amounts of data as
extradata after parsing broken files. The 'extradata' for the fuzzed
sample sample_varPAR_s5374_r001-02.avi is 2.8M large and contains
multiple slices.
2012-12-18 11:01:14 +01:00
Diego Biurrun
81c7c817a4
cosmetics: Use consistent names for multiple inclusion guards.
2012-12-17 17:02:22 +01:00
Janne Grunau
a421bbfe83
h264: fix memleak on error during SPS parsing
...
Introduced in d7d6efe42b
.
2012-12-15 19:16:39 +01:00
Janne Grunau
27c8337e59
h264-mt: handle NAL_DPAs before calling ff_thread_finish_setup
...
Since a NAL_DPA can start a new frame it has to be handled before
ff_thread_finish_setup is called.
2012-12-15 19:06:37 +01:00
Luca Barbato
f33b5ba63e
vp56: release frames on error
...
Fixes CVE-2012-2783
CC: libav-stable@libav.org
2012-12-14 13:21:59 +01:00
Luca Barbato
bb675d3ac6
vp56: make parse_header return standard error codes
...
Returning 0 for failure is misleading.
CC: libav-stable@libav.org
2012-12-14 13:21:59 +01:00
Anton Khirnov
deabb52ab4
ivi_common: check that scan pattern is set before using it.
...
Fixes CVE-2012-2791.
CC: libav-stable@libav.org
2012-12-14 07:10:53 +01:00
Anton Khirnov
07acdd651d
ivi_common: use proper logging context in ivi_decode_blocks().
2012-12-14 07:10:48 +01:00
Anton Khirnov
8ab42021f2
ivi_common: make some functions and tables static.
2012-12-14 07:08:38 +01:00
Janne Grunau
0eae920c3c
h264: initialize frame-mt context copies properly
2012-12-13 21:02:42 +01:00
Janne Grunau
6a27ae28f9
mpegvideo: treat delayed pictures as used
...
This requires to move the avcodec_default_free_buffers() call to
ff_MPV_common_end() since otherwise delayed pictures would get freed
during a size change.
2012-12-13 21:02:42 +01:00
Janne Grunau
bd255f9feb
lavc: set frame parameters after decoding only if necessary
...
Direct rendering capable decoders call get_buffer() which will set the
frame parameters.
Prevents frames with wrong parameters when a decoder outputs delayed
frames after a resolution or pixel format change.
2012-12-13 21:02:42 +01:00
Janne Grunau
072be3e896
h264: set parameters from SPS whenever it changes
...
Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with
alternating bit depths.
2012-12-13 21:02:42 +01:00
Luca Barbato
be75fed975
vp6: properly fail on unsupported feature
...
Interlacing is not supported at all and mismanaged down the normal
codepaths causing possible buffer management issues.
CC: libav-stable@libav.org
2012-12-13 17:05:45 +01:00
Alex Converse
6d5b009267
aacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.
...
Found-by: pawlkt
CC: libav-stable@libav.org
2012-12-12 13:22:10 -08:00
Martin Storsjö
48238fd00b
svq1: Fix building with -DDEBUG
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-12 12:17:52 +02:00
Anton Khirnov
c4182d72c9
svq1: return meaningful error codes.
2012-12-12 10:00:08 +01:00
Anton Khirnov
998fdcff41
lavc: replace some forgotten instances of PixelFormat with AVPixelFormat
2012-12-12 09:59:58 +01:00
Anton Khirnov
84a0806680
svq1: unmacroify macros used only once.
2012-12-12 09:59:41 +01:00
Anton Khirnov
95baf701db
svq1: deMpegEncContextize
...
This decoder is quite simple and none of the MpegEncContext complexity
is actually needed.
2012-12-12 09:57:21 +01:00
Ronald S. Bultje
6f40e9f070
x86inc: support stack mem allocation and re-alignment in PROLOGUE
...
Use this in VP8/H264-8bit loopfilter functions so they can be used if
there is no aligned stack (e.g. MSVC 32bit or ICC 10.x).
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-12 05:23:46 +01:00
Mans Rullgard
02823f6d71
Make LOCAL_ALIGNED syntactically similar on all systems
...
This changes the LOCAL_ALIGNED definition on systems where
DECLARE_ALIGNED is used so it matches the manual alignment
case, ensuring invalid use will not compile on x86 only to
fail on everything else.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-11 11:59:15 +00:00
Carl Eugen Hoyos
2ddf7c88d1
ZeroCodec: Flip output
...
The initial testing of the VFW binary codec was flawed,
likely due to an AviSynth bug.
Re-testing using VirtualDub and various professional editing
applications has revealed it should have been flipped.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-12-10 11:19:42 -05:00
Mans Rullgard
f9e493c6f5
sh4: dsputil: remove duplicate of ff_gmc_c()
...
This function is an exact duplicate of the generic one.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-10 09:53:58 +00:00
Mans Rullgard
2dd95bd7cf
dsputil: remove unused macro WRAPPER8_16
...
This macro has never been used.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-09 22:21:04 +00:00
Martin Storsjö
774e6fc9ed
libvpxenc: Support forcing keyframes
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-09 20:28:08 +02:00
Mans Rullgard
ec5da7aee2
ac3dec: decode directly into output buffers
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-09 15:52:01 +00:00
Mans Rullgard
30b3916425
ac3dec: make downmix() take array of pointers to channel data
2012-12-09 15:52:01 +00:00
Mans Rullgard
b8f3ab8e6a
ac3dec: output planar float only
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-09 15:52:01 +00:00
Janne Grunau
288bb3da16
svq3: make slice type value unsigned to match svq3_get_ue_golomb return type
2012-12-09 15:51:45 +01:00
Diego Biurrun
ba0c898120
cosmetics: Fix dropable --> droppable typo
2012-12-09 13:36:11 +01:00
Janne Grunau
6a1aa5cb26
mjpeg: initialize input padding after unescaped buffer to zero
...
Fixes valgrind --undef-value-errors=yes warnings caused by valid
overreads in the fate vsynth jpegls, cover-art-ape and cover-art-wv
tests.
2012-12-08 17:05:45 +01:00
Ronald S. Bultje
ddd7559ad9
h264: check for invalid zeros_left before writing
...
Prevent an invalid write into coeffs[scantable[-1]] if zeros_left
itself was an invalid VLC code (and thus -1).
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-08 17:04:22 +01:00
Janne Grunau
9a2e79116d
golomb: use unsigned arithmetics in svq3_get_ue_golomb()
...
This prevents undefined behaviour of signed left shift if the coded
value is larger than 2^31. Large values are most likely invalid and
caused errors or by feeding random.
Validate every use of svq3_get_ue_golomb() and changed the place there
the return value was compared with negative numbers. dirac.c was clean,
fixed rv30 and svq3.
2012-12-08 12:55:10 +01:00
Josh Allmann
b3deec3253
takdec: fix initialisation of LOCAL_ALIGNED array
...
When LOCAL_ALIGNED uses manual alignment initialisation is not
possible.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-12-08 00:00:30 +01:00
Mans Rullgard
cd71af90a9
takdec: fix initialisation of LOCAL_ALIGNED array
...
When LOCAL_ALIGNED uses manual alignment initialisation is not
possible.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 22:13:57 +00:00
Paul B Mahol
57231e4d5b
tak: demuxer, parser, and decoder
...
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-12-07 16:15:02 -05:00
Michael Niedermayer
096abfa150
parser: fix large overreads
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-12-07 16:15:02 -05:00
Michael Niedermayer
41540b36a1
bitstream: add get_bits64() to support reading more than 32 bits at once
...
Also remove a duplicate function in the MPEG-TS demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-12-07 16:15:02 -05:00
Mans Rullgard
b326755989
arm: rename ARMVFP config symbol to VFP
...
This is consistent with usual ARM nomenclature as well as with the
VFPV3 and NEON symbols which both lack the ARM prefix.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:04 +00:00
Mans Rullgard
a7831d509f
arm: use HAVE*_INLINE/EXTERNAL macros for conditional compilation
...
These macros reflect the actual capabilities required here.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
c29d49c1b3
dct-test: arm: indicate required cpu features for optimised funcs
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Anton Khirnov
380232fac3
snow: fix build after 594d4d5df3
2012-12-07 16:35:06 +01:00
Mans Rullgard
92dad6687f
arm: fix use of uninitialised value in ff_fft_fixed_init_arm()
...
When initialising an FFTContext for a plain FFT, mdct_bits is not set
and can contain a garbage value. Since nbits is always valid and for
MDCT operation is mdct_bits - 2 checking this instead avoids using an
uninitialised value while having the same effect.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 13:11:57 +00:00
Martin Storsjö
2c96392277
avpicture: Don't assume a valid pix fmt in avpicture_get_size
...
When called from the v4l2 input device, pix_fmt can be
AV_PIX_FMT_NONE (for jpeg formats). Before 50ba57e0
, this wasn't
an issue for avpicture_get_size, but after that commit, this
lead to crashes.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-07 14:28:47 +02:00
Janne Grunau
a394959bbe
h264: add a pointer for weighted prediction temporary buffer
...
Reusing MpegEncContext's obmc_scratchpad for this becomes a mess with
adaptive frame-mt.
2012-12-07 11:43:28 +01:00
Janne Grunau
d7d6efe42b
h264: check sps.log2_max_frame_num for validity
...
Fixes infinite or long taking loop in frame num gap code in
the fuzzed sample bipbop234.ts_s223302.
CC: libav-stable@libav.org
2012-12-07 11:43:28 +01:00
Janne Grunau
480be07a96
flac: change minimum and default of lpc_passes option to 1
...
Avoid use of uninitialized and uncomputed linear least square models
during ff_lpc_calc_coefs() for FF_LPC_TYPE_CHOLESKY. Fixes running
make fate-flac-16-lpc-cholesk with valgrind --undef-value-errors=yes.
2012-12-07 11:43:28 +01:00
Christophe Gisquet
2aef3d66c9
SBR DSP x86: implement SSE sbr_hf_gen
...
Start and end index are multiple of 2, therefore guaranteeing aligned access.
Also, this allows to generate 4 floats per loop, keeping the alignment all
along.
Timing:
- 32 bits: 326c -> 172c
- 64 bits: 323c -> 156c
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-12-07 11:04:26 +01:00
Christophe Gisquet
9a16359c38
AAC SBR: use AVFloatDSPContext's vector_fmul
...
Around 5% speedup on the code block using 'vector_fmul_add's.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-12-07 10:33:39 +01:00
Janne Grunau
5945c7b35d
h264: slice-mt: check master context for valid current_picture_ptr
...
Fixes errors in slice based multithreading introduced in 0b300daad2
.
CC: libav-stable@libav.org
2012-12-05 23:16:37 +01:00
Janne Grunau
a8cb1746c5
h264: slice-mt: get last_pic_dropable from master context
...
Fixes fate-h264-conformance-cvnlfi2_sony_h and smllwebdl.mkv from
https://github.com/OpenELEC/OpenELEC.tv/issues/1557 .
CC: libav-stable@libav.org
2012-12-05 23:16:37 +01:00
Justin Ruggles
5e1bbb8c7e
alacenc: add support for multi-channel encoding
2012-12-05 16:13:37 -05:00