Justin Ruggles
2be17a71ae
vmdaudio: correct the silent chunk count in the first block.
...
This fixes A/V sync with several samples, notably:
http://samples.mplayerhq.hu/game-formats/sierra-vmd/swat_*.vmd
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
(cherry picked from commit 6989cb2dae )
2011-02-26 03:16:02 +01:00
Justin Ruggles
c11c79222e
vmdaudio: output audio samples for standalone silent blocks.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
(cherry picked from commit 9b73f78600 )
2011-02-26 03:16:02 +01:00
Justin Ruggles
2ac19b75c0
vmdaudio: remove duplicated code by merging mono and stereo decoding.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
(cherry picked from commit 1328d43313 )
2011-02-26 03:16:02 +01:00
Justin Ruggles
994e445a17
vmdaudio: fix raw_block_size calculation.
...
The size should depend on the output sample size, not the internal bit depth.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
(cherry picked from commit a58bcb40b1 )
2011-02-26 03:15:59 +01:00
Peter Ross
e211e255aa
bink: prevent overflows within binkidct by using int-sized intermediate array
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-25 15:24:35 -05:00
Peter Ross
ccfcddb3f2
Bink version 'b' audio decoder
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-25 15:24:35 -05:00
Peter Ross
8a8c283edd
binkaudio: simplify frame_len_bits and frame_len calculation
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-25 15:24:35 -05:00
Peter Ross
a304def1dc
binkaudio: remove unnecessary loop
...
decode_init sets bands[0] == 2, so this loop always sets the band table
index (k) to zero.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-25 15:24:35 -05:00
Peter Ross
582ac86d19
binkaudio: perform band table scaling in decode_init
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-25 15:24:35 -05:00
Mans Rullgard
8997bb8807
bink: use LOCAL_ALIGNED for aligned stack data
...
Signed-off-by: Mans Rullgard <mans@mansr.com >
2011-02-25 19:50:14 +00:00
Kyle
04973f8082
dxva2: define required feature selection macros
...
Signed-off-by: Mans Rullgard <mans@mansr.com >
2011-02-25 19:48:20 +00:00
Carl Eugen Hoyos
dca85c842d
Mark MS-MPEG4v1 encoder as experimental.
...
The encoder has never produced files that could be decoded
with any software.
2011-02-25 15:39:49 +01:00
Anssi Hannula
7e06e0ede3
dca: use EXT_AUDIO_ID field to determine core extensions
...
This avoids the core substream extensions scan when the EXT_AUDIO_ID
field indicates no extensions or only unsupported extensions. The scan
is done only if the value of EXT_AUDIO_ID is unknown or indicates a
present XCh extension which we can decode.
Signed-off-by: Mans Rullgard <mans@mansr.com >
2011-02-24 21:22:37 +00:00
Justin Ruggles
1108f8998c
vmdaudio: output 8-bit audio as AV_SAMPLE_FMT_U8.
...
There is no need to expand to 16-bits. Just use memcpy() to copy the raw data.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:52:51 -05:00
Justin Ruggles
2ec7862db8
vmdaudio: remove unnecessary fields from VmdAudioContext and use the corresponding AVCodecContext fields instead.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:52:12 -05:00
Justin Ruggles
1e86d685e0
vmdaudio: add out_bps to VmdAudioContext and use it to replace hard-coded sample size.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:51:44 -05:00
Justin Ruggles
1574eff3d2
vmdaudio: simplify vmdaudio_decode_frame() by handling block_type first, then making a single call to vmdaudio_loadsound().
...
This also adds output buffer size checks for AUDIO and SILENCE block types.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:51:12 -05:00
Justin Ruggles
ba9516cca8
cosmetics: reindent after previous commit
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:49:59 -05:00
Justin Ruggles
762b386e4a
vmdaudio: move all silence chunk handling to vmdaudio_loadsound().
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:49:58 -05:00
Justin Ruggles
8e9027d266
cosmetics: remove debugging cruft
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:49:56 -05:00
Justin Ruggles
868f2f4d90
cosmetics: reindent after previous commit
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:48:04 -05:00
Justin Ruggles
2d213695fc
vmdaudio: simplify buffer pointer and header size handling.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:12:39 -05:00
Justin Ruggles
7a4fb3fd93
vmdaudio: set *data_size to zero when skipping small packets and add a warning log message.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:11:36 -05:00
Justin Ruggles
22f893e1c9
vmdaudio: validate block type
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:10:12 -05:00
Justin Ruggles
dd1af5136f
vmdaudio: use macros and a local variable for block type.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:08:31 -05:00
Justin Ruggles
6989cb2dae
vmdaudio: correct the silent chunk count in the first block.
...
This fixes A/V sync with several samples, notably:
http://samples.mplayerhq.hu/game-formats/sierra-vmd/swat_*.vmd
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:06:33 -05:00
Justin Ruggles
9b73f78600
vmdaudio: output audio samples for standalone silent blocks.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:04:51 -05:00
Justin Ruggles
1328d43313
vmdaudio: remove duplicated code by merging mono and stereo decoding.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 21:02:19 -05:00
Justin Ruggles
a58bcb40b1
vmdaudio: fix raw_block_size calculation.
...
The size should depend on the output sample size, not the internal bit depth.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com >
2011-02-23 20:58:56 -05:00
Michael Niedermayer
8311150620
Make FF_DEBUG_DCT_COEFF output coeffs via av_log() instead of just via AVFrame.
...
This allows the values to be used without changing C code and is closer to how
the other DEBUG flags work.
If this causes a problem for any user of this flag, please tell me and
ill split the flag in 2.
2011-02-23 23:42:35 +01:00
Young Han Lee
4f84e728da
aacdec: Reduce the size of buf_mdct.
...
It was doubled in size for the LTP implementation. This brings it back
down to its original size.
(cherry picked from commit e22910b21a )
2011-02-22 02:44:39 +01:00
Mans Rullgard
644b66cd4a
vp8: ppc: fix invalid reads in altivec epel mc
...
The 4-tap filters should only access one row/column before the
reference block.
Signed-off-by: Mans Rullgard <mans@mansr.com >
(cherry picked from commit e0e46cae37 )
2011-02-22 02:44:39 +01:00
Mans Rullgard
e407f4173a
ppc: fix vc1 inverse transform, unbreak build
...
GCC 4.3 and later are more particular about signedness matching
in vector operations. The operations under if(rangered) were
missing assignments and thus had no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com >
(cherry picked from commit 381efba0ec )
2011-02-22 02:44:39 +01:00
Ronald S. Bultje
e48fe14a54
targa: prevent integer overflow in bufsize check.
...
(cherry picked from commit 78e2380a6d )
2011-02-22 02:44:37 +01:00
Ronald S. Bultje
6a786b15c3
VC1: merge idct8x8, coeff adjustments and put_pixels.
...
Merging these functions allows merging some loops, which makes the
results (particularly after SIMD optimizations) much faster.
(cherry picked from commit f8bed30d8b )
2011-02-22 02:44:36 +01:00
Ronald S. Bultje
34bb0575c1
dsputil: make {add/put/put_signed}_pixels_clamped() non-static.
...
(cherry picked from commit 484a337cd7 )
2011-02-22 02:44:36 +01:00
Ronald S. Bultje
713f490467
VC1: inline vc1_put_block() in vc1_decode_i_blocks().
...
Advantage is that it allows us to combine several loops into a single
one, and these can eventually be merged into the IDCT itself. Also, it
allows us to remove vc1_put_block(), and makes CODEC_FLAG_GRAY faster.
(cherry picked from commit bbfd2e7ab4 )
2011-02-22 02:44:35 +01:00
Mans Rullgard
46382ae2ec
amrnb: use correct size when copying lsf_r array
...
lsf_r is an array of int16_t, not float.
Signed-off-by: Mans Rullgard <mans@mansr.com >
(cherry picked from commit 1efa772e20 )
2011-02-22 02:38:41 +01:00
Young Han Lee
e22910b21a
aacdec: Reduce the size of buf_mdct.
...
It was doubled in size for the LTP implementation. This brings it back
down to its original size.
2011-02-21 16:35:22 -08:00
Mans Rullgard
e0e46cae37
vp8: ppc: fix invalid reads in altivec epel mc
...
The 4-tap filters should only access one row/column before the
reference block.
Signed-off-by: Mans Rullgard <mans@mansr.com >
2011-02-21 20:28:41 +00:00
Mans Rullgard
381efba0ec
ppc: fix vc1 inverse transform, unbreak build
...
GCC 4.3 and later are more particular about signedness matching
in vector operations. The operations under if(rangered) were
missing assignments and thus had no effect.
Signed-off-by: Mans Rullgard <mans@mansr.com >
2011-02-21 20:28:37 +00:00
Ronald S. Bultje
78e2380a6d
targa: prevent integer overflow in bufsize check.
2011-02-21 13:44:37 -05:00
Ronald S. Bultje
f8bed30d8b
VC1: merge idct8x8, coeff adjustments and put_pixels.
...
Merging these functions allows merging some loops, which makes the
results (particularly after SIMD optimizations) much faster.
2011-02-21 10:23:44 -05:00
Ronald S. Bultje
484a337cd7
dsputil: make {add/put/put_signed}_pixels_clamped() non-static.
2011-02-21 10:23:44 -05:00
Ronald S. Bultje
bbfd2e7ab4
VC1: inline vc1_put_block() in vc1_decode_i_blocks().
...
Advantage is that it allows us to combine several loops into a single
one, and these can eventually be merged into the IDCT itself. Also, it
allows us to remove vc1_put_block(), and makes CODEC_FLAG_GRAY faster.
2011-02-21 10:23:44 -05:00
Ronald S. Bultje
a8858ee11c
VC1: don't use vc1_put_block() in vc1_decode_i_blocks_adv().
...
Advanced profile never uses "range reduction", so vc1_put_block() quite
literally just calls put_pixels_clamped() from vc1_decode_i_blocks_adv().
By inlining the function, we can prevent calling IDCT8x8 if
CODEC_FLAG_GRAY is set, and we don't have to scale the coeffs in the
[0,256] range, but can instead use put_signed_pixels_clamped().
(cherry picked from commit 70aa916e46 )
2011-02-20 19:05:47 +01:00
Ronald S. Bultje
6a717eb4aa
dsputil_mmx.c: remove ff_vector128.
...
Remove ff_vector128, it is identical to ff_pb_80.
(cherry picked from commit bf6fa73245 )
2011-02-20 19:05:46 +01:00
Reimar Döffinger
c614d32e22
Fix invalid reads in VC1 decoder
...
Patch discussed and taken from https://roundup.ffmpeg.org/issue2584
(cherry picked from commit 2bbec1eda4 )
2011-02-20 19:05:46 +01:00
David Conrad
0cfcbf217f
Fix VP3 edge emulation
...
With negative stride, the start of the edge_emu buffer should be pointing to
the last line, not the end of the buffer.
With positive stride, pointing to the end of the buffer was completely wrong.
(cherry picked from commit a89f4ca005 )
2011-02-20 19:05:46 +01:00
Young Han Lee
695f39c80b
aacdec: dsputilize the scalar multiplication in intensity stereo
...
(cherry picked from commit 9707f84fa7 )
2011-02-20 19:05:45 +01:00