Ronald S. Bultje
626964a4c4
wmall: fix build with -DDEBUG enabled.
13 years ago
Diego Biurrun
8ca6e523a6
wma: Refactor common code to fix standalone compilation of WMA lossless decoder.
13 years ago
Carl Eugen Hoyos
18794000c6
Remove AV_LOG_DEBUG from av_dlog() calls.
...
AV_LOG_DEBUG is forced by the av_dlog definition.
13 years ago
Mashiat Sarker Shakkhar
9d25f1f619
Windows Media Audio Lossless decoder
...
Decodes 16-bit WMA Lossless encoded files. 24-bit is not supported yet.
Bitstream parser written by Andreas Öman with contributions from
Baptiste Coudurier and Ulion.
Includes a number of bug-fixes from Benjamin Larsson, Michael Niedermayer and
Konstantin Shishkov, shine and polish by Diego Biurrun.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
13 years ago
Michael Niedermayer
f4f386dd00
wmalossless: Fix infinite loop.
...
Fixes more of Ticket1000
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
886b40b94a
wmalossless: Switch to new audio API
...
Partially fixes Ticket1000
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
b240866c5b
wmalossless: remove tab
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mashiat Sarker Shakkhar
a520a9946f
Perform inter-channel decorr. only if both channels are coded
13 years ago
Benjamin Larsson
7f215e3e72
Use fixed-length array in revert_mclms()
13 years ago
Mashiat Sarker Shakkhar
d1ea26f640
Do not try to read residue if ave_mean <= 1
...
Otherwise, we end up with with log(0) or log(1). av_ceil_log2 simply
assumes the argument is non-zero and returns wrong result when it is.
(Not that there is a proper way of returning an undefined value.)
13 years ago
Mashiat Sarker Shakkhar
59df25effd
Move some variable declarations to comply with C90
13 years ago
Mashiat Sarker Shakkhar
3ce50bf51d
Cosmetics: fix some whitespace errors
13 years ago
Mashiat Sarker Shakkhar
6345184fc9
Support 24-bit decoding
13 years ago
Michael Niedermayer
dc08e7ea0f
wmall: remove ;;
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mashiat Sarker Shakkhar
bfbd22f9f0
Cosmetics: Fix some whitespace errors and indentation
13 years ago
Mashiat Sarker Shakkhar
6ca1016b3a
Use correct variable type for 32-bit samples buffer
13 years ago
Michael Niedermayer
1ce8377c78
wmalossless: Fix incompatoble pointer type warnings
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
6429269096
wmall: remove ;;
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mashiat Sarker Shakkhar
2083a10abf
Fix audio output
...
Up until now, the decoder didn't output anything
in the data buffer. This fixes all the issues
related to sample format, removes leftover code
and actually outputs some audio to data buffer.
With this, the only sample we have can be played.
Seeking is still broken though.
13 years ago
Mashiat Sarker Shakkhar
f7166f7d8d
Suppress dumping of residues buffer
13 years ago
Mashiat Sarker Shakkhar
3d84495128
Use quantizer value read from bitstream
...
Currently the code initializes quantizer even
before reading it from bitstream and uses that
to dequantize samples.
13 years ago
Mashiat Sarker Shakkhar
a6da23f146
Cosmetics: Remove two empty lines and realign some code
13 years ago
Mashiat Sarker Shakkhar
8dc8dd9f6f
Reset acfilter_prevvalues buffer in clear_codec_buffers()
13 years ago
Mashiat Sarker Shakkhar
001a74ff53
Fix AC filter buffers and AC filter reversion
13 years ago
Mashiat Sarker Shakkhar
70dd5a603c
Perform dequantization of channel coefficients
13 years ago
Mashiat Sarker Shakkhar
cf6284b273
Perform inverse inter-channel decorrelation and ac-filter
13 years ago
Mashiat Sarker Shakkhar
7409210647
Implement revert_inter_ch_decorr() and revert_acfilter()
13 years ago
Mashiat Sarker Shakkhar
10406b95ad
Enable inverse-MCLMS filter
13 years ago
Mashiat Sarker Shakkhar
302d5df834
Fix inverse-MCLMS filtering routines
13 years ago
Mashiat Sarker Shakkhar
4fa3f1c507
Do not update buffers in case no speed change is necessary
13 years ago
Mashiat Sarker Shakkhar
153a853718
Use int for channel_coeffs instead of int16_t
13 years ago
Mashiat Sarker Shakkhar
6d4deecfdf
Pass pointer to integer buffer instead of integer to memcpy
13 years ago
Mashiat Sarker Shakkhar
c5cd231151
Partially fix CDLMS prediction
13 years ago
Mashiat Sarker Shakkhar
460bec6800
Fix lms_update()
13 years ago
Mashiat Sarker Shakkhar
075ebdf735
Move num_lms reading out of a loop
13 years ago
Mashiat Sarker Shakkhar
29c2fcb677
Use correct value for range
...
The current range value causes an underflow
when negated and pushes anything less than zero
to the minimum.
13 years ago
Mashiat Sarker Shakkhar
768261e50d
Fix some int / int16_t / int32_t confusion
...
For now force everything to int16_t, except
for variables used as index
13 years ago
Mashiat Sarker Shakkhar
8aa831c07b
Implement revert_mclms() and associated functions
13 years ago
Mashiat Sarker Shakkhar
bf8715719a
Fix two more int16_t vs. int confusion
...
If everything works fine for 16-bit streams,
the current code could be extended to do 24-bit.
13 years ago
Michael Niedermayer
dd32a305bd
wmall: fix return type of dump_int_buffer()
...
Found-by: Dominique Leuenberger
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
dae7ff0416
wmall: remove tabs that leaked in from a merge and seem to have
...
managed to silently bypass the push checks.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Mashiat Sarker Shakkhar
be8a0d26db
Init s->cdlms[][].recent to order - 1
...
Not sure if this is correct. But looks like
it was giving us off-by-one's when used to index
buffers.
13 years ago
Mashiat Sarker Shakkhar
6dd19c97c4
Add a size argument to dump_int_buffer()
13 years ago
Mashiat Sarker Shakkhar
81a3c67169
Get rid of logging that are not required anymore
...
(Resolves some conflicts)
13 years ago
Mashiat Sarker Shakkhar
e6c66fcf68
Fix some int vs. int16_t confusion
...
Size should be determined from bits per sample.
The current code only accepts 16-bit streams.
13 years ago
Mashiat Sarker Shakkhar
ea0323b0fa
call revert_cdlms()
13 years ago
Mashiat Sarker Shakkhar
6cf31ef263
Fix some loop conditions to prevent overreads
13 years ago
Mashiat Sarker Shakkhar
a3a8d5e0c1
Initialize pred in lms_predict()
13 years ago
Mashiat Sarker Shakkhar
7a9807dea4
Clean-up
13 years ago
Mashiat Sarker Shakkhar
3e2f664b99
dump_int_buffer() to dump samples from a buffer
13 years ago