Commit Graph

165 Commits

Author SHA1 Message Date
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
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
Vitor Sessak
66d4c62806 Do not reimplement ff_celp_lp_synthesis_filterf().
Originally committed as revision 17562 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 18:11:42 +00:00
Vitor Sessak
08c433972e Use ff_dot_productf() in ra288.c
Originally committed as revision 15757 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-30 22:24:40 +00:00
Vitor Sessak
d552d04dc9 Simplify: avoid duplication backward_filter()
Originally committed as revision 15428 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-26 18:42:06 +00:00
Vitor Sessak
64e4af2ac1 Do instead of divising a float by a constant, multiply by its inverse
Originally committed as revision 15417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-25 20:03:57 +00:00
Vitor Sessak
b6c7758168 Move constant multiplication out of the loop
Originally committed as revision 15404 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-24 20:31:24 +00:00
Vitor Sessak
e60daa340b Cosmetics: move convolve() together with the other DSP functions
Originally committed as revision 15403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-24 20:05:22 +00:00
Vitor Sessak
a987a126fd Simplify: move division by constant off the loop
Originally committed as revision 15402 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-24 20:03:58 +00:00
Michael Niedermayer
645a6be1e7 Merge the 2 lpc loops.
This changes the output by (stddev:    0.21 PSNR:109.51, file:ddinterview28.ra),
the changes are due to float rounding inaccuracies and do not happen if doubles
are used.

Originally committed as revision 15394 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-23 23:16:48 +00:00
Michael Niedermayer
571bbaf814 Factorize lpc code slightly.
Originally committed as revision 15393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-23 22:49:22 +00:00
Vitor Sessak
faf6d6964b Use SAMPLE_FMT_FLT instead of doing the float->int conversion in the
decoder. This changes the output very little and any difference should
be inaudible.

Originally committed as revision 15343 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-17 19:26:37 +00:00
Vitor Sessak
9547cadb8d Cosmetics: line breaks
Originally committed as revision 15308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 16:56:58 +00:00
Vitor Sessak
111734de09 Simplify: use a single history buffer for gain and a single one for
speech instead of having two for each in the context.

Originally committed as revision 15307 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-13 16:49:05 +00:00
Vitor Sessak
9c10ab6cd1 Cosmetics: align spec references
Originally committed as revision 15300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 19:10:26 +00:00
Vitor Sessak
5381a00a2b Rename function: s/colmult/apply_window/
Originally committed as revision 15299 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 19:06:54 +00:00
Diego Biurrun
36b3e36e00 misc spelling/wording/grammar fixes
Originally committed as revision 15296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 08:13:23 +00:00
Vitor Sessak
fd8897e803 Convert table to integer.
Originally committed as revision 15292 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-10 19:00:02 +00:00
Vitor Sessak
1be0fc2909 Avoid duplicating compute_lpc_coefs() function in both the RA288 and AAC decoders.
Originally committed as revision 15193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-04 11:03:14 +00:00
Vitor Sessak
8089c652a7 Check *data_size in decode_frame()
Originally committed as revision 14636 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 03:00:15 +00:00
Vitor Sessak
5991704634 Cosmetics: alignment
Originally committed as revision 14635 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 02:49:22 +00:00
Vitor Sessak
e3751aa6ec Flip (by making buf[i] -> buf[size-i-1]) two buffers: {sp,gain}_block. This
needs duplicating a few loops, but now the code is clearer.

Originally committed as revision 14634 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-06 02:44:59 +00:00
Vitor Sessak
6888b4fcec Rename prodsum() function to convolve()
Originally committed as revision 14615 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-08-05 04:52:33 +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
Vitor Sessak
4ca7e74c1f Do not declare a counter as unsigned when it is not needed
Originally committed as revision 14469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-29 18:22:31 +00:00
Vitor Sessak
4e33ed368a Cosmetics: rename loop counter vars to i,j
Originally committed as revision 14468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-29 18:20:49 +00:00
Vitor Sessak
045e21cc19 Cosmetics: new line
Originally committed as revision 14457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 10:49:44 +00:00
Vitor Sessak
e7e4f476c0 Remove the now useless phase variable from context
Originally committed as revision 14456 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 10:49:14 +00:00
Vitor Sessak
c749f3db98 Cosmetics: make comment match var name
Originally committed as revision 14454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 05:18:39 +00:00
Vitor Sessak
6509507fad Cosmetics: align comments
Originally committed as revision 14453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 05:16:51 +00:00
Vitor Sessak
f285e6dd31 Rename two context vars: s/sb/sp_block/, s/lhist/gain_block/
Originally committed as revision 14452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 04:53:05 +00:00
Vitor Sessak
36826ee0df Declare temporary buffers to be only of the necessary size
Originally committed as revision 14451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 04:37:58 +00:00
Vitor Sessak
5e707c5905 Remove redundant comments
Originally committed as revision 14450 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 04:25:51 +00:00
Vitor Sessak
c6ad13044a Cosmetics: do not align with now removed next instruction
Originally committed as revision 14449 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 04:24:08 +00:00
Vitor Sessak
2c46367163 Cosmetics: remove braces and useless newline
Originally committed as revision 14448 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 04:07:18 +00:00
Vitor Sessak
2b356efec2 Change the way the input is passed to do_hybrid_filter(). Before, in[0] was
the oldest input sample passed and in[n-1] was the latest. Now it is the
contrary. This allows making backward_filter() somewhat simpler.

Originally committed as revision 14447 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 02:55:47 +00:00
Vitor Sessak
aed39f6c02 Remove RA288Context.output buffer. This buffer is just RA288Context.sb
backwards (output[i] == sb[N-i], where N is the buffer length).

This makes the code slower, this will be fixed in my next commit.

Originally committed as revision 14446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-28 02:53:07 +00:00
Vitor Sessak
b26d320583 Add a few comments pointing to the G.728 specification
Originally committed as revision 14444 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 22:22:51 +00:00
Vitor Sessak
854ce441c3 Remove the history buffer from the context. It can easily be evaluated
from the lhist buffer.

Originally committed as revision 14443 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 22:21:41 +00:00
Vitor Sessak
0143ec2a7e Rename two context buffers: pr{1,2} -> {sp,gain}_lpc. Also add a few doxy
comments.

Originally committed as revision 14437 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 20:58:29 +00:00
Vitor Sessak
59da0390dc Remove st1 and st2 temporary buffers in backward_filter() and use instead
RA288Context.pr{1,2}. Note that the pr{1,2} buffers are one unity smaller
than the st{1,2} buffers. My guess is that the original coder decided to
add one to the array sizes "just to be sure".

Originally committed as revision 14435 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 20:55:27 +00:00
Vitor Sessak
3df136d438 Change slightly the meaning of RA288Context.phase. This
allows to remove two intermediary buffers and avoid a few
memcpy's.

Originally committed as revision 14432 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 20:35:32 +00:00
Vitor Sessak
f42eb5715d Remove st1 and st2 variables from context, since they could be just local vars
Originally committed as revision 14421 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 15:14:50 +00:00
Vitor Sessak
272d258ab9 Rename st{1,2}{a,b} context variables to more meaningful names: {sp,gain}_{rec,hist}
Originally committed as revision 14420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 15:10:17 +00:00
Vitor Sessak
efa86ebe4c Cosmetics: remove useless parenthesis
Originally committed as revision 14418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:38:29 +00:00
Vitor Sessak
e07c5ade5e Move colmult() function to the beginning of file to group DSP-related functions.
Originally committed as revision 14417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:35:50 +00:00
Vitor Sessak
5af20c207e Remove an useless comment describing colmult()
Originally committed as revision 14416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:33:53 +00:00
Vitor Sessak
d899014ee2 Remove an useless comment describing prodsum()
Originally committed as revision 14415 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:33:25 +00:00
Vitor Sessak
952a980d75 Give the context variables of ra288 a better name: s/glob/ractx/
Originally committed as revision 14414 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:31:47 +00:00
Vitor Sessak
029e1c01b5 Give the context structure of ra288 a better name: s/Real288_internal/RA288Context/
Originally committed as revision 14413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-26 14:29:39 +00:00
Vitor Sessak
a53b545068 Cosmetics: grammar nits
Originally committed as revision 14368 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 11:55:01 +00:00
Vitor Sessak
2477d60944 Rename update() function to backward_filter() and add a doxy comment
Originally committed as revision 14364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:29:23 +00:00
Vitor Sessak
a6755f8d53 Rename and comment bandwidth broadening tables
(s/table1a/syn_bw_tab/, s/table2a/gain_bw_tab/).

Originally committed as revision 14363 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:15:50 +00:00
Vitor Sessak
5e65f5df0e Follow FFmpeg convention of returning negative values on error in eval_lpc_coeffs()
Originally committed as revision 14362 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:07:50 +00:00
Vitor Sessak
a3896c6377 Rename pred() to eval_lpc_coeffs() and add a doxy comment
Originally committed as revision 14361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 04:05:41 +00:00
Vitor Sessak
a0cce1587b Give windowing tables a more descriptive name
(s/table1/syn_window/, s/table2/gain_window/).

Originally committed as revision 14360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:50:06 +00:00
Vitor Sessak
475d0e1464 Add comments to do_hybrid_window()
Originally committed as revision 14359 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:28:42 +00:00
Vitor Sessak
0f72a2b7d3 Give parameters of do_hybrid_window() more meaningful names
Originally committed as revision 14358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:28:01 +00:00
Vitor Sessak
427981c7a6 Rename co() function to the much more descriptive name of
do_hybrid_window(). Also change a misleading and wrong comment.

Originally committed as revision 14357 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:23:51 +00:00
Vitor Sessak
5ab3d66fe5 Simplify co(): write constant in a more readable way
Originally committed as revision 14356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:22:19 +00:00
Vitor Sessak
bf75ac57b8 Simplify co(), use memcpy/memmove and colmult() when useful.
Originally committed as revision 14355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-24 03:19:52 +00:00
Vitor Sessak
9f59e608d2 Cosmetics: alignment
Originally committed as revision 14304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 15:43:34 +00:00
Vitor Sessak
3c617380e7 Simplify co(): do not abuse pointer aritmetics
Originally committed as revision 14303 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 15:41:15 +00:00
Vitor Sessak
6bc5714be6 Simplify co(): remove variables that are only used once
Originally committed as revision 14301 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-19 15:32:29 +00:00
Vitor Sessak
96e8987e5b Simplify: do not overuse pointer aritmetic
Originally committed as revision 14271 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 23:48:53 +00:00
Vitor Sessak
c52d2da905 Declare parameters of pred() that could be const as such
Originally committed as revision 14270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 23:02:52 +00:00
Vitor Sessak
efa85e5e45 Another simplification
Originally committed as revision 14269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 23:01:31 +00:00
Vitor Sessak
4a51e06bfc Simplify
Originally committed as revision 14268 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 22:59:53 +00:00
Vitor Sessak
02a1eb9329 Simplify
Originally committed as revision 14267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 22:42:21 +00:00
Vitor Sessak
e4265007a6 Declare function parameters as const
Originally committed as revision 14266 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-17 22:39:29 +00:00
Vitor Sessak
0e3510a31f Revert r14218. FFMAX is a macro, so
sum = FFMAX(1, scalar_product(...));
might calculate the scalar product twice, which is slower.

Originally committed as revision 14230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-14 14:41:01 +00:00
Vitor Sessak
b903a9285e Simplify
Originally committed as revision 14218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 20:41:09 +00:00
Vitor Sessak
3819081f75 Another av_clipf() usage
Originally committed as revision 14217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 20:39:55 +00:00
Vitor Sessak
aa64ee30d1 Do not declare as double a var that only stores a float
Originally committed as revision 14216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 20:38:42 +00:00
Vitor Sessak
1894db1487 Simplify: use FFMAX
Originally committed as revision 14215 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 20:36:32 +00:00
Vitor Sessak
4138ad961c Add av_clipf() function to common.h and use it in ra288.c
Originally committed as revision 14213 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-13 19:59:44 +00:00
Vitor Sessak
5be30c59da Simplify: glob->phase is always == 3
Originally committed as revision 14094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 14:23:30 +00:00
Vitor Sessak
f803495415 Remove phasep context var, it is just phase*5
Originally committed as revision 14092 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 12:03:21 +00:00
Vitor Sessak
eb73742d6e Slighly faster operation
Originally committed as revision 14091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 12:01:59 +00:00
Vitor Sessak
8edfd15175 Cosmetics: remove braces
Originally committed as revision 14089 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 10:35:01 +00:00
Vitor Sessak
a5f0f504df Another use of scalar_product_float()
Originally committed as revision 14088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 10:32:29 +00:00
Vitor Sessak
a03a6db1af Do not reimplement memmove()
Originally committed as revision 14087 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-06 10:30:21 +00:00
Vitor Sessak
647b90ae0e Cosmetics: remove braces
Originally committed as revision 14080 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-05 18:43:24 +00:00
Vitor Sessak
7a64649d68 Create a function for float dot product instead of duplicating all over the file
Originally committed as revision 14079 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-05 18:42:08 +00:00
Vitor Sessak
6f1e7a9e09 Write for loops in a more standard way. In my opinion, they are much more readable now.
Originally committed as revision 14068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-04 19:55:58 +00:00
Vitor Sessak
69c23e6f33 Move vars declaration to inner loop when possible
Originally committed as revision 14066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-04 15:37:52 +00:00
Vitor Sessak
12ea267bca Simplify
Originally committed as revision 14065 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-04 15:32:04 +00:00
Vitor Sessak
ab52eb8e50 Remove unneeded var
Originally committed as revision 14063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-03 19:25:12 +00:00
Vitor Sessak
780433976d Use a matrix instead of a vector
Originally committed as revision 14062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-03 19:23:42 +00:00
Vitor Sessak
f38deb4452 Remove useless wrapper around ra288_decode_frame()
Originally committed as revision 14041 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 19:30:27 +00:00
Vitor Sessak
6091357fc0 Remove unpack() function, read the bitstream as needed
Originally committed as revision 14040 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 19:09:00 +00:00
Vitor Sessak
285ea3e30a Clean up error message
Originally committed as revision 14039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 18:39:11 +00:00
Vitor Sessak
a40b2c2a4b Rewrite unpack() using the bitstream reader
Originally committed as revision 14038 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 18:36:45 +00:00
Vitor Sessak
4452836391 Move function to avoid forward declaration
Originally committed as revision 14036 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 16:57:27 +00:00
Vitor Sessak
c1fadf5012 Remove useless initialization
Originally committed as revision 14035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 16:54:49 +00:00
Vitor Sessak
eec7ade275 Reindent the whole file
Originally committed as revision 14034 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-30 16:53:33 +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
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
Michael Niedermayer
3cc89383f7 const
Originally committed as revision 11772 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-01 15:43:53 +00:00
Diego Biurrun
b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00