Justin Ruggles
b972c06a8f
cosmetics: indentation and line wrap
...
Originally committed as revision 19587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:58:28 +00:00
Justin Ruggles
c36ea0600c
cosmetics after last commit
...
Originally committed as revision 19586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:14:28 +00:00
Justin Ruggles
3f93716809
Modify decode_band_structure() so that the actual band structure is only
...
used within the function. This removes the need to have the coupling band
structure stored in the AC3DecodeContext.
Originally committed as revision 19585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:13:42 +00:00
Justin Ruggles
603139022d
Use coupling band sizes instead of coupling band structure when
...
calculating coupling transform coefficients.
Originally committed as revision 19584 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-05 01:00:41 +00:00
Justin Ruggles
eb98cdfa8d
cosmetics: add more detailed information to the documentation for
...
decode_band_structure().
Originally committed as revision 19577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-03 22:05:31 +00:00
Diego Biurrun
d15153244f
refactoring: properly separate AC-3 and E-AC-3 code
...
Originally committed as revision 19501 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-23 02:33:25 +00:00
Diego Biurrun
89547cfb36
Make sure that eac3_decoder only gets enabled when CONFIG_EAC3_DECODER is set.
...
Originally committed as revision 19500 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-23 00:15:23 +00:00
Ronald S. Bultje
ce863d7f36
Rename ff_log_missing_feature() to av_log_missing_feature().
...
Originally committed as revision 19294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-29 19:07:04 +00:00
Justin Ruggles
ae04de316f
eac3dec: revert commit r18860. keep the AHT IDCT 24-bit. will make AHT GAQ
...
dequantization 24-bit in a separate commit.
Originally committed as revision 18887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-21 00:09:23 +00:00
Diego Biurrun
1754fe4d30
The AC-3 decoder is now LGPL. Exchange the license header and change references
...
in the build system and documentation that mark it as GPL.
Originally committed as revision 18876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-19 22:58:09 +00:00
Jason Garrett-Glaser
d869a460db
LGPL version of ac3_decode_transform_coeffs_ch, ~12.4% faster.
...
Originally committed as revision 18875 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-19 21:29:21 +00:00
Justin Ruggles
9a7a71ed4c
eac3dec: use 16-bit pre-mantissas instead of 24-bit in AHT decoding. it is
...
simpler and also fixes a bug in GAQ dequantization.
Originally committed as revision 18860 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-17 06:53:24 +00:00
Justin Ruggles
1ac7d1ac50
ac3dec: fix coupling range check. the start subband must be less than
...
the end subband.
Originally committed as revision 18857 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-16 17:02:44 +00:00
Siarhei Siamashka
7d485f165f
Support for getting (i)MDCT output multiplied by a constant scaling factor.
...
Scaling (i)MDCT output has no runtime overhead and can be used to improve
performance of audio codecs. All the changes are only needed in
'ff_mdct_init' function and slow down initialization a bit.
Originally committed as revision 18855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-16 14:17:08 +00:00
Justin Ruggles
778bc09bbe
cosmetics: line wrap and vertical alignment
...
Originally committed as revision 18752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-06 01:48:14 +00:00
Justin Ruggles
396b73c7f7
ac3dec: Remove unneeded context variable, num_cpl_subbands. It is also
...
not needed for spectral extension or enhanced coupling since it is
redundant information, so I am removing it from decode_band_structure()
as well.
Originally committed as revision 18751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-06 01:47:34 +00:00
Justin Ruggles
52dc3fc83d
cosmetics: indentation after last commit
...
Originally committed as revision 18750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-05 23:39:10 +00:00
Justin Ruggles
13ec942869
ac3dec: move channel remapping to outside of block loop
...
Originally committed as revision 18749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-05 23:38:12 +00:00
Justin Ruggles
bfeca7beb6
Add channel layout support to the AC-3 decoder and AC-3 parser.
...
Originally committed as revision 18622 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-19 15:05:32 +00:00
Justin Ruggles
95f3019a51
ac3dec: reorder output channels to SMPTE channel order
...
Originally committed as revision 18542 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-17 08:43:04 +00:00
Thilo Borgmann
7a00bbad21
Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
...
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.
Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.
Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
Diego Biurrun
406792e7b0
cosmetics: Remove pointless period after copyright statement non-sentences.
...
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Alex Converse
11d6f38cc9
Factorise enum of AC3 error types to be usable by AAC in the ADTS patch that
...
will follow
Patch by Alex Converse ( alex converse gmail com )
Originally committed as revision 16479 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-07 18:10:10 +00:00
Stefano Sabatini
dbbec0c2f2
Make av_log_missing_feature an internal function, and change its name
...
to ff_log_missing_feature.
Originally committed as revision 16037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-08 21:21:38 +00:00
Justin Ruggles
20e047262f
cosmetics: alignment after last commit
...
Originally committed as revision 16035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-08 03:15:10 +00:00
Justin Ruggles
72a6244b5d
ac3: detect dba errors and prevent writing past end of array
...
Originally committed as revision 16034 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-08 03:13:20 +00:00
Justin Ruggles
2ceccf045c
ac3dec: simplify exponent bounds checking
...
Originally committed as revision 16022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 16:33:16 +00:00
Justin Ruggles
96f229d6c0
ac3dec: unroll inner loop in exponent decoding. 46% faster decode_exponents().
...
Originally committed as revision 16018 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 15:46:23 +00:00
Justin Ruggles
806703243e
cosmetics: vertical alignment
...
Originally committed as revision 16017 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 15:38:21 +00:00
Justin Ruggles
1cdd567f31
cosmetics: reindent after last commit
...
Originally committed as revision 16016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 15:37:04 +00:00
Justin Ruggles
ce7d842fa6
ac3dec: detect out-of-range exponents
...
Originally committed as revision 16015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 15:36:23 +00:00
Justin Ruggles
f23dc1e1f9
silence gcc warning: ‘n_bands’ may be used uninitialized
...
Originally committed as revision 15999 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-04 02:56:25 +00:00
Justin Ruggles
75b53b2123
ac3dec: use uint8_t for band sizes
...
Originally committed as revision 15998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-04 02:51:39 +00:00
Justin Ruggles
af2272b209
ac3dec: skip decoding and use error concealment for remaining blocks in
...
the frame after an error occurs.
Originally committed as revision 15987 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-03 03:34:31 +00:00
Justin Ruggles
e202cc2580
revert r15812 (E-AC-3 Spectral Extension) pending further review
...
Originally committed as revision 15818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 22:38:38 +00:00
Justin Ruggles
3f3ca7ac07
cosmetics: vertical alignment
...
Originally committed as revision 15815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:28 +00:00
Justin Ruggles
c763f86728
silence a gcc warning about using an uninitialized variable
...
Originally committed as revision 15814 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:24 +00:00
Justin Ruggles
66561189a1
cosmetics: indentation
...
Originally committed as revision 15813 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:18 +00:00
Justin Ruggles
0cc51734b2
add support for spectral extension
...
Originally committed as revision 15812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:13 +00:00
Justin Ruggles
0c5d750df9
add a generic function to decode banding structure for coupling, spectral
...
extension, or enhanced coupling
Originally committed as revision 15811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:07 +00:00
Justin Ruggles
6c6f927289
add a line break in error message text
...
Originally committed as revision 15810 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:18:01 +00:00
Justin Ruggles
6ee6d068f7
simplify decoding of coupling frequency range
...
Originally committed as revision 15809 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:17:56 +00:00
Justin Ruggles
24834c1928
cosmetics: rename two variables
...
Originally committed as revision 15808 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-13 03:17:50 +00:00
Michael Niedermayer
047599a4ba
Rename error_resilience to error_recognition.
...
Originally committed as revision 15270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-08 18:18:49 +00:00
Justin Ruggles
2988c93d94
create a separate codec_id for E-AC-3
...
Originally committed as revision 15143 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-01 14:33:54 +00:00
Justin Ruggles
1f6a594de4
turn on E-AC-3 decoding support and update the Changelog
...
Originally committed as revision 15103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 03:08:18 +00:00
Justin Ruggles
f2e4eb62dc
cosmetics: indentation
...
Originally committed as revision 15089 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 02:32:08 +00:00
Justin Ruggles
8dfc56ec32
commit more OKed parts of the E-AC-3 decoder
...
Originally committed as revision 15087 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-31 02:30:09 +00:00
Justin Ruggles
225c30429d
commit more OKed parts of the E-AC-3 decoder
...
Originally committed as revision 15068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-30 23:19:23 +00:00
Justin Ruggles
ea364c74a0
cosmetics: update comment about dithering
...
Originally committed as revision 15051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-30 17:51:03 +00:00
Justin Ruggles
e522bd49c8
cosmetics: change another "get" to "decode"
...
Originally committed as revision 15014 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 00:09:47 +00:00
Justin Ruggles
164e169fef
cosmetics: change "get" to "decode"
...
Originally committed as revision 15013 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-29 00:06:43 +00:00
Justin Ruggles
86662b1c89
cosmetics: indentation
...
Originally committed as revision 15012 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-28 23:16:21 +00:00
Justin Ruggles
260e09305b
remove unneeded variable, dither_all
...
Originally committed as revision 15011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-28 23:04:15 +00:00
Justin Ruggles
aec0407faf
cosmetics: indent after last commit
...
Originally committed as revision 15001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 23:23:54 +00:00
Justin Ruggles
6b4bfed965
do not read exponent strategies from each block for E-AC-3 since they are in the header
...
Originally committed as revision 15000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 23:11:05 +00:00
Justin Ruggles
0ffea2439b
copy default coupling band structure from table to decoding context (used for E-AC-3)
...
Originally committed as revision 14990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 01:40:46 +00:00
Justin Ruggles
e43b29ab26
add more OKed parts of the E-AC-3 decoder: structural changes to support AHT mode mantissa decoding
...
Originally committed as revision 14989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 01:36:20 +00:00
Justin Ruggles
6a68105e2b
cosmetics: rename some functions from *get_* to *decode_*
...
Originally committed as revision 14988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-27 01:24:43 +00:00
Justin Ruggles
63d72fb167
fix decoding of coupling leak info for normal AC-3
...
Originally committed as revision 14913 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 03:30:08 +00:00
Justin Ruggles
0569993ea4
cosmetics: indentation
...
Originally committed as revision 14911 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 01:55:52 +00:00
Justin Ruggles
6fafb0202a
add some approved parts of the E-AC-3 decoder
...
Originally committed as revision 14910 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-23 01:51:42 +00:00
Justin Ruggles
ab2a942ad8
cosmetics: indentation
...
Originally committed as revision 14863 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 01:02:32 +00:00
Justin Ruggles
bf09b550e6
commit the OKed parts of the E-AC-3 decoder
...
Originally committed as revision 14860 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 00:32:17 +00:00
Justin Ruggles
e630027686
get data size based on the actual data array instead of coding-in the calculation
...
Originally committed as revision 14859 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 00:15:27 +00:00
Justin Ruggles
8e33132bab
rename AC3_MAX_FRAME_SIZE to AC3_FRAME_BUFFER_SIZE and increase the size
...
Originally committed as revision 14858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-20 00:08:59 +00:00
Justin Ruggles
46dd2738ae
remove some unneeded header includes
...
Originally committed as revision 14819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 19:56:28 +00:00
Justin Ruggles
ec0350c983
use LFG instead of Mersenne Twister for AC-3 PRNG
...
Originally committed as revision 14815 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-17 17:41:48 +00:00
Justin Ruggles
38c1a5c4d9
update my email address to one which does not depend on my service provider
...
Originally committed as revision 14797 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-16 22:42:59 +00:00
Loren Merritt
911e21a306
simd int->float
...
20% faster ac3 if downmixing, 15% if not
Originally committed as revision 14743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:35:40 +00:00
Loren Merritt
ac2e556456
simd downmix
...
13% faster ac3 if downmixing
Originally committed as revision 14742 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:33:48 +00:00
Loren Merritt
45d9d61889
don't mark the delayed samples for upmixing if they haven't been downmixed
...
Originally committed as revision 14741 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:30:53 +00:00
Loren Merritt
3b6516f7e7
oops, non-normalized downmix to mono contaminated add_bias for non-simd float-to-int.
...
Originally committed as revision 14740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-13 23:30:28 +00:00
Loren Merritt
557ac0c448
optimize ac3_downmix.
...
1.3x faster 5.1->stereo, 1.9x faster 5.1->mono.
Originally committed as revision 14719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 23:45:46 +00:00
Loren Merritt
72745cff20
use float_to_int16_interleave in ac3
...
Originally committed as revision 14706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 03:01:17 +00:00
Loren Merritt
916d5d6c32
use imdct_half in ac3
...
Originally committed as revision 14705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 01:30:24 +00:00
Loren Merritt
d46ac5bfde
mdct wrapper function to match fft
...
Originally committed as revision 14703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:38:30 +00:00
Loren Merritt
0a570e826d
remove mdct tmp buffer
...
Originally committed as revision 14702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-12 00:36:36 +00:00
Justin Ruggles
5e3e40756e
cosmetics: use a better function name than uncouple_channels()
...
Originally committed as revision 14614 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 01:49:01 +00:00
Justin Ruggles
022845ed05
cosmetics: change function name and comments to refer to block decoding
...
instead of block parsing
Originally committed as revision 14613 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 01:31:40 +00:00
Justin Ruggles
ba7f712c21
remove unneeded local variable
...
Originally committed as revision 14547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 00:32:27 +00:00
Justin Ruggles
55aff0d901
Read bitstream parameters for E-AC-3 streams before returning an error.
...
Originally committed as revision 14528 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 22:29:06 +00:00
Justin Ruggles
602116df9b
Hardcode the table for ungrouping 3 values in 5 bits. It will be reused by
...
the E-AC-3 decoder.
Originally committed as revision 14527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 21:42:43 +00:00
Justin Ruggles
7417120b6f
use the same table for ungrouping exponents and bap=2 mantissas
...
Originally committed as revision 14525 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 19:24:04 +00:00
Justin Ruggles
14b7062829
cosmetics: make all references to AC-3 capitalized and hyphenated
...
Originally committed as revision 14523 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-03 16:42:32 +00:00
Peter Ross
fd76c37fd9
Modify all codecs to report their supported input and output sample format(s).
...
Originally committed as revision 14482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-31 10:47:31 +00:00
Justin Ruggles
4760aec6a0
read 'coupling in use' parameter from bitstream into decoder context first,
...
then copy to the local variable.
Originally committed as revision 14311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 22:01:46 +00:00
Justin Ruggles
7645da9194
cosmetic: use hex value instead of decimal to show relation to 0x7FFFFF
...
Originally committed as revision 14290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 02:54:54 +00:00
Stefano Sabatini
fe4bf37455
Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
...
Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-12 21:50:13 +00:00
Justin Ruggles
227322b837
move rematrixing band table to ac3dec_data.c
...
Originally committed as revision 13716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-08 21:09:02 +00:00
Justin Ruggles
4397d95ce0
split up header parsing function
...
Originally committed as revision 13705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:51 +00:00
Justin Ruggles
da04be10a2
store exp_strategy for all blocks in decode context
...
Originally committed as revision 13704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:47 +00:00
Justin Ruggles
54624396fc
store cpl_in_use for all blocks in decode context
...
Originally committed as revision 13703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:43 +00:00
Justin Ruggles
58ce349f0a
move the decode context and some macro constants to a new file, ac3dec.h
...
Originally committed as revision 13697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:16 +00:00
Justin Ruggles
30f71adc46
move mix level tables from parser to decoder. have parser read bitstream value instead of using an index to a table in the decoder.
...
Originally committed as revision 13696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:09 +00:00
Justin Ruggles
caf0fbc889
add more gain levels and adjust mix level tables accordingly.
...
Originally committed as revision 13695 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:30:03 +00:00
Justin Ruggles
687671f03b
pass bap table to ff_ac3_bit_alloc_calc_bap()
...
Originally committed as revision 13694 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:54 +00:00
Justin Ruggles
4921bbbae5
cosmetics: indent
...
Originally committed as revision 13692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:38 +00:00
Justin Ruggles
aa5d6be8df
skip unsupported frame types and substream id's
...
Originally committed as revision 13691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:27 +00:00
Justin Ruggles
be5f17b96b
read frame type from header info into decode context
...
Originally committed as revision 13690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:19 +00:00
Justin Ruggles
3596aa6fe6
get substreamid from ac3 parser
...
Originally committed as revision 13689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:11 +00:00
Justin Ruggles
6730e9f300
get the number of blocks from the ac3 parser and use in the ac3 decoder.
...
Originally committed as revision 13688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-07 22:29:03 +00:00
Justin Ruggles
7af26d14ac
return error on frame sync error
...
Originally committed as revision 13654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-04 00:31:20 +00:00
Justin Ruggles
fb2b88a816
cosmetics: add a comment, remove a comment
...
Originally committed as revision 13590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 22:12:49 +00:00
Justin Ruggles
9b57545934
simplify
...
Originally committed as revision 13589 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 22:12:01 +00:00
Justin Ruggles
6e74513a48
set lfe params at frame init instead of in every block
...
Originally committed as revision 13588 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 21:57:45 +00:00
Justin Ruggles
b85a15fe73
only calculate number of exponent groups when exponents are not reused.
...
Originally committed as revision 13587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 21:53:31 +00:00
Justin Ruggles
aa148649a4
cosmetics: remove unneeded braces
...
Originally committed as revision 13586 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 21:37:28 +00:00
Justin Ruggles
7e13b31c19
10l: cosmetics
...
Originally committed as revision 13585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 19:59:10 +00:00
Justin Ruggles
e25973a1fd
new dba values requires running last 2 bit allocation stages
...
Originally committed as revision 13584 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 19:56:54 +00:00
Justin Ruggles
ff5d419e2f
get_transform_coeffs() never returns an error, so make the function and its children return void.
...
Originally committed as revision 13582 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 16:04:41 +00:00
Justin Ruggles
fbe52e4188
use enum value for CRC error
...
Originally committed as revision 13580 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 15:31:57 +00:00
Justin Ruggles
c78c6d6c58
move header error logging to after CRC check
...
Originally committed as revision 13579 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-31 15:30:55 +00:00
Justin Ruggles
bd98e9e230
zero the upper frequencies of the correct coefficients
...
Originally committed as revision 13452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-27 00:43:39 +00:00
Justin Ruggles
eccba2bc4b
safer solution for setting audio parameters
...
Originally committed as revision 13402 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 20:02:24 +00:00
Justin Ruggles
cf03a8173a
set audio parameters if frame header is ok, even if crc fails
...
Originally committed as revision 13399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 18:54:17 +00:00
Justin Ruggles
3336110acf
cosmetics: indent
...
Originally committed as revision 13398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 18:06:01 +00:00
Justin Ruggles
ecfe94b294
add error concealment
...
Originally committed as revision 13397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 18:05:15 +00:00
Justin Ruggles
93a2c8c14f
cosmetics: indent
...
Originally committed as revision 13385 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 16:20:06 +00:00
Justin Ruggles
43ad93a4f1
10l: fix error in commit r13382
...
Originally committed as revision 13384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 16:19:44 +00:00
Justin Ruggles
82a591d8d1
add checks for missing information in the first block
...
Originally committed as revision 13382 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 15:34:48 +00:00
Justin Ruggles
3af9131398
add check for invalid channel mode when coupling is used
...
Originally committed as revision 13381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-25 15:23:03 +00:00
Diego Biurrun
245976da2a
Use full path for #includes from another directory.
...
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-09 11:56:36 +00:00
Stefano Sabatini
162d4fc99d
Add long names to AVCodec declarations.
...
patch by Stefano Sabatini, stefano.sabatini-lala poste it
Originally committed as revision 13009 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-27 22:39:51 +00:00
Bartlomiej Wolowiec
55736cfbd2
change ff_ac3_parse_header() to take a GetBitContext instead of const char*
...
Originally committed as revision 12922 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-22 11:14:01 +00:00
Bartlomiej Wolowiec
79b25a27b8
change name from stream type to frame type in AC3 code
...
Originally committed as revision 12623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-28 20:42:55 +00:00
Justin Ruggles
509fdb0b7e
only allocate context input buffer if AVCodecContext.error_reslience is greater than 0.
...
Originally committed as revision 12600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-26 22:36:41 +00:00
Justin Ruggles
984ff38a2b
cosmetics: indentation after last commit
...
Originally committed as revision 12594 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-25 23:34:49 +00:00
Justin Ruggles
c33a196716
additional protection from segmentation faults and memory access errors by
...
copying the input buffer to a local context buffer which is large enough to
hold the largest possible AC3 frame.
Originally committed as revision 12593 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-25 23:34:00 +00:00
Bartlomiej Wolowiec
4e6eeaf019
using stream type in eac3 parser
...
Originally committed as revision 12570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-24 21:25:49 +00:00
Zuxy Meng
98a6fff98c
Apply 'cold' attribute to init/uninit functions in libavcodec
...
Originally committed as revision 12525 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-21 03:11:20 +00:00
Justin Ruggles
98f6dfa653
make input buffer const, as it should be. fixes a warning.
...
Originally committed as revision 12418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-10 21:59:30 +00:00
Justin Ruggles
38dae9c3a6
downmix before imdct unless different size transforms are used. about 20%
...
faster 5.1-to-stereo downmixing.
Originally committed as revision 12397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-09 17:05:19 +00:00
Justin Ruggles
d8870f120e
use scale factor instead of sum for downmix level adjustment. avoids division
...
inside downmix loop. 7% faster 5.1-to-stereo downmixing.
Originally committed as revision 12287 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-01 16:10:19 +00:00
Justin Ruggles
9d10e6e6c0
pre-calculate downmix coefficient sums. 2% faster 5.1-to-stereo downmixing.
...
Originally committed as revision 12286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-01 15:48:18 +00:00
Justin Ruggles
a4de6dd2c1
Use 24-bit fixed-point transform coefficients until just before MDCT. This
...
gives 7% faster decoding on average.
Originally committed as revision 12284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-03-01 04:39:39 +00:00
Robert Swain
3ed546fe52
Add variable alpha and size of half window for Kaiser-Bessel Derived window
...
generation. Hard code Bessel I0 approximation iterations to 50.
See thread for discussion:
[FFmpeg-devel] [PATCH] Move Kaiser-Bessel Derived window to mdct.c
Started on the 2008/01/10
Originally committed as revision 11520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-13 11:02:08 +00:00
Robert Swain
4eb7a735cb
Make the Kaiser-Bessel window generator a common function
...
Patch by Robert Swain, robert d swain a gmail d com
Originally committed as revision 11514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-12 11:11:19 +00:00
Justin Ruggles
f34b221bd2
used defined name for testing error resilience level
...
Originally committed as revision 11478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-08 23:44:48 +00:00
Justin Ruggles
f0b3a7ba12
split out init of downmix coeffs into a separate function that can be called
...
only when needed
Originally committed as revision 11441 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-07 00:18:02 +00:00
Justin Ruggles
82a6c4811a
remove unneeded variable from AC3DecodeContext
...
Originally committed as revision 11439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-06 23:56:19 +00:00
Justin Ruggles
4bc829bb8f
make sure that the last coupling band stops at the end of the coupling range
...
Originally committed as revision 11438 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-06 23:33:30 +00:00
Justin Ruggles
b02fbf7536
fix phase flag processing for the case when coupling coordinates are reused
...
for the right channel, but new for the left channel
Originally committed as revision 11436 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-06 20:15:24 +00:00
Justin Ruggles
646800f79c
move E-AC3 header parsing to ff_ac3_parse_header()
...
Originally committed as revision 11420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-05 18:39:55 +00:00
Justin Ruggles
86ad4c7e1b
remove unneeded variables from AC3HeaderInfo
...
Originally committed as revision 11419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-05 17:04:57 +00:00
Justin Ruggles
2816d32310
cosmetics: indentation
...
Originally committed as revision 11416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-05 15:23:39 +00:00
Justin Ruggles
95283c1701
check for request_channels at codec init
...
Originally committed as revision 11415 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-05 15:22:53 +00:00
Aurelien Jacobs
3abe5fbdc4
improve CRC API
...
- don't export any global var
- provide either generated or hardcoded tables
Originally committed as revision 11409 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-04 23:09:58 +00:00
Justin Ruggles
7564658bbc
cosmetics: indentation and add a TODO comment
...
Originally committed as revision 11389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-04 00:39:03 +00:00
Justin Ruggles
471db688c6
only check ac3 crc if AVCodecContext.error_resilience > 0
...
Originally committed as revision 11388 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-03 23:05:53 +00:00
Justin Ruggles
d6939960d5
add crc check to ac3 decoder
...
Originally committed as revision 11379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-03 02:26:29 +00:00
Justin Ruggles
12eaa3b760
simplify
...
Originally committed as revision 11360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 22:58:20 +00:00
Justin Ruggles
b35c67e58b
pass an AC3DecodeContext to ac3_downmix() instead of multiple arguments
...
Originally committed as revision 11359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 22:28:17 +00:00
Justin Ruggles
866181e5e8
cosmetics: rename sampling_rate to sample_rate
...
Originally committed as revision 11358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 21:26:30 +00:00
Justin Ruggles
0345fade94
do not need to cast a (void *)
...
Originally committed as revision 11357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 21:24:49 +00:00
Justin Ruggles
1b70d88b7a
cosmetics: vertical realignment after last commit
...
Originally committed as revision 11356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 21:09:08 +00:00
Justin Ruggles
d802d7ca12
cosmetics: rename all AC3DecodeContext variables from ctx to s
...
Originally committed as revision 11355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 20:58:50 +00:00
Justin Ruggles
23c8cb89c9
cosmetics: rename GetBitContext gb to gbc
...
Originally committed as revision 11354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 20:47:22 +00:00
Justin Ruggles
005ab694ae
remove unused context variable
...
Originally committed as revision 11353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-30 03:10:18 +00:00
Justin Ruggles
1408352ada
Add option for user to scale the amount of dynamic range compression which is
...
applied by the audio decoder, and use that option in the AC3 decoder.
Originally committed as revision 11280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-20 00:55:08 +00:00
Justin Ruggles
03726b7042
Skip dialog normalization. It shouldn't be used by the decoder, and there is
...
not currently a clean way to pass the value to the user.
Originally committed as revision 11246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-17 01:09:00 +00:00
Justin Ruggles
224bc440b2
Revert commit made in revision 11228. I'm getting some strange results in the
...
downmixed output that I can't quite figure out.
Originally committed as revision 11245 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-17 01:03:19 +00:00
Justin Ruggles
b40211ff67
downmix before the IMDCT if no block switching is used
...
Originally committed as revision 11228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-16 04:25:50 +00:00
Andreas Öman
6708eefe55
Make AC3 decoder honor avctx->request_channels
...
Originally committed as revision 11220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-15 07:00:19 +00:00
Justin Ruggles
e2270b4e1e
cosmetics: rename ac3 decoder variables
...
Originally committed as revision 11197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-09 03:28:10 +00:00
Justin Ruggles
e59cc20593
cosmetics: rename common ac3 variables
...
Originally committed as revision 11196 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-09 03:27:14 +00:00
Justin Ruggles
5ce2134258
cosmetics: rename ac3 bit allocation variables
...
Originally committed as revision 11194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-09 03:23:04 +00:00
Justin Ruggles
66ecf18e38
cosmetics: rename ac3 tables
...
Originally committed as revision 11193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-09 03:21:33 +00:00
Diego Biurrun
56cc85a068
Misc spelling fixes, prefer American over British English.
...
Originally committed as revision 11126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-02 15:43:08 +00:00
Justin Ruggles
a135bea507
skip incomplete frames
...
Originally committed as revision 10497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-15 02:44:28 +00:00
Justin Ruggles
3df880934e
better AC3 header error reporting
...
Originally committed as revision 10496 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-15 02:41:24 +00:00
Justin Ruggles
d5b7144e1f
fix random dithering of zero-bit mantissas
...
Originally committed as revision 10495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-15 00:43:40 +00:00
Justin Ruggles
bfcf690c68
cosmetics: rename variables. tbl->tab for consistency with other AC3 tables
...
Originally committed as revision 10494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-15 00:19:21 +00:00
Justin Ruggles
396a6ee50e
fix decoding of DolbyNet AC3
...
Originally committed as revision 10493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-15 00:00:57 +00:00
Justin Ruggles
222ae64c3d
cosmetics: vertical alignment
...
Originally committed as revision 10002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-09 00:39:35 +00:00
Justin Ruggles
5066f51502
comments modification: add, clean up, Doxygenize, and reword
...
Originally committed as revision 10001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-09 00:36:49 +00:00
Justin Ruggles
f5cefb21d5
cosmetics: blank lines, remove some comments
...
Originally committed as revision 9955 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-05 21:48:46 +00:00
Justin Ruggles
82758fd690
add pointer to the parent context for use with av_log()
...
Originally committed as revision 9954 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-05 21:34:33 +00:00
Justin Ruggles
77416325cb
use array for dynamic range scaling factors
...
Originally committed as revision 9953 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-05 21:10:09 +00:00
Justin Ruggles
01f354531d
add dialogue normalization
...
Originally committed as revision 9948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-05 19:36:35 +00:00
Justin Ruggles
3bbb0bf82c
add support for downmixing to stereo or mono
...
Originally committed as revision 9916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 22:32:17 +00:00
Justin Ruggles
4e09232070
use dsputil for float to signed 16-bit sample conversion
...
Originally committed as revision 9914 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 20:59:22 +00:00
Justin Ruggles
775369e028
cosmetics: indentation
...
Originally committed as revision 9911 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 20:32:57 +00:00
Justin Ruggles
7b4076a777
consolidate decoding of lfe and coupling channels with decoding of full-bandwidth channels.
...
Originally committed as revision 9910 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 19:19:48 +00:00
Justin Ruggles
5e61de0cc1
there are only 4 rematrixing bands
...
Originally committed as revision 9908 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 15:01:21 +00:00
Justin Ruggles
75b9b0369b
cosmetics: use more appropriate names for iterator variables.
...
Originally committed as revision 9907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 13:52:56 +00:00
Justin Ruggles
8e2eb3b674
move some variables to a more local scope.
...
Originally committed as revision 9905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 13:30:37 +00:00
Justin Ruggles
0bff58a59a
make exponent decoding consistent (prepare for merging coupling and lfe code with normal channel code).
...
Originally committed as revision 9904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 13:26:46 +00:00
Justin Ruggles
eaf84d970f
cosmetics: use braces when it makes the code easier to read.
...
Originally committed as revision 9893 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 12:04:41 +00:00
Justin Ruggles
fc59010bbf
change AC3DecodeContext variable to local variable
...
Originally committed as revision 9892 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 11:55:10 +00:00
Justin Ruggles
6d96d626c6
use array instead of bitmask
...
Originally committed as revision 9891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 11:39:47 +00:00
Justin Ruggles
3357ff338b
use table for converting dynamic range codes to scale factors
...
Originally committed as revision 9889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 03:27:05 +00:00
Justin Ruggles
5aefe3ebef
use floating-point mantissa dequantization tables
...
Originally committed as revision 9888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 03:21:17 +00:00
Justin Ruggles
04ac5cada1
cosmetics: indentation
...
Originally committed as revision 9887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 01:14:14 +00:00
Justin Ruggles
60f07fadd3
dither zero-bit mantissas by default. remove dithering only if it's explicitly turned off.
...
Originally committed as revision 9886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 01:13:08 +00:00
Justin Ruggles
d63f6fea50
simplify coefficient decoding
...
Originally committed as revision 9884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 00:12:23 +00:00
Justin Ruggles
285bf28c67
merge decoding of coupling channel coefficients and regular channel coefficients
...
Originally committed as revision 9883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-04 00:04:17 +00:00
Justin Ruggles
d7dc7ad05c
split out coupling coefficient reconstruction into a separate function
...
Originally committed as revision 9882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-03 23:53:53 +00:00
Justin Ruggles
dfd57c366f
align array used in mdct. fixes segfault.
...
Originally committed as revision 9848 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-01 01:13:58 +00:00
Justin Ruggles
8b60bbbf5b
simplify stereo rematrixing
...
Originally committed as revision 9824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-29 00:58:32 +00:00
Justin Ruggles
b6acc57f88
change 2 fields from context to local variables
...
Originally committed as revision 9823 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-29 00:35:30 +00:00
Justin Ruggles
8fbb368d2c
BLOCK_SIZE is not used properly, just use numbers instead to avoid confusion
...
Originally committed as revision 9822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-28 20:50:25 +00:00
Justin Ruggles
7bfd22f25a
remove broken downmixing. will add new implementation later.
...
Originally committed as revision 9821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-28 19:33:19 +00:00
Justin Ruggles
4611b64ec1
simplify snr offset and bit allocation
...
Originally committed as revision 9784 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-24 02:08:27 +00:00
Justin Ruggles
e9a3824880
only use sized data types when necessary
...
Originally committed as revision 9783 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-24 01:43:47 +00:00
Justin Ruggles
8f58a4c943
set bit allocation parameters directly instead of copying
...
Originally committed as revision 9782 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-24 01:35:25 +00:00
Justin Ruggles
e2cd6686fa
use enum value instead of numerical value for acmod
...
Originally committed as revision 9781 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-23 22:47:49 +00:00
Justin Ruggles
bc8edb7e53
use consistent data type for exponents. needs to be int8_t to pass to bit allocation.
...
Originally committed as revision 9780 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-23 22:23:37 +00:00
Justin Ruggles
878c40a137
change some bit masks to arrays
...
Originally committed as revision 9779 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-23 22:16:15 +00:00
Justin Ruggles
bec37145da
cosmetics: indentation
...
Originally committed as revision 9774 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-21 17:03:30 +00:00
Justin Ruggles
9fc1ab722e
Use shared AC-3 header parsing. Move some initializations to block parsing function.
...
Originally committed as revision 9773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-21 16:28:12 +00:00
Justin Ruggles
9ef6039043
don't need to synchronize in the decoder. the parser does that already.
...
Originally committed as revision 9772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-21 13:56:04 +00:00
Justin Ruggles
de34875c75
get rid of an ugly macro
...
Originally committed as revision 9771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-21 11:54:19 +00:00
Justin Ruggles
614e9b2424
don't need to define ALT_BITSTREAM_READER
...
Originally committed as revision 9752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 02:21:14 +00:00
Justin Ruggles
362664215d
update license header. add copyright for myself. correct and complete the statement about liba52.
...
Originally committed as revision 9751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 02:16:20 +00:00
Justin Ruggles
3bb004fcda
revise comment for exponent decoding function
...
Originally committed as revision 9750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 02:09:58 +00:00
Justin Ruggles
4415076f55
new implementation of exponent decoding
...
Originally committed as revision 9749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 02:04:05 +00:00
Justin Ruggles
d699d38393
cosmetics: indentation
...
Originally committed as revision 9748 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 00:51:19 +00:00
Justin Ruggles
0ce668015f
remove portions of bit allocation which are no longer needed since they are shared with the encoder
...
Originally committed as revision 9747 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-19 00:50:31 +00:00
Justin Ruggles
0de73a46ff
fix the 256-point MDCT
...
Originally committed as revision 9685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 14:47:39 +00:00
Justin Ruggles
623b79435d
use shared ac3 bit allocation function
...
Originally committed as revision 9684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 13:53:42 +00:00
Justin Ruggles
fa67992dea
no need for the decoder to have the license as a prefix
...
Originally committed as revision 9682 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 01:38:13 +00:00
Justin Ruggles
76d357fd23
remove a debugging function and variable, and remove the commented-out code which uses them.
...
Originally committed as revision 9681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 01:35:46 +00:00
Justin Ruggles
a39532b0d9
ABS -> FFABS
...
Originally committed as revision 9680 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 01:32:04 +00:00
Justin Ruggles
cc2a8443eb
move some common values to ac3.h and utilize them
...
Originally committed as revision 9679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-15 01:31:09 +00:00
Justin Ruggles
cb503702ee
use random number generator from libavutil
...
Originally committed as revision 9678 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 23:57:05 +00:00
Justin Ruggles
9d10960194
10l to me. I accidentally removed a word.
...
Originally committed as revision 9677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 22:17:23 +00:00
Justin Ruggles
0ec2cc35f7
revise license header for simplicity and consistency
...
Originally committed as revision 9676 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 18:53:56 +00:00
Justin Ruggles
283614b5fc
make ac3dec.c GPL until violations are fixed
...
Originally committed as revision 9674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:07:56 +00:00
Justin Ruggles
967d397a6c
AC-3 decoder, soc revision 402, Jul 14 13:45:14 2007 UTC by jbr
...
merge ac3_decoder.h into ac3_decoder.c
Originally committed as revision 9673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:06:14 +00:00
Loren Merritt
afb46fc092
AC-3 decoder, soc revision 148, Sep 28 18:38:27 2006 UTC by banan
...
Enable sse imdct, patch by Loren Merrit.
Originally committed as revision 9672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:05:39 +00:00
Justin Ruggles
de17eee70f
AC-3 decoder, soc revision 109, Sep 22 22:42:54 2006 UTC by banan
...
Cosmetics.
Originally committed as revision 9671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:05:13 +00:00
Justin Ruggles
1ea76064b4
AC-3 decoder, soc revision 72, Sep 7 04:20:00 2006 UTC by cloud9
...
fix short block imdct.
Originally committed as revision 9670 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:04:40 +00:00
Justin Ruggles
c7cfc48f37
AC-3 decoder, soc revision 71, Sep 4 09:47:12 2006 UTC by cloud9
...
Redundant code cleanup.
Optimized dither generation.
Minor optimization in bit allocation.
Comments.
Originally committed as revision 9669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:04:17 +00:00
Justin Ruggles
860fe8c908
AC-3 decoder, soc revision 70, Aug 31 18:04:23 2006 UTC by banan
...
Cosmetics, white space removal.
Originally committed as revision 9668 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:03:47 +00:00
Justin Ruggles
6dc5d71f97
AC-3 decoder, soc revision 69, Aug 31 07:12:56 2006 UTC by cloud9
...
Fix the bugs:
1. The quality of output because of incorrect windowing coefficients.
New code for window generation.
2. Dynrng values were reset where dynrng value is present in the first block,
but not in the subsequent block.
Originally committed as revision 9667 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:03:14 +00:00
Justin Ruggles
d7bcc4adcf
AC-3 decoder, soc revision 58, Aug 19 14:20:45 2006 UTC by cloud9
...
Further optimizations.
Originally committed as revision 9666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:02:32 +00:00
Justin Ruggles
1d0a6f5209
AC-3 decoder, soc revision 57, Aug 19 12:44:38 2006 UTC by cloud9
...
Optimization as suggested by Benjamin.
Originally committed as revision 9665 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:02:08 +00:00
Justin Ruggles
032732d49d
AC-3 decoder, soc revision 56, Aug 17 14:21:58 2006 UTC by cloud9
...
Acknowledgements.
Originally committed as revision 9664 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:01:44 +00:00
Justin Ruggles
e6bca37c81
AC-3 decoder, soc revision 55, Aug 17 12:25:24 2006 UTC by cloud9
...
Remove more unnecessary headers.
Codec initialization changed to use name => argument notation.
Originally committed as revision 9663 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:01:14 +00:00
Justin Ruggles
3ff88ff45a
AC-3 decoder, soc revision 54, Aug 17 09:13:08 2006 UTC by cloud9
...
Remove unnecessary header files.
Originally committed as revision 9662 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:00:38 +00:00
Justin Ruggles
262d8702a9
AC-3 decoder, soc revision 53, Aug 17 08:53:44 2006 UTC by cloud9
...
Converted the window from double to float.
Now sound produced is as good as sound produced by liba52.
Originally committed as revision 9661 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 16:00:05 +00:00
Justin Ruggles
67414da7f7
AC-3 decoder, soc revision 52, Aug 16 22:45:07 2006 UTC by cloud9
...
Reset the blksw and dithflag to 0 at the begining of each block.
Otherwise blockswitching propagates over multiple frames even if
block switching is not enabled for that frame.
Also reuse rematflg.
Originally committed as revision 9660 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:59:25 +00:00
Justin Ruggles
45b0ed13a8
AC-3 decoder, soc revision 48, Aug 16 11:27:49 2006 UTC by cloud9
...
I realized that the bug was not in the imdct routine but in the
get_transform_coeffs.
Fixed it.
Code now uses the ffmpeg's imdct routines.
All the mplayer's ac3 samples are decoded
successfully.
Also improved downmixing.
Now all the downmixing coeffcients for channels
are normalized such that the sum of coefficients
used to construct the output for single channel
never exceeds 1.0.
Originally committed as revision 9659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:58:42 +00:00
Justin Ruggles
2fbbd087bb
AC-3 decoder, soc revision 40, Aug 9 00:10:14 2006 UTC by cloud9
...
More code cleanup.
Window is now runtime generated.
Fixed the bugs in rematrixing routine and
in Decoding AC3 Bitstreams when coupling is in use.
Still struggling to find out what affects the quality of
the produced sound. Can anybody have a look at the
imdct routines do_imdct_256 and do_imdct_512 and tell me
whether it is the correctly implemented as described in
standard.
Originally committed as revision 9658 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:57:51 +00:00
Justin Ruggles
98a27a8a84
AC-3 decoder, soc revision 38, Aug 7 00:03:00 2006 UTC by cloud9
...
major code cleanup.
correct implementation of imdct.
implemented imdct for block switching also.
when coupling is not in use all the
ac3 streams are decoded correctly.
but when coupling is in use there is a bug.
i am currently finding the root of the bug.
if anybody can help.
Originally committed as revision 9657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:56:55 +00:00
Justin Ruggles
41277578b9
AC-3 decoder, soc revision 34, Jul 18 14:27:54 2006 UTC by cloud9
...
working decoder
imdct for block switching is to be implemented
various other things to do
Originally committed as revision 9656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:51:00 +00:00
Justin Ruggles
6bd4660cdb
AC-3 decoder, soc revision 33, Jul 17 12:13:40 2006 UTC by cloud9
...
getting weired output
but its working
Originally committed as revision 9655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:49:12 +00:00
Justin Ruggles
486637af8e
AC-3 decoder, soc revision 32, Jul 17 09:37:32 2006 UTC by cloud9
...
Latest commit.
There is no error in parsing and or recovering transform coefficients.
Double checked with ac3dec.
Getting consistent results with the bit allocation routine and transform
coefficients.
The code is able to parse valid ac3 bitstreams without error from start
to end.
I have also implemented the imdct when block switching is not enabled.
However, can anybody provide an insight into how to convert float samples to
int16_t ? lrint is of no help cuz it produces output -1, 0 or 1 whereas the
output should be between -32768 to 32767.
Originally committed as revision 9654 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:48:28 +00:00
Justin Ruggles
0058584580
AC-3 decoder, soc revision 31, Jul 14 23:53:28 2006 UTC by cloud9
...
Removed _ from names
Removed temporary storage for the exponents
Removed ctx->samples
Now each transform coefficients are stored in audio block as an array of transform coefficients for each channel
added ctx->delay (output of later half of previous block)
added audio_block->block_output(output of this block)
I am still not able to produce the output.
I checked the code twice completely. I am not missing anything in
parsing or in bit allocation. Yet it throws error in getting transform
coefficients sometimes. Can anyone review a code of get_transform_coeffs and
help me debug it further. I think the error is in do_bit_allocation routine cuz
get_transform_coeffs is dependent on the bit allocation parameters table.
I have checked the bit allocation algorithm thoroughly and it is as defined in the
standard. Tried everything and got stuck where to go further.
Please help me.
Originally committed as revision 9653 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-14 15:42:15 +00:00