Martin Storsjö
cfff297d98
adpcm: Skip samples whose ssd calculation has wrapped around
...
Wraparound in ssd is mainly avoided by subtracting the ssd of the
best node from all the others once it has grown large enough.
If using very large trellis sizes (e.g. -trellis 15), the frontier
is so large that the difference between the best and the worst is
large enough to cause wraparound, even if the ssd of the best one
is subtracted regularly.
When using -trellis 10 on a 30 second sample, this causes only a slight
slowdown, from 61 to 64 seconds.
Originally committed as revision 25858 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-01 08:57:45 +00:00
Martin Storsjö
1a68e7ed15
adpcm: Fix a comment in the trellis heap code
...
This makes the wording consistent with how people usually talk about heaps.
Originally committed as revision 25775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-20 11:24:19 +00:00
Martin Storsjö
78f9d35c9a
adpcm: Only increment heap_pos after finding a good enough sample
...
This increases the PSNR slightly (about 0.1 dB) for trellis sizes
below 8, and gives equal PSNR for sizes above that.
Originally committed as revision 25769 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 17:36:29 +00:00
Martin Storsjö
d764e3ece9
adpcm: Use a hash table to improve checking for duplicate samples
...
This lowers the run time from 158 to 21 seconds, for -trellis 8
with a 30 second sample on my machine.
This requires 64 KB additional memory.
Originally committed as revision 25768 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-19 17:35:52 +00:00
Martin Storsjö
86abf868ec
adpcm: Fix a comment
...
Originally committed as revision 25751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-14 10:23:58 +00:00
Martin Storsjö
38b3bda18f
adpcm: Replace any of the leaf nodes in the heap
...
By not looking for the exactly largest node, we avoid an O(n) seek through
the leaf nodes. Just pick one (not the same one every time) and try replacing
that node with the new one.
For -trellis 8, this lowers the run time from 190 to 158 seconds,
for a 30 second 44 kHz mono sample, on my machine.
Originally committed as revision 25733 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:30:27 +00:00
Martin Storsjö
4106b7f1cd
Reindent
...
Originally committed as revision 25732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:28:02 +00:00
Martin Storsjö
f82e8f3482
adpcm: Store the trellis nodes in a heap instead of a sorted array
...
This avoids having to memmove the large parts of the array when inserting into
it.
For -trellis 8, this lowers the run time from 245 seconds to 190 seconds,
for a 30 second 44 kHz mono sample, on my machine.
Originally committed as revision 25731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 12:27:27 +00:00
Stefano Sabatini
5d6e4c160a
Replace deprecated symbols SAMPLE_FMT_* with AV_SAMPLE_FMT_*, and enum
...
SampleFormat with AVSampleFormat.
Originally committed as revision 25730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-11-12 11:04:40 +00:00
Martin Storsjö
e0ae6c17fe
Flush the PutBitsContext at the end of each block when encoding ADPCM IMA QT
...
Originally committed as revision 24938 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-26 07:39:34 +00:00
Carl Eugen Hoyos
b9542223a3
Only 4-bit ADPCM IMA WAV files are supported.
...
Originally committed as revision 24493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-25 14:33:16 +00:00
Måns Rullgård
07ece20c69
adpcm: convert VLAs to malloc/free
...
Originally committed as revision 23819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 09:44:10 +00:00
Diego Biurrun
ba87f0801d
Remove explicit filename from Doxygen @file commands.
...
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.
Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Stefano Sabatini
72415b2adb
Define AVMediaType enum, and use it instead of enum CodecType, which
...
is deprecated and will be dropped at the next major bump.
Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Michael Niedermayer
9f72b23c5c
Revert Revision: 21362
...
Log:
Set CODEC_CAP_SUBFRAMES for adpcm decoders
This makes ffmpeg stop printing millions of
Multiple frames in a packet from stream 0
when decoding adpcm.
Reason: adpcm has no subframes, the flag does not belong there
Originally committed as revision 21481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 13:30:05 +00:00
Måns Rullgård
2a58e45724
Set CODEC_CAP_SUBFRAMES for adpcm decoders
...
This makes ffmpeg stop printing millions of
Multiple frames in a packet from stream 0
when decoding adpcm.
Originally committed as revision 21362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 12:57:24 +00:00
Daniel Verkamp
b74d42ee33
Build extradata in adpcm_ms encoder.
...
This fixes issue #1244 .
Originally committed as revision 20349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-22 20:43:55 +00:00
Daniel Verkamp
bb7d0e87ae
Indicate that AdaptCoeff1 and 2 are functions of the actual coefficients.
...
Originally committed as revision 20345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-22 15:57:04 +00:00
Reimar Döffinger
b5f09d31c2
Make sample_fmts and channel_layouts compound literals const to reduce size of
...
.data section.
Originally committed as revision 19787 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-06 09:15:07 +00:00
Måns Rullgård
6816f8b8e4
ADPCM: remove unreachable break statement after return
...
Originally committed as revision 19312 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 00:55:17 +00:00
Carl Eugen Hoyos
1efe9fd5c0
Fix indentation after last commit.
...
Originally committed as revision 19238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 13:10:17 +00:00
Yoshihisa Uchida
d8b2d83473
Fix yamaha adpcm stereo (issue 1117).
...
Patch by Yoshihisa Uchida, yoshihisa D uchida A gmail
Originally committed as revision 19237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-20 13:07:21 +00:00
Vitor Sessak
6cf92f6d26
Check if there is enough bytes before reading the buffer in the EA ADPCM
...
decoder. Fix issue 990.
Originally committed as revision 18707 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-27 16:06:01 +00:00
Vitor Sessak
8a06cb14f9
Skip 0x0000 frame footer in EA ADPCM decoder.
...
Originally committed as revision 18706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-27 16:04:43 +00:00
Stefano Sabatini
9106a698e7
Rename bitstream.h to get_bits.h.
...
Originally committed as revision 18494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-13 16:20:26 +00:00
Stefano Sabatini
b275500706
Split bitstream.h, put the bitstream writer stuff in the new file
...
put_bits.h.
Originally committed as revision 18461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 08:35:26 +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
fd75cedd15
cosmetics: Reformat long_names so that "ADPCM" comes first.
...
Originally committed as revision 17720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-02 05:55:03 +00:00
Diego Biurrun
0ffbc258aa
Change a bunch of codec long_names to be more consistent and descriptive.
...
Originally committed as revision 17716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-02 05:18:33 +00:00
Daniel Verkamp
5ef251e504
Add missing av_cold in static init/close functions.
...
Patch by Daniel Verkamp daniel at drv dot nu.
Originally committed as revision 17526 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-22 13:48:55 +00:00
Stefan Gehrer
cc55c46498
check validity of pointer srcC
...
Originally committed as revision 16973 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-03 17:56:24 +00:00
Diego Biurrun
bad5537e2c
Use full internal pathname in doxygen @file directives.
...
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.
Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Stefan Gehrer
8915009813
remove duplicate tables
...
Originally committed as revision 16866 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 20:39:39 +00:00
Stefan Gehrer
2ed421134e
avoid indeterminate order of accessing src
...
Originally committed as revision 16855 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 06:38:46 +00:00
Stefan Gehrer
055dc116fc
added demuxer for FunCom ISS audio files,
...
extended ADPCM decoder by ISS specific IMA variant
Originally committed as revision 16658 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-17 20:08:43 +00:00
Aurelien Jacobs
b250f9c66d
Change semantic of CONFIG_*, HAVE_* and ARCH_*.
...
They are now always defined to either 0 or 1.
Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +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
Ramiro Polla
6647ab80e3
bitstream: move put_sbits() from flacenc.c to bitstream.h and use it
...
throughout libavcodec.
Originally committed as revision 14204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 14:27:48 +00:00
Reimar Döffinger
f9bd305694
clip MS ADPCM predictor range to correct [0..6] range, not [0..7]
...
Originally committed as revision 14203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 14:25:31 +00:00
Reimar Döffinger
962fe7e1c4
Use bytestream and AV_RL* functions in ADPCM code where possible
...
Originally committed as revision 14202 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 14:12:51 +00:00
Reimar Döffinger
ae8afab998
Fix MS ADPCM de- and encoding: first and second sample are swapped.
...
Noticeable better decoding of e.g. http://samples.mplayerhq.hu/A-codecs/msadpcm-stereo/dance-b5th.asf
Originally committed as revision 14201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 14:08:28 +00:00
Reimar Döffinger
8884b91898
100l, fix MS ADPCM decoding for e.g. http://samples.mplayerhq.hu/mov/qtaudio/surge-2-16-L-ms02.mov
...
First coefficient array must be unsigned to fit in 8 bits
Originally committed as revision 14175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 09:23:37 +00:00
Reimar Döffinger
ff2271267e
10l, forgot to replace a / 256 for r14173.
...
Fixes MS ADPCM regression test.
Originally committed as revision 14174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-12 07:28:45 +00:00
Reimar Döffinger
ddcf031f3b
Change MS ADPCM table so they fit into int8_t and change array type.
...
Originally committed as revision 14173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-11 21:38:42 +00:00
Diego Biurrun
bbdfa06d43
Add a note to remind people that new PCM/ADPCM formats need to be added to
...
the Makefile as well to allow proper selective compilation.
Originally committed as revision 14072 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-05 07:30:59 +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
Michael Niedermayer
909a9ad08d
Prevent 128*1<<trellis from becoming 0 and creating 0 sized arrays.
...
fixes CID84 RUN2
CID85 RUN2
CID86 RUN2
CID87 RUN2
CID88 RUN2
CID89 RUN2
CID90 RUN2
CID91 RUN2
CID92 RUN2
CID93 RUN2
CID94 RUN2
CID95 RUN2
CID96 RUN2
CID97 RUN2
CID98 RUN2
CID99 RUN2
CID100 RUN2
CID101 RUN2
CID102 RUN2
CID103 RUN2
CID104 RUN2
CID105 RUN2
CID106 RUN2
Originally committed as revision 13495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-28 11:59:41 +00:00
Diego Biurrun
bcdab7e547
cosmetics: Fix typos in ADPCM codec long names.
...
Originally committed as revision 13173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-15 23:02:43 +00:00
Diego Biurrun
d349334abc
ADPCM codec long names by Stefano Sabatini, stefano.sabatini-lala poste it
...
Originally committed as revision 13157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-15 11:35:19 +00:00
Baptiste Coudurier
3b4eccabae
identation
...
Originally committed as revision 12969 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-25 15:15:56 +00:00