Stefano Sabatini
126b638ea0
Deprecate av_parse_video_frame_size() and av_parse_video_frame_rate()
...
in favor of the newly added corresponding functions
av_parse_video_size() and av_parse_video_rate() defined in
libavcore/parseutils.h.
This change also adds a linking-time dependency of libavcodec and of
libavfilter on libavcore.
Originally committed as revision 24518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 23:12:28 +00:00
Ronald S. Bultje
ab4d031889
Use pmaddubsw for the mbedge_filter (>=ssse3), 6-10 cycles faster.
...
Originally committed as revision 24514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 21:18:19 +00:00
Jason Garrett-Glaser
e25dee602f
VP8: Much faster SSE2 MC
...
5-10% faster or more on Phenom, Athlon 64, and some others.
Helps some on pre-SSSE3 Intel chips as well, but not as much.
Originally committed as revision 24513 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 19:34:00 +00:00
S.N. Hemanth Meenakshisundaram
9dd9d67bd0
Define static functions fill_image_linesize() and
...
fill_image_data_ptr(). ff_fill_linesize() and ff_fill_pointer() now wrap
these functions.
The new functions are more generic, and are going to be exported in a
future patch.
Patch by S.N. Hemanth Meenakshisundaram smeenaks # ucsd § edu.
Originally committed as revision 24512 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 14:30:47 +00:00
Ronald S. Bultje
48adb7e7a4
Enable no-loop memory/register saving for ssse3/sse4 also.
...
Originally committed as revision 24511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 14:07:57 +00:00
Ronald S. Bultje
2a180c69ea
Save a register (or regsize of stackspace for x86-32) for the no-loop
...
mbedge loopfilter functions, by re-using space that holds a variable
that we no longer need.
Originally committed as revision 24510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 14:00:15 +00:00
Ronald S. Bultje
bcd4aa6498
Use nested ifs instead of &&, which appears to not work with %ifidn (i.e. this
...
construct was always enabled, even for <ssse3 versions).
Originally committed as revision 24509 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 13:56:51 +00:00
Axel Holzinger
0b2c75cb68
Rename pow variable to pwr.
...
Patch by Axel Holzinger <aholzinger gmx de>.
Originally committed as revision 24508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 13:52:49 +00:00
Ronald S. Bultje
2208053bd3
Split pextrw macro-spaghetti into several opt-specific macros, this will make
...
future new optimizations (imagine a sse5) much easier. Also fix a bug where
we used the direction (%2) rather than optimization (%1) to enable this, which
means it wasn't ever actually used...
Originally committed as revision 24507 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 13:50:59 +00:00
Jason Garrett-Glaser
fca05ea8a0
VP8: add missing free
...
Fixes a tiny memory leak.
Originally committed as revision 24504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-26 07:10:30 +00:00
Carl Eugen Hoyos
28e241de5d
Fix r24445: Instead of needlessly initialising a variable, silence the warning.
...
Originally committed as revision 24498 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-25 14:49:45 +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
Ronald S. Bultje
6de5b7c6b8
Fix obvious bug in assignment. Somehow, the test vectors don't test this...
...
Originally committed as revision 24489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-25 02:42:40 +00:00
Aurelien Jacobs
ba2c508d0c
add SubRip muxer and demuxer
...
Originally committed as revision 24488 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 22:50:12 +00:00
Ronald S. Bultje
e3f7bf774c
Fix SPLATB_REG mess. Used to be a if/elseif/elseif/elseif spaghetti, so this
...
splits it into small optimization-specific macros which are selected for each
DSP function. The advantage of this approach is that the sse4 functions now
use the ssse3 codepath also without needing an explicit sse4 codepath.
Originally committed as revision 24487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 19:33:05 +00:00
Alex Converse
63e1278d88
aacenc: TLS: Save maximum values for each swb in a table.
...
This gives an almost 20% speedup.
Originally committed as revision 24484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 17:11:51 +00:00
Alex Converse
031d5cea04
10l: Remove some commented out code that slipped in.
...
Originally committed as revision 24483 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 17:01:50 +00:00
Alex Converse
fe461767e6
aacenc: TLS: Try to preserve some energy in each non-zero band.
...
Reduce scalefactors in non-zero bands that underflow by twice as much as those
in bands that just fail to hit psy targets.
Originally committed as revision 24482 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 16:36:01 +00:00
Reimar Döffinger
edac49daf5
Use "const" qualifier for pointers that point to input data of
...
audio encoders.
This is purely for clarity/documentation purposes.
Originally committed as revision 24481 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 13:59:49 +00:00
Alex Converse
c226fc5bfb
aacenc: Prevent premature termination of the two loop search.
...
Originally committed as revision 24476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 04:23:26 +00:00
Alex Converse
81824fe059
aacdec: Only load and write each predictor variable once.
...
This is slightly faster and opens the door for further optimization.
Originally committed as revision 24475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 02:57:08 +00:00
Alex Converse
70c99adb48
aacdec: 4% faster main profile decoding.
...
Originally committed as revision 24474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 02:41:47 +00:00
Alex Converse
51ffd3a62f
aacenc: Favor log2f() and sqrtf() over log2() and sqrt().
...
Originally committed as revision 24473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-24 02:10:59 +00:00
Alex Converse
04d72abf17
aacenc: Factorize some scalefactor utilities.
...
Originally committed as revision 24472 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 22:37:42 +00:00
Eli Friedman
3611e7a309
Inline asm for VP56 arith coder
...
This is a lot more reliable to get cmov rather than trying to trick gcc into
generating it, useful since it's 2% faster overall.
Patch by Eli Friedman <eli.friedman at gmail>
Originally committed as revision 24471 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:30 +00:00
David Conrad
ca18a478e3
VP8: Inline traversing vp8_small_mvtree
...
Much faster read_mv_component, slightly faster overall
Originally committed as revision 24470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:25 +00:00
David Conrad
7697cdcf95
VP8: Use vp56_rac_get_prob_branchy when the bit is only used by an if()
...
Originally committed as revision 24469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:20 +00:00
David Conrad
fe1b5d974a
Decode DCT tokens by branching to a different code path for each branch
...
on the huffman tree, instead of traversing the tree in a while loop.
Based on the similar optimization in libvpx's detokenize.c
10% faster at normal bitrates, and 30% faster for high-bitrate intra-only
Originally committed as revision 24468 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:17 +00:00
David Conrad
5474ec2ac8
Move renormalization of the VP56 arith decoder to before decoding a bit
...
No difference at the moment, but allows a future branchy variant
of vp56_rac_get_prob to be significantly faster
Originally committed as revision 24467 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:14 +00:00
David Conrad
b3d755ec8b
Split renorm of vp56 arith decoder to its own function
...
Originally committed as revision 24466 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:08 +00:00
David Conrad
24675b8093
vp56's arith decoder's code_word is only 16 bits, no need for unsigned long
...
Originally committed as revision 24465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:46:01 +00:00
Jason Garrett-Glaser
13a1304bb3
Add myself to VP8 copyright and maintainers.
...
Also add Ronald to maintainers.
Originally committed as revision 24464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:42:35 +00:00
Jason Garrett-Glaser
414ac27d8f
VP8: always_inline some things to force gcc to do the right thing
...
Mostly seems to help in the MC code, which gets a hundred cycles faster.
Originally committed as revision 24463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:36:21 +00:00
Jason Garrett-Glaser
06d50ca804
VP8: use AV_RL24 instead of defining a new RL24.
...
Originally committed as revision 24462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 21:17:18 +00:00
Jason Garrett-Glaser
9fddd14a8e
VP8: Slightly faster MV selection
...
Don't clamp best mv unless it's actually used.
Originally committed as revision 24461 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 19:06:22 +00:00
Jason Garrett-Glaser
14767f35ed
VP8: use AV_ZERO32 instead of AV_WN32A where relevant
...
Originally committed as revision 24460 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 10:42:19 +00:00
Jason Garrett-Glaser
09959ec46e
VP8: eliminate redundant code in r24458
...
Originally committed as revision 24459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 10:34:21 +00:00
Jason Garrett-Glaser
a71abb714e
VP8: shave a few clocks off check_intra_pred_mode
...
Originally committed as revision 24458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 10:24:38 +00:00
Jason Garrett-Glaser
0087aa47d0
VP8: fix broken sign bias code in MV pred
...
Apparently the official conformance test vectors don't test this feature,
even though libvpx uses it.
Originally committed as revision 24456 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 06:41:35 +00:00
Jason Garrett-Glaser
3ae079a3c8
VP8: optimize DC-only chroma case in the same way as luma.
...
Add MMX idct_dc_add4uv function for this case.
~40% faster chroma idct.
Originally committed as revision 24455 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 06:02:52 +00:00
Jason Garrett-Glaser
3df56f4118
VP8: Clean up some variable shadowing.
...
Originally committed as revision 24454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 03:44:37 +00:00
Jason Garrett-Glaser
51c9156438
VP8 asm: cosmetics (spacing)
...
Originally committed as revision 24453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 03:02:56 +00:00
Jason Garrett-Glaser
8a467b2d44
VP8: 30% faster idct_mb
...
Take shortcuts based on statistically common situations.
Add 4-at-a-time idct_dc function (mmx and sse2) since rows of 4 DC-only DCT
blocks are common.
TODO: tie this more directly into the MB mode, since the DC-level transform is
only used for non-splitmv blocks?
Originally committed as revision 24452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 02:58:27 +00:00
Jason Garrett-Glaser
ef38842f0b
VP8: smarter prefetching
...
Don't prefetch reference frames that were used less than 1/32th of the time so
far in the frame.
This helps speed up to ~2% on videos that, in many frames, make near-zero
(but not entirely zero) use of golden and/or alt-refs.
This is a very common property of videos encoded by libvpx.
Originally committed as revision 24451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 01:59:56 +00:00
Baptiste Coudurier
9479415e4e
In h264 parser, return immediately if buf_size is 0, avoid printing
...
erroneous message for last frame.
Originally committed as revision 24450 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 00:34:09 +00:00
Jason Garrett-Glaser
c25c776708
VP8: clear DCT blocks in iDCT instead of using clear_blocks.
...
~0.3% faster overall.
Originally committed as revision 24448 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 00:07:16 +00:00
Jason Garrett-Glaser
b74f70d646
VP8: avoid a memset for non-i4x4 blocks with no coefficients
...
Originally committed as revision 24447 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-23 00:05:44 +00:00
Jason Garrett-Glaser
145d31865d
Get rid of more unnecessary dereferences in VP8 deblocking
...
Originally committed as revision 24446 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 23:11:40 +00:00
Jason Garrett-Glaser
867215336d
Shut up an uninitialized variable GCC warning in VP8.
...
Originally committed as revision 24445 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 23:04:51 +00:00
Jason Garrett-Glaser
c4211046d2
Smarter VP8 prefetching
...
Prefetch all refs (including altref), but only if they've been used so far this
frame.
~2.5% faster overall.
TODO: Do something even smarter, like using how often each ref has been used
so far, so that a couple blocks of a rarely-used ref don't force us to prefetch
it.
Originally committed as revision 24444 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 23:03:08 +00:00
Jason Garrett-Glaser
8cfae560ad
Fix stupid bug in VP8 prefetching code
...
Originally committed as revision 24443 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 22:15:43 +00:00
Jason Garrett-Glaser
2a38c2e99a
Eliminate a LUT in escape decoding in VP8 decode_block_coeffs
...
Originally committed as revision 24441 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 22:08:09 +00:00
Jason Garrett-Glaser
d292c3455e
Eliminate some repeated dereferences in VP8 inter_predict
...
Originally committed as revision 24438 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 21:05:30 +00:00
Ronald S. Bultje
dc5eec8085
Use pextrw for SSE4 mbedge filter result writing, speedup 5-10cycles on
...
CPUs supporting it.
Originally committed as revision 24437 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 19:59:34 +00:00
James Zern
7eb185e0a3
Map settings for 2-pass libvpx encoding.
...
Patch by James Zern, jzern at google
Originally committed as revision 24430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 12:35:32 +00:00
Jason Garrett-Glaser
b946111fde
Eliminate a pointless memset for intra blocks in P-frames in VP8
...
Originally committed as revision 24429 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 12:15:29 +00:00
Jason Garrett-Glaser
b9a7186bf4
VP8: Don't store segment in macroblock struct anymore.
...
Not necessary with the previous patch.
Originally committed as revision 24427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 11:55:55 +00:00
Jason Garrett-Glaser
c55e0d34ba
Convert VP8 macroblock structures to a ring buffer.
...
Uses a slightly nonintuitive ring buffer size of (width+height*2) to simplify
addressing logic.
Also split out the segmentation map to a separate structure, necessary to
implement the ring buffer.
Originally committed as revision 24426 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 11:45:18 +00:00
Jason Garrett-Glaser
968570d65f
Calculate deblock strength per-MB instead of per-row
...
Gives better cache locality, since the VP8Macroblock structs are still in cache.
Inspired by the way x264 does it.
Originally committed as revision 24417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 07:24:22 +00:00
Jason Garrett-Glaser
d1c58fce20
Avoid tracking i4x4 modes in P-frames in VP8
...
As in the previous commit, they aren't used for context selection, so it saves
memory this way.
Originally committed as revision 24416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 07:04:45 +00:00
Jason Garrett-Glaser
158e062c95
Avoid useless fill_rectangle in P-frames in VP8
...
In VP8, i4x4 only uses contexts based on neighbors in I-frames.
Originally committed as revision 24415 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 06:39:54 +00:00
Jason Garrett-Glaser
7bf254c41d
Optimize partition mv decoding in VP8
...
Originally committed as revision 24414 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 06:29:26 +00:00
Jason Garrett-Glaser
c0498b3031
Take shortcuts for mv0 case in VP8 MC
...
Avoid edge emulation -- it isn't needed if there isn't any subpel.
Originally committed as revision 24413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 05:49:09 +00:00
Jason Garrett-Glaser
702e8d3376
Much faster VP8 mv and mode prediction
...
Originally committed as revision 24412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 04:26:41 +00:00
Jason Garrett-Glaser
d229ae2b62
Convert vp56_mv to 16-bit.
...
Saves nothing except a bit of memory/cache now, but will allow future
optimizations.
Originally committed as revision 24411 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 03:33:29 +00:00
Jason Garrett-Glaser
d864dee8ab
Add prefetching to VP8 decoder
...
~5% faster overall, probably depends on CPU and resolution.
Originally committed as revision 24410 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 03:09:10 +00:00
Ronald S. Bultje
003243c3c2
Fix and enable horizontal >=SSE2 mbedge loopfilter.
...
Originally committed as revision 24409 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 01:35:26 +00:00
Loren Merritt
c7b1d9768c
relicense h264 deblock sse2 to lgpl
...
Originally committed as revision 24408 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 00:39:49 +00:00
Loren Merritt
532e769701
sync yasm macros from x264
...
Originally committed as revision 24406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 22:45:16 +00:00
Jason Garrett-Glaser
8731dbd890
Eliminate one instruction in VP8 dc_add_sse4
...
Originally committed as revision 24405 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 22:41:37 +00:00
Jason Garrett-Glaser
7dd224a42d
Various VP8 x86 deblocking speedups
...
SSSE3 versions, improve SSE2 versions a bit.
SSE2/SSSE3 mbedge h functions are currently broken, so explicitly disable them.
Originally committed as revision 24403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 22:11:03 +00:00
Jason Garrett-Glaser
b8b231b5dc
Make mmx VP8 WHT faster
...
Avoid pextrw, since it's slow on many older CPUs.
Now it doesn't require mmxext either.
Originally committed as revision 24397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 20:51:01 +00:00
Diego Pettenò
3fc548df28
Make ff_inverse stay with libavutil, and optional copy it to libavcodec.
...
The ff_inverse table is used by FASTDIV macro, defined in libavutil, but up
to now the table was defined only in libavcodec.
After this change, the main copy of ff_inverse is part of libavutil (just
like FASTDIV), but if CONFIG_SMALL is unset, then a different copy is made
available to libavcodec, to avoid the performance penalty of using an
external look up table.
Dynamic linking works, because the libraries are linked with -Bsymbolic, so
the local copy of the symbol has priority over the external; static linking
works because the table is on a standalone object file in both libraries,
so the linker is able to discard one of the two.
Tested on Linux/x86-64 and Mac OS X/x86-64.
Originally committed as revision 24383 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 12:37:37 +00:00
David Conrad
af521abc28
Add header declarations for mmx/sse constants missing them
...
Originally committed as revision 24381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 10:02:07 +00:00
David Conrad
c7eec58170
Move ff_pw_* from vc1dsp_mmx.c to dsputil_mmx.c
...
Should fix compilation with icc and should help prevent any future duplicates
Originally committed as revision 24380 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 10:02:03 +00:00
Ronald S. Bultje
e9e456d850
VP8 MBedge loopfilter MMX/MMX2/SSE2 functions for both luma (width=16)
...
and chroma (width=8).
Originally committed as revision 24378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 22:58:56 +00:00
Ronald S. Bultje
268821e76e
Chroma (width=8) inner loopfilter MMX/MMX2/SSE2 for VP8 decoder.
...
Originally committed as revision 24377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 22:04:18 +00:00
Pascal Massimino
fd7242ddbd
remove an unneeded av_realloc()
...
Originally committed as revision 24375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 21:54:46 +00:00
Måns Rullgård
096971e892
vp8: indent
...
Originally committed as revision 24368 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 17:54:28 +00:00
Måns Rullgård
070ce7efad
vp8: add do { } while(0) around XCHG() macro to avoid confusing if/else
...
This is the correct solution to the warning "fixed" in the previous
commit.
Originally committed as revision 24367 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 17:54:25 +00:00
Diego Biurrun
153da88dfb
Add some braces to silence the warning:
...
libavcodec/vp8.c:892: warning: suggest explicit braces to avoid ambiguous `else'
Originally committed as revision 24366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 17:45:54 +00:00
Vitor Sessak
a28cccf6d6
Fix memory leak in ATRAC3 decoder
...
Originally committed as revision 24361 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-20 15:08:54 +00:00
Ronald S. Bultje
c60ed66dbe
Revert r24339 (it causes fate failures on x86-64) - I'll figure out what's
...
wrong with it tomorrow or so, then re-submit.
Originally committed as revision 24341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 23:57:09 +00:00
Ronald S. Bultje
6526976f0c
Remove FF_MM_SSE2/3 flags for CPUs where this is generally not faster than
...
regular MMX code. Examples of this are the Core1 CPU. Instead, set a new flag,
FF_MM_SSE2/3SLOW, which can be checked for particular SSE2/3 functions that
have been checked specifically on such CPUs and are actually faster than
their MMX counterparts.
In addition, use this flag to enable particular VP8 and LPC SSE2 functions
that are faster than their MMX counterparts.
Based on a patch by Loren Merritt <lorenm AT u washington edu>.
Originally committed as revision 24340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 22:38:23 +00:00
Ronald S. Bultje
1878f685c0
Implement chroma (width=8) inner loopfilter MMX/MMX2/SSE2 functions.
...
Originally committed as revision 24339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 21:53:28 +00:00
Ronald S. Bultje
fb9bdf048c
Be more efficient with registers or stack memory. Saves 8/16 bytes stack
...
for x86-32, or 2 MM registers on x86-64.
Originally committed as revision 24338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 21:45:36 +00:00
Ronald S. Bultje
3facfc99da
Change function prototypes for width=8 inner and mbedge loopfilter functions
...
so that it does both U and V planes at the same time. This will have speed
advantages when using SSE2 (or higher) optimizations, since we can do both
the U and V rows together in a single xmm register.
This also renames filter16 to filter16y and filter8 to filter8uv so that it's
more obvious what each function is used for.
Originally committed as revision 24337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 21:18:04 +00:00
Alex Converse
581a96976b
aacenc: Convert if () abort() to assert().
...
Originally committed as revision 24336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 20:53:58 +00:00
Alex Converse
6d9f1b67e8
Cosmetics: Whitespace
...
Originally committed as revision 24333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 18:37:45 +00:00
Nathan Caldwell
2bb1d0e77a
aacenc: Adjust array offsets for the current channel before calling ff_psy_suggest_window().
...
Patch by Nathan Caldwell <saintdev@gmail.com>
Originally committed as revision 24332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 18:22:44 +00:00
Nathan Caldwell
0045499dec
aacenc: Refactor apply_window_and_mdct() so it no longer takes an offset channel.
...
Patch by Nathan Caldwell <saintdev@gmail.com>
Originally committed as revision 24331 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 18:19:53 +00:00
Peter Ross
07e6384dd8
Add doxygen @file comment block
...
Originally committed as revision 24326 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-19 11:50:07 +00:00
Loren Merritt
1ee076b1b1
more credits to D. J. Bernstein for fft
...
Originally committed as revision 24308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 20:06:42 +00:00
flybird2k@gmail.com
3aee5f6985
Fix memleak when using mp*float decoder.
...
Patch by flybird2k at gmail
Originally committed as revision 24307 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 19:53:24 +00:00
Peter Ross
beaa963cab
ASCII/ANSI art decoder
...
Originally committed as revision 24299 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 08:03:35 +00:00
Peter Ross
7199c3a4e2
Add @file documentation tag
...
Originally committed as revision 24298 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 07:52:47 +00:00
Peter Ross
3625999e15
8088flex TMV video decoder now uses ff_draw_pc_font()
...
Originally committed as revision 24297 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 07:46:29 +00:00
Peter Ross
9e5f3dfe25
Add ff_draw_pc_font()
...
Originally committed as revision 24296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 07:44:38 +00:00
Peter Ross
ddf9dc453f
Add ff_vga16_font
...
Originally committed as revision 24295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 07:42:15 +00:00
Diego Biurrun
0c733da8e2
Fix Doxygen @param command attribute syntax.
...
The [in] and [out] attributes have to be appended to the @param command.
Originally committed as revision 24283 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 10:43:42 +00:00
Ronald S. Bultje
819b2dd2b1
Attempt to fix x86-64 testsuite on fate.
...
Originally committed as revision 24275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 21:35:30 +00:00
Alex Converse
a2310d1e41
10l: Add a missing const.
...
Originally committed as revision 24274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 20:28:55 +00:00
Alex Converse
1676b09994
aacenc: Template quantize_and_encode_band_cost().
...
Originally committed as revision 24273 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 20:02:46 +00:00
Ronald S. Bultje
6f323f1251
Remove duplicate define.
...
Originally committed as revision 24272 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 19:54:47 +00:00
Ronald S. Bultje
889b2c26ee
Revert 24270, it contained some stuff that shouldn't have been in there.
...
Originally committed as revision 24271 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 19:54:25 +00:00
Ronald S. Bultje
2356a7834b
Remove duplicate define.
...
Originally committed as revision 24270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 19:42:32 +00:00
Ronald S. Bultje
ede1b9665a
Give x86 r%d registers names, this will simplify implementation of the chroma
...
inner loopfilter, and it also allows us to save one register on x86-64/sse2.
Originally committed as revision 24269 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 19:38:10 +00:00
Ronald S. Bultje
526e831a46
Change return statement, the REP_RET is a mistake since the else case (x86-64,
...
sse2) doesn't actually loop, so REP_RET isn't necessary.
Originally committed as revision 24268 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 18:29:14 +00:00
Vitor Sessak
66b84e4ab2
Make Intel Music Coder output SAMPLE_FMT_FLT
...
Originally committed as revision 24267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 16:50:56 +00:00
Peter Ross
a5b588bcad
Use designated initialisers for pcm codec struct
...
Originally committed as revision 24264 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 13:02:48 +00:00
David Conrad
9ac831c2c0
vp8: Save mb border needed for intra prediction so that loop filter can run
...
immediately after a mb row is decoded
Originally committed as revision 24252 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 07:20:35 +00:00
David Conrad
b6c420ce8f
vp8: Check for malloc failure
...
Originally committed as revision 24251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-16 07:20:31 +00:00
Ronald S. Bultje
a711eb4829
VP8 H/V inner loopfilter MMX/MMXEXT/SSE2 optimizations.
...
Originally committed as revision 24250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-15 23:02:34 +00:00
Måns Rullgård
751484372d
ARM: NEON H264 chroma loop filter 3 cycles faster
...
Originally committed as revision 24249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-15 21:59:27 +00:00
Måns Rullgård
8c55333c99
ARM: remove two insns from NEON chroma loop filter
...
Originally committed as revision 24243 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-15 06:45:11 +00:00
Diego Biurrun
4563de772c
Restore mistakenly removed [in]/[out] Doxygen parameter attributes.
...
Originally committed as revision 24241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 21:22:06 +00:00
Reimar Döffinger
b834becdae
Pass the composition and ancillary ID for DVB subtitles via extradata instead
...
of sub_id, this allows detecting when that information is not available and
just decode everything.
In addition extradata is required for many codecs and thus in contrast to
sub_id generally already passed on by any programs using libav*.
Also ask for a sample if we encounter a stream with multiple/changing IDs.
Originally committed as revision 24238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 17:28:40 +00:00
Thilo Borgmann
bd7d08e27e
Remove incomplete Doxygen for static decode_frame functions.
...
These functions are not documented for other decoders and
should be obvious enough even without Doxygen.
patch by Thilo Borgmann, thilo.borgmann googlemail com
Originally committed as revision 24237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 13:12:24 +00:00
Alex Converse
49d3aab764
aacenc: psy_3gpp_init(): Fix line_to_frequency for short windows.
...
Originally committed as revision 24233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 04:10:52 +00:00
Alex Converse
cecaf7d71a
aacenc: aac_psy_init(): Factorize line_to_frequency.
...
Originally committed as revision 24232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 04:10:47 +00:00
Alex Converse
d7194e3b73
aacenc: psy_3gpp_init(): Fix ath for the first line in each sfb.
...
Fix the MDCT line to frequency calculation for the first line in each sfb.
Use this value to calculate ATH.
Originally committed as revision 24231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 04:10:41 +00:00
Alex Converse
886385afd6
aacenc: psy_3gpp_init(): Calculate barks on demand.
...
Originally committed as revision 24230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-14 04:10:31 +00:00
Måns Rullgård
e3a28ea5a9
avfft: remove useless parens
...
Originally committed as revision 24229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-13 18:01:50 +00:00
Måns Rullgård
943ebf2c4e
100l: really fix fft external API init functions
...
Originally committed as revision 24228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-13 06:54:31 +00:00
Alex Converse
afa4248e4e
aacsbr: Eliminate double precision arithmetic.
...
Originally committed as revision 24227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-13 00:49:30 +00:00
Alex Converse
1ac6da3988
aacdec: Eliminate the use of doubles in the MAIN predictor.
...
Originally committed as revision 24226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 21:36:41 +00:00
Alex Converse
531cfe6e85
aacdec: Eliminate the use of doubles in decode_cce().
...
Originally committed as revision 24225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 21:36:10 +00:00
Alex Converse
93c6ff6c8c
aacdec: Use a LUT to generate CCE scale.
...
Originally committed as revision 24224 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 21:35:43 +00:00
James Zern
f07c9895e0
Do not map video quantizer scale (from 1-51 to 0-63) for libvpx anymore.
...
Patch by James Zern, jzern google
Originally committed as revision 24223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 21:23:03 +00:00
Måns Rullgård
b310844756
avfft: make init functions return NULL on failure as intended
...
Originally committed as revision 24219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 19:54:16 +00:00
Diego Biurrun
862be470f3
Use correct length modifier for size comparison in printf expression, fixes:
...
libavcodec/wmavoice.c:1906: warning: format `%lu' expects type `long unsigned int', but argument 5 has type `unsigned int'
approved by Ronald and Mans on IRC
Originally committed as revision 24218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 19:36:35 +00:00
Alex Converse
3cac899af9
Split the ADTS header decoder off of the ADTS parser.
...
The AAC decoder and ADTS-to-ASC BSF both require the header decoder
but not full parsing capabilities.
Originally committed as revision 24217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 18:52:03 +00:00
Alex Converse
7167bc94cb
aacdec: Remove the warning about non-meaningful window transitions.
...
It created false positives on seeks and where the first frame is STOP or SHORT.
It failed to warn in illegal SHORT->LONG transitions. In general it created
much confusion and many junk bug reports from the users.
Originally committed as revision 24214 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 18:24:22 +00:00
Christophe Gisquet
f2401c214d
Use math constant instead of hardcoded rounded value for sqrt(0.5).
...
Patch by Christophe.Gisquet (gmail)
Originally committed as revision 24213 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 12:32:24 +00:00
Nick Brereton
b12b16c5d3
Fix side channels when XCh extension is present.
...
Patch by Nick Brereton $name AT n$surname DOT net
Originally committed as revision 24210 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 09:10:53 +00:00
Nick Brereton
d0a1885018
Move XCH parameters into context structure.
...
Patch by Nick Brereton $name AT n$surname DOT net
Originally committed as revision 24209 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-12 09:00:17 +00:00
David Conrad
faa26db28b
MMX/SSE VC1 loop filter
...
Originally committed as revision 24208 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 22:53:01 +00:00
David Conrad
7af8fbd348
Make ff_pw_4 128 bits
...
Originally committed as revision 24207 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 22:52:55 +00:00
David Conrad
fca58a815a
vc1: Fix ordering of loop filter for I/B frames
...
All horizontal edges must be filtered before all vertical edges
Originally committed as revision 24206 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 22:52:51 +00:00
David Conrad
3683b7e570
vc1: ff_draw_horiz_band needs a one row delay when the loop filter is active
...
Originally committed as revision 24205 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 22:52:47 +00:00
James Zern
83a68cd64f
Set libvpx encoding profile to libavcodec's profile.
...
Patch by James Zern, jzern google
Originally committed as revision 24201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 17:46:44 +00:00
Justin Ruggles
23940f1405
Add AVCodecContext.lpc_type and Add AVCodecContext.lpc_passes fields.
...
Add AVLPCType enum.
Deprecate AVCodecContext.use_lpc.
Originally committed as revision 24199 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 16:56:20 +00:00
Kostya Shishkov
231745781f
Do not try to decode less than one frame of data in TrueSpeech decoder.
...
This should solve issue 2085.
Originally committed as revision 24197 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 14:50:20 +00:00
Reimar Döffinger
8b834ac5d9
100l, change avsubtitle_free to the actually tested and working version.
...
Originally committed as revision 24188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 07:53:39 +00:00
Reimar Döffinger
849ff0c4d1
Set pix_fmt to the correct value for the format the PGS decoder actually uses.
...
Originally committed as revision 24187 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 07:48:04 +00:00
Reimar Döffinger
3174073623
Remove useless casts and memset.
...
Originally committed as revision 24186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 07:45:42 +00:00
Reimar Döffinger
e1d7c8831c
Add avsubtitle_free function.
...
Originally committed as revision 24185 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 07:35:00 +00:00
Pascal Massimino
c426562cbf
add some buffer checks
...
Originally committed as revision 24184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 06:59:21 +00:00
Pascal Massimino
42859ddb7b
use avccontext->frame_size where appropriate
...
Originally committed as revision 24183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 06:40:05 +00:00
Peter Ross
53128bc371
Fix trivial punctuation error
...
Originally committed as revision 24182 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-11 05:06:08 +00:00
Reimar Döffinger
1f96d86836
Document that and why subtitle decoders do not support direct-rendering.
...
Originally committed as revision 24177 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 23:35:15 +00:00
Måns Rullgård
8fc0162ac4
Add av_ prefix to bswap macros
...
Originally committed as revision 24170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:12:30 +00:00
Måns Rullgård
e6b22522c9
bswap: change ME to NE in macro names
...
Other parts of FFmpeg use NE (native endian) rather than ME (machine).
This makes it consistent.
Originally committed as revision 24169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 22:09:01 +00:00
Kostya Shishkov
42ff9d7a58
Make WMV3 decoder print more errors when decoding beta WMV9 files.
...
As a side effect it will also decode a lot of P-frames from those.
Originally committed as revision 24161 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 14:36:53 +00:00
Aurelien Jacobs
42d1e7a287
fix VP5/6 neon dependencies
...
Originally committed as revision 24160 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 14:26:37 +00:00
Martin Storsjö
771c86c13d
Fix a leak in the AAC encoder
...
Originally committed as revision 24159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 09:14:19 +00:00
Reimar Döffinger
b576934d7e
Add native GSM 06.10 audio decoder.
...
Originally committed as revision 24158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 07:55:06 +00:00
Jason Garrett-Glaser
a6f8f11b9b
Change qmax/qmin limits to 63 instead of 51.
...
VP8 supports quantizers up to 63.
Originally committed as revision 24157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-10 06:34:57 +00:00
Víctor Paesa
4b04c5ca29
Current Cygwin has mkstemp().
...
Originally committed as revision 24144 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-09 17:09:57 +00:00
Måns Rullgård
080ce9071d
resample: replace VLA with malloc/free
...
Originally committed as revision 24142 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-09 16:05:58 +00:00
Måns Rullgård
a426016cfc
resample: check memory allocations in av_resample_init()
...
Originally committed as revision 24141 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-09 16:05:52 +00:00
Måns Rullgård
9ebf4fb660
libxvid: add some const fixing a warning
...
Originally committed as revision 24138 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-09 10:53:36 +00:00
Måns Rullgård
a30b336061
Allow using libxvid RC without enabling encoding wrapper
...
Originally committed as revision 24137 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-09 10:53:30 +00:00
Diego Biurrun
9eb42c272b
Add back previously removed non-existing function params in doxygen comments.
...
Originally committed as revision 24131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 22:57:27 +00:00
Diego Biurrun
65e3f89ffd
Improve variable names in imlt_window_float() and mlt_compensate_output().
...
Originally committed as revision 24115 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 17:55:37 +00:00
Ronald S. Bultje
e394953e62
Add missing doxy for function arguments.
...
Originally committed as revision 24110 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 15:01:59 +00:00
Ronald S. Bultje
ad32966cf9
Fix two doxy warnings.
...
Originally committed as revision 24109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 15:00:47 +00:00
Diego Biurrun
e51f04968e
Restore array sizes in doxygen parameter names.
...
Originally committed as revision 24108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 13:35:46 +00:00
Eli Friedman
e0b855f621
Remove a useless variable in zmbv decoder.
...
Patch by Eli.Friedman (gmail)
Originally committed as revision 24104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-08 08:58:52 +00:00
Justin Ruggles
a26f1d1092
ac3: make the value of codec_id during (E-)AC-3 parsing stay CODEC_ID_EAC3
...
if any E-AC-3 frames have been detected instead of switching back and forth for
AC-3 core + dependent E-AC-3 substream(s).
Fixes Issue 2022.
Originally committed as revision 24103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 23:52:24 +00:00
Alex Converse
267843844c
Cosmetics: whitespace
...
Originally committed as revision 24100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 21:50:50 +00:00
Alex Converse
03d5d9b900
aacenc: Enforce LFE bitstream restrictions.
...
Originally committed as revision 24099 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 21:48:51 +00:00
Carl Eugen Hoyos
0fd0ef7947
Add new decoder property max_lowres and do not init decoder if requested value is higher.
...
Originally committed as revision 24098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 21:23:36 +00:00
Måns Rullgård
38b0410902
aacdec: remove checks for impossible error conditions
...
Originally committed as revision 24097 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 20:23:56 +00:00
Måns Rullgård
96088566ee
ARM: remove unnecessary .previous directive
...
Originally committed as revision 24096 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 20:09:45 +00:00
Måns Rullgård
278caa6ad3
ARM: set section to .text in 'function' macro
...
This ensures code always goes into the .text section and avoids the
need to specify it explicitly after changing sections.
Originally committed as revision 24095 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 20:09:41 +00:00
Måns Rullgård
108ac7f290
ARM: hide a .size directive on non-ELF targets
...
Originally committed as revision 24094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 20:09:37 +00:00
Reimar Döffinger
b0c73ba11f
motion_est: fix implicit truncation warnings
...
Patch by Reimar Döffinger and Eli Friedman (independently).
Originally committed as revision 24083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 12:27:44 +00:00
Michael Niedermayer
69b56ed7a6
Move ff_dct_init(context) out of if(one time init)
...
fixes calling a null pointer in issue658
Originally committed as revision 24081 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 10:36:26 +00:00
Eli Friedman
c7310b7b2b
Silence warning "new qualifiers in middle of multi-level
...
non-const cast are unsafe".
Patch by Eli Friedman, eli d friedman a gmail
Originally committed as revision 24080 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 10:24:34 +00:00
Vitor Sessak
881fd7a62f
Move SSE optimized 32-point DCT to its own file. Should fix breakage with YASM
...
disabled.
Originally committed as revision 24078 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 17:48:23 +00:00
Vitor Sessak
4dcc4f8eaa
SSE optimized 32-point DCT
...
Originally committed as revision 24077 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 16:58:54 +00:00
Måns Rullgård
a2ab5ad5f1
Rename av_tempfile() to ff_tempfile()
...
Originally committed as revision 24075 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 13:22:44 +00:00
Måns Rullgård
25cbc8b46e
Move av_tempfile() to libxvidff.c as only the xvid wrapper needs it
...
Originally committed as revision 24074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 13:04:21 +00:00
Eli Friedman
9049fa5479
Add av_unused to decode_mb_skip declaration to fix the following warning:
...
libavcodec/h264.h:1260: warning: ‘decode_mb_skip’ defined but not used
patch by Eli Friedman, eli.friedman gmail com
Originally committed as revision 24069 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 07:40:35 +00:00
Måns Rullgård
86e41bc300
aacenc: replace VLA with fixed size
...
Number of channels is restricted to 6 so the size is acceptable
for the stack.
Originally committed as revision 24068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-06 00:06:15 +00:00
Michael Niedermayer
3d5421201b
Perform sliding window operation during frame gap handling.
...
This avoids some warnings about too many reference frames.
Originally committed as revision 24057 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-05 14:36:03 +00:00
Michael Niedermayer
733f5990d0
Factorize ff_generate_sliding_window_mmcos() out.
...
Originally committed as revision 24056 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-05 12:42:19 +00:00
Nick Brereton
0712c230ae
DCA: Occasionally a false XCH sync word can turn up after the core DTS data,
...
to verify the sync word the extension fsize field should be compared to
the core data length field.
Patch by nick.nbrereton@net
Originally committed as revision 24054 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-05 08:16:43 +00:00
Benjamin Larsson
324a94b022
DCA: *_bits() -> *_bits_long() where needed, half fix for broken bitstream parsing
...
Originally committed as revision 24051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-05 01:43:47 +00:00
Måns Rullgård
aad9f50751
Fix build with hardcoded tables
...
The recently added dummy rule for missing headers took precedence
over the tablegen rules. Listing the generated headers explicitly
overrides this. A cleaner solution would be preferable.
Originally committed as revision 24046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 19:03:04 +00:00
Måns Rullgård
a46b84d120
PPC: convert Altivec FFT to pure assembler
...
On PPC a leaf function has a 288-byte red zone below the stack pointer,
sparing these functions the chore of setting up a full stack frame.
When a function call is disguised within an inline asm block, the
compiler might not adjust the stack pointer as required before a
function call, resulting in the red zone being clobbered.
Moving the entire function to pure asm avoids this problem and also
results in somewhat better code.
Originally committed as revision 24044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 18:33:47 +00:00
Måns Rullgård
deca86eab1
PPC: gas-preprocessor handles m[ft]spr shorthands
...
Originally committed as revision 24043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 18:33:43 +00:00
Måns Rullgård
fe3d2e4b02
PPC: add some asm support macros
...
Originally committed as revision 24042 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 18:33:40 +00:00
Ronald S. Bultje
f2a30bd840
Simple H/V loopfilter for VP8 in MMX, MMX2 and SSE2 (yay for yasm macros).
...
Originally committed as revision 24029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 19:26:30 +00:00
Måns Rullgård
a075902f3d
PPC: add _interleave versions of fft{4,6,16}_altivec
...
This removes the need for a post-swizzle with the small FFTs.
Originally committed as revision 24025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 18:36:10 +00:00
Rodney Baker
2d525ef483
Change all occurences of "inofficial" to "unofficial" in code, comments
...
and options. Keep old options until next major version bump.
Patch by Rodney Baker, rodney d baker a iinet d net d au
Originally committed as revision 24021 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 15:35:23 +00:00
Baptiste Coudurier
bb943bb8fc
Give context to av_log
...
Originally committed as revision 24018 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 04:40:12 +00:00
Jason Garrett-Glaser
b06855f18a
SSSE3 versions of vp8 width4 bilinear MC functions
...
Originally committed as revision 24013 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 00:48:12 +00:00
David Conrad
5245c04da3
VP8: Move calculation of outer filter limit out of dsp functions for normal
...
filter to match the simple loop filter
Originally committed as revision 24010 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 21:04:45 +00:00
Aurelien Jacobs
8ee82f40ca
fix comment grammar
...
Originally committed as revision 24008 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 19:26:27 +00:00
Reimar Döffinger
961b0c41b9
Fix use of unintialized variable introduced in r20411.
...
Originally committed as revision 24005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 17:05:36 +00:00
Aurelien Jacobs
c01694c889
saner default value for convergence_duration
...
Originally committed as revision 24002 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 15:57:56 +00:00
Aurelien Jacobs
08b04ba9ce
clarify convergence_duration documentation
...
Originally committed as revision 24001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 15:56:38 +00:00
Måns Rullgård
79042a6eb1
Fix memory leak introduced in r23933
...
Originally committed as revision 23998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 15:00:21 +00:00
Diego Biurrun
3c042da75d
Remove stray Doxygen grouping command; fixes one Doxygen warning.
...
Originally committed as revision 23996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 13:00:18 +00:00
Diego Biurrun
423c254c18
Disambiguate bitstream groups for AAC and RV30/RV40.
...
Originally committed as revision 23995 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:55:36 +00:00
Diego Biurrun
2d62158091
Replace '\0 bytes' by 'NULL bytes' in Doxygen comments.
...
Doxygen mistakes the \ for the start of a Doxygen command.
Originally committed as revision 23994 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:53:37 +00:00
Diego Biurrun
34630b93dc
Move DECODE_BYTES_PAD* macros before Doxygen comments.
...
Doxygen thinks the comments belong to the macros otherwise.
Originally committed as revision 23993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:52:14 +00:00
Diego Biurrun
0baf34d844
Remove angular brackets from Doxygen comments; Doxygen confuses them for HTML.
...
Originally committed as revision 23991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:48:32 +00:00
Diego Biurrun
58772292c0
@begingroup --> @defgroup, only the latter is correct Doxygen syntax.
...
Originally committed as revision 23990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:45:49 +00:00
Diego Biurrun
094b18b683
Fix doxy of gb parameter in decode_gain_info().
...
Originally committed as revision 23989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:42:32 +00:00
Diego Biurrun
b34aaed2cf
Move #ifdef before zlib_decomp() up so it covers the Doxygen comments.
...
Otherwise Doxygen gets confused and cannot map comments to functions.
Originally committed as revision 23988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:41:07 +00:00
Diego Biurrun
bbd6684f39
Fix doxy of fixed_mean_energy parameter in ff_amr_set_fixed_gain().
...
Originally committed as revision 23987 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:35:51 +00:00
Diego Biurrun
8d84a909c3
Fix the signature of ff_set_min_dist_lsf() to match the implementation
...
and add doxy for the size parameter.
Originally committed as revision 23986 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 12:26:22 +00: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
Diego Biurrun
6da88bd389
Fix typo in Doxygen function parameter name.
...
Originally committed as revision 23983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:54:34 +00:00
Diego Biurrun
daf6c68d33
Avoid one more instance of angular brackets in Doxygen comments.
...
Originally committed as revision 23982 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:53:00 +00:00
Diego Biurrun
3fa7626863
Avoid square brackets in Doxygen comments; Doxygen chokes on them.
...
Originally committed as revision 23979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:44:58 +00:00
Diego Biurrun
791384ec29
Remove two more non-existing stray Doxygen function arguments.
...
Originally committed as revision 23977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:37:53 +00:00
Diego Biurrun
09f6a45dc2
Remove non-existing stray arguments from Doxygen function documentation.
...
Originally committed as revision 23976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:19:29 +00:00
Diego Biurrun
96e07a73ec
Fix two more instances of wrong @ usage in Doxygen comments.
...
Originally committed as revision 23974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:09:12 +00:00
Diego Biurrun
fd566520c7
Fix printing of '@' symbols in Doxygen comments; the correct syntax is '@@'.
...
Originally committed as revision 23973 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 11:05:47 +00:00
Diego Biurrun
33edd31f5f
Remove redundant and harmful explicit filename after @file Doxygen command.
...
Originally committed as revision 23971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 10:59:35 +00:00
Diego Biurrun
9a58234fea
Fix misspelled parameter names in Doxygen documentation.
...
This fixes one Doxygen warning each.
Originally committed as revision 23970 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 10:49:29 +00:00
Diego Biurrun
5298b070c2
Remove misplaced Doxygen comment.
...
Originally committed as revision 23969 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 10:37:13 +00:00
Jason Garrett-Glaser
dcc602d802
SSSE3 versions of width4 VP8 6-tap MC functions
...
Also make some small changes to saturation order of 4-tap SSSE3 MC to fix a
non-bitexactness bug.
Patch mostly by Eli Friedman <eli.friedman AT gmail DOT com>.
Originally committed as revision 23965 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 05:27:41 +00:00
Diego Pettenò
cb9b39fba9
tablegen: the executable depends on tablegen headers as well
...
Make sure that the *_tablegen.h header is listed in the dependencies, but
filter it out in the compile line.
Originally committed as revision 23963 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 00:30:27 +00:00
Måns Rullgård
9bbb50648d
PPC: fix build on OSX without gas-preprocessor
...
Originally committed as revision 23962 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 00:20:26 +00:00
Måns Rullgård
48966b02cb
Grammar fixes
...
Originally committed as revision 23961 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 00:03:48 +00:00
Måns Rullgård
3c35da2f7f
vorbisdec: remove variable-length arrays
...
Originally committed as revision 23960 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:36:48 +00:00
Loren Merritt
cf61994a17
PPC: Altivec IMDCT
...
Patch by Loren Merritt
Originally committed as revision 23959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:49 +00:00
Måns Rullgård
fe20bdf9db
Indent
...
Originally committed as revision 23958 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:46 +00:00
Måns Rullgård
588d28ac08
Remove vestiges of radix-2 FFT
...
Patch (mostly) by Loren Merritt
Originally committed as revision 23957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:42 +00:00
Måns Rullgård
bf7ba15372
PPC: Altivec split-radix FFT
...
1.8x faster than altivec radix-2 on a G4
8% faster vorbis decoding
Patch (mostly) by Loren Merritt
Originally committed as revision 23956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:39 +00:00
Måns Rullgård
2f0c136e1f
Check whether IBM or Apple PPC assembler syntax is used
...
This checks which assembler syntax is supported and defines macros
for register names accordingly.
Originally committed as revision 23952 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:27 +00:00
Måns Rullgård
59bebb11e0
mpegaudio: move compute_antialias_float() to mpegaudiodec_float.c
...
Also put compute_antialias_integer() under !CONFIG_FLOAT and change
forward declarations to declare only the relevant one of these.
Fixes warnings about unused functions and pointer type mismatches.
Originally committed as revision 23950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:20 +00:00
Måns Rullgård
35d597d556
mpegaudio: call ff_mpegaudiodec_init_mmx() only from float decoder
...
The mmx code is floating-point only, and this function does not know
from which decoder it is called. Without this change, the integer
decoder only "works" because the size of the context struct is smaller
in this case, and the mmx init function writes the function pointer
outside the allocated context.
Fixes issue 2054.
Originally committed as revision 23949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:17 +00:00
Jason Garrett-Glaser
8434fc26eb
Fix 100L in vp8dsp asm init
...
Originally committed as revision 23946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 22:09:22 +00:00
Aurelien Jacobs
956dae9e77
adu and mp3on4 functions are also needed by their respective float decoders
...
Originally committed as revision 23944 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 21:08:20 +00:00
Vitor Sessak
060dd93000
Altivec-optimized mp{1,2,3} windowing
...
Originally committed as revision 23943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 21:04:12 +00:00
Stefano Sabatini
2b4abbd6f5
Move colorspace.h from libavcodec to libavutil.
...
Avoid a compile-time dependency of the pad filter on libavcodec.
Originally committed as revision 23940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 18:49:44 +00:00
Aurelien Jacobs
6eabaef4b8
cosmetic: improve comment breaking at 80 cols
...
Originally committed as revision 23938 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 16:28:38 +00:00
Aurelien Jacobs
7bcef8483f
fix dependencies of vp5 and vp6 decoders after r23915
...
they now also depends on cabac.o for ff_h264_norm_shift
Originally committed as revision 23937 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 16:09:38 +00:00
Måns Rullgård
2cbd734a38
Maybe fix threaded mpeg*video encoding
...
This allocates per-thread copies of some MpegEncContext.ac_val which
is used concurrently from the encoding threads.
Originally committed as revision 23933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 11:51:01 +00:00
Jason Garrett-Glaser
17dc7c7a60
Fix h264/vp8 intra pred on Athlon XP
...
Whose idea was it to have a CPU that didn't SIGILL on an invalid instruction?
Originally committed as revision 23927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 10:29:47 +00:00
Rafaël Carré
b47a52dc86
mpegaudioenc: Remove write-only variables from the context.
...
Patch by Rafaël Carré (rafael <dot> carre <at> gmail).
Originally committed as revision 23926 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 05:17:02 +00:00
Jason Garrett-Glaser
4148855ee4
Eliminate another redundant instruction in vp56/8 arithcoder
...
Necessary because of this GCC bug:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44474
To do this, convert some, but not all (!) of the variables in VP56RangeCoder
into local variables.
If we convert c->high into a local variable, gcc gets the stupids and refuses
to use a conditional move for the unpredictable main branch.
TODO: dispense with this bullshit and write an asm version.
Originally committed as revision 23924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:59:27 +00:00
Jason Garrett-Glaser
36d6b545a1
CMOV-ify vp56 arithcoder
...
This incantation causes gcc 4.3 to generate cmov on x86, a vastly better option
than a completely unpredictable branch.
Hopefully this carries over to newer versions and other CPUs with conditionals.
~5 cycles saved per call on a Core i7.
Originally committed as revision 23921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:18:47 +00:00
Jason Garrett-Glaser
2e6ed48d6e
Optimize vp56 arithmetic decoder
...
Negate "bits" to eliminate a negate in cache refilling.
Originally committed as revision 23920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 23:15:25 +00:00