Commit Graph

41 Commits

Author SHA1 Message Date
Anton Khirnov 36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Martin Storsjö 710bd8a33e wma: Lower the maximum number of channels to 2
ff_wma_init is used only by wmadec and wmaenc, and neither of them
can handle more than 2 channels.

This fixes crashes with invalid files.

Based on patch by Piotr Bandurski and Michael Niedermayer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-01 15:51:26 +03:00
Diego Biurrun 8ca6e523a6 wma: Refactor common code to fix standalone compilation of WMA lossless decoder. 2012-03-07 09:36:05 +01:00
Martin Storsjö 9cf0841ef3 dsputil: Add ff_ prefix to the dsputil*_init* functions
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:34 +02:00
Martin Storsjö e96b4a53df vlc/rl: Add ff_ prefix to the nonstatic symbols
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-02-15 22:06:26 +02:00
Alex Converse 7181c4edee cosmetics: Remove extra newlines at EOF 2012-01-27 17:19:09 -08:00
Alex Converse d78bb1a4b2 wma: Clip WMA1 and WMA2 frame length to 11 bits.
The MDCT buffers in the decoder are only sized for up to 11 bits. The
reverse engineered documentation for WMA1/2 headers say that that for
all samplerates above 32kHz 11 bits are used. 12 and 13 bit support
were added for WMAPro. I was unable to make any Microsoft tools generate
a test file at a samplerate above 48kHz.

Discovered by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

CC: libav-stable@libav.org
2012-01-25 12:31:37 -08:00
Justin Ruggles 05d1e45d1f wma: initialize prev_block_len_bits, next_block_len_bits, and block_len_bits.
The initial values are not checked against the number of block sizes.
Initializing them to frame_len_bits will result in a block size index of 0
in these cases instead of something that might be out-of-range.

Fixes Bug 81.
2011-11-22 13:50:18 -05:00
Mans Rullgard 4538729afe Move sine windows to a separate file
These windows do not really belong in fft/mdct files and were
easily confused with the similarly named tables used by rdft.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-20 13:25:19 +00:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Justin Ruggles c73d99e672 Separate format conversion DSP functions from DSPContext.
This will be beneficial for use with the audio conversion API without
requiring it to depend on all of dsputil.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-02 02:44:53 +00:00
Luca Barbato dfd2a005eb Replace dprintf with av_dlog
dprintf clashes with POSIX.1-2008
2011-01-29 23:55:37 +01:00
Diego Biurrun 503f9c0bd6 Fix Doxygen documentation of gb parameter in ff_wma_get_large_val().
Originally committed as revision 23984 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:55:42 +00:00
Daniel Verkamp a7e6328cba Export wma_critical_freqs as ff_wma_critical_freqs
Originally committed as revision 21391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 08:39:50 +00:00
Reimar Döffinger 14b8607065 Add support for hard-coded MDCT-related ff_sine_windows tables.
Originally committed as revision 21108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 13:28:04 +00:00
Måns Rullgård 076a9dea1e WMA: store level_table as floats, use type punning for sign flip in decode
Originally committed as revision 20078 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-29 10:38:34 +00:00
Vitor Sessak 6776061b04 Add two more sizes to ff_sine_windows[] and also pad it with NULLs so
that FF_ELEMS(ff_sine_windows[x]) == 1 << x.

Fix issue 1384.

Originally committed as revision 19862 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 16:18:16 +00:00
Sascha Sommer 4c7615c40e Make remaining run level decode comments doxygen comments
Originally committed as revision 19235 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 11:22:25 +00:00
Sascha Sommer 4df8bdeef3 Simplify run level decoding:
- remove unneeded vlc code < 0 check
- reorder vlc code handling so that the unlikely escape decoding
  part comes last
- move overflow check out of the decode loop
- branchless sign conversion

Originally committed as revision 19234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 11:06:48 +00:00
Sascha Sommer 4d67e067e2 Fix indentation after the previous commit
Originally committed as revision 19233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 10:33:18 +00:00
Sascha Sommer 891bd2e5aa Add support for escape coded wmapro run level coefficients
Originally committed as revision 19232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 10:28:55 +00:00
Sascha Sommer 9970c61b4b Introduce WMACoef typedef for decoded coefficients
and change default type to float so that the run level
decoding functionality can be shared with wmapro

Originally committed as revision 19231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 09:05:28 +00:00
Sascha Sommer c0e9b2e84f Move run level decode functionality to ff_wma_run_level_decode
so that it can be reused for wmapro

Originally committed as revision 19171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 16:00:26 +00:00
Sascha Sommer e8c7f81cf2 cosmetics: Add brackets between if/else
Originally committed as revision 19170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 15:48:41 +00:00
Sascha Sommer 523c09ca44 Add additional sample rates to the frame len bits calculation code
Originally committed as revision 19169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 15:38:11 +00:00
Sascha Sommer cee4bb894d Move frame len bits calculation to ff_wma_get_frame_len_bits
so that it can be reused for wmapro

Originally committed as revision 19167 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 15:21:43 +00:00
Diego Biurrun ae1374ce10 cosmetics: Prettyprint and reformat wma.c closer to K&R style.
Originally committed as revision 19165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-12 13:12:13 +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
Robert Swain cbcbf439b9 Fix index to ff_sine_windows[]. Previously the index was usually in reverse
order.

Originally committed as revision 14940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-24 08:31:19 +00:00
Robert Swain cce540c5e7 Don't try to free shared ff_sine_* tables pointed to by s->windows[]
Originally committed as revision 14775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-15 10:31:11 +00:00
Robert Swain 69fc4da360 Add declarations for the sine tables used in wma.c (half window sizes: 128,
256, 512, 1024 and 2048) to mdct.c. Make them accessible via dsputil.h. Make
wma.c use these shared tables.

Originally committed as revision 14758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-14 14:40:16 +00:00
Robert Swain ece6b83c3e Change wma.c to use the ff_sine_window_init() from mdct.c
Originally committed as revision 14757 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-14 14:36:22 +00:00
Zdenek Kabelac 2c79288d4e fix mem leak
patch by Zdenek Kabelac: [zdenek kabelac gmail com]

Originally committed as revision 9740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-18 15:36:45 +00:00
Michael Niedermayer 47b777ceed sanity checks (should prevent hypothetical div by zero issue)
should fix sf bug #1547313

Originally committed as revision 9164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-30 23:06:37 +00:00
Ian Braithwaite 1890c2acf4 Optimize by building the mdct window and multipying/adding at the same time.
Patch by Ian Braithwaite ian .. braithwaite . dk

[Ffmpeg-devel] WMA decoder speedup 2007-03-22 22:56

Originally committed as revision 8526 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-26 10:03:57 +00:00
Michel Bardiaux 318c5e0524 Give context to dprintf
Originally committed as revision 8338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-12 12:36:41 +00:00
Michel Bardiaux bdb4b698d8 Corrections so that builds with DEBUG work
Originally committed as revision 8295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-08 14:49:43 +00:00
Michel Bardiaux 911b9faf31 Rename WMADecodeContext to WMACodecContext
Originally committed as revision 8143 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-27 09:54:48 +00:00
Michel Bardiaux a9c9a2400b Supply context to tprintf
Originally committed as revision 8142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-27 09:39:04 +00:00
Diego Biurrun eafcac6ac8 cosmetics: Fix another common typo, dependAnt --> dependEnt.
Originally committed as revision 8114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-24 09:41:43 +00:00
Michael Niedermayer 5968607304 wma encoder
Originally committed as revision 7855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-06 20:19:04 +00:00