Robert Swain
4a27f326c5
Add support for vorbis 6.1 and 7.1 channel configurations as per the new spec
...
http://xiph.org/vorbis/doc/Vorbis_I_spec.html#x1-800004.3.9
Originally committed as revision 21527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-29 13:51:25 +00:00
Laurent Aimar
68a4d3498f
vp56: check buffer size to fix a potential segfault
...
patch by Laurent Aimar fenrir _at_ videolan _dot_ org
Originally committed as revision 21521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 23:49:46 +00:00
Justin Ruggles
2c2cdc0bfb
Simplify error handling by processing header errors separate from CRC and
...
buffer size vs. frame size errors.
Originally committed as revision 21519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 23:19:33 +00:00
Reimar Döffinger
836fc77785
Move variable declaration to block where it is used and simplify code.
...
Avoids a (incorrect) "possibly used uninitialized" warning, no measurable
speed difference.
Originally committed as revision 21518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 21:01:50 +00:00
Rafaël Carré
dd0cd3d273
Export H264 profile and level in AVCodecContext.
...
Patch by Rafaël Carré, rafael D carre A gmail
Originally committed as revision 21517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 20:57:29 +00:00
Reimar Döffinger
88517e9f9d
Extract duplicated code into a separate function.
...
5% faster on Intel Atom with gcc 4.4.1 (performance is unchanged
if using av_always_inline).
Originally committed as revision 21516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 20:15:19 +00:00
Michael Niedermayer
34032e26ab
factorize first filter call out, this makes the code somewhat
...
smaller without any speed loss.
Originally committed as revision 21514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 19:44:13 +00:00
Ronald S. Bultje
52ed8d0efe
Simplify. See "[PATCH] simplify ff_set_fixed_vector()" thread on mailinglist.
...
Originally committed as revision 21510 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 14:29:53 +00:00
Rafaël Carré
e9ca315dd1
Initialize thread_context[0] with h264 parser context.
...
This allows freeing the parser memory in the thread_context freeing loop.
Patch by Rafaël Carré gmailify(rafael, carre)
Originally committed as revision 21508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 13:04:25 +00:00
Michael Niedermayer
592e03a8da
Change wraper functions to always inline, they are faster now that way.
...
1% faster MBAFF decoding overall, maybe ~0.1% faster for the cathedral sample.
Originally committed as revision 21507 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:37:35 +00:00
Michael Niedermayer
5364db2893
indent
...
Originally committed as revision 21506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:18:06 +00:00
Michael Niedermayer
2cf0d46d4c
Restructure check_mv()
...
~20 cpu cycles faster loopfilter
Originally committed as revision 21505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 11:12:46 +00:00
Michael Niedermayer
fabd704b37
Restructure if() in check_mv()
...
quite a bit faster
Originally committed as revision 21504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:38:43 +00:00
Michael Niedermayer
ca7c784fdf
Unroll loops in check_mv()
...
~6% faster (slow path) loopfilter (should be ~2% overall)
Originally committed as revision 21503 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:34:06 +00:00
Michael Niedermayer
e814817b74
Factor mv/ref compare code out.
...
This is a hair slower (0.15% maybe) but i really dont want to have the
identical code duplicated 3 times because gcc adds odd threaded jumps with
register reshuffling and register safe/restore.
Originally committed as revision 21502 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 10:10:02 +00:00
Michael Niedermayer
3b84924516
Simplify first edge filter condition.
...
Originally committed as revision 21497 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:41:52 +00:00
Michael Niedermayer
b6302d0c55
Cosmetics, mostly indention, 2 or so new fixme comments that i was to lazy
...
to split out
Originally committed as revision 21496 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:20:31 +00:00
Michael Niedermayer
0a32508d90
Make the fast loop filter path work with unavailable left MBs.
...
This prevents the issue with having to switch between slow and
fast code paths in each row.
0.5% faster loopfilter for cathedral
Originally committed as revision 21495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 02:15:25 +00:00
Michael Niedermayer
b304767301
get rid of the start variable.
...
a few cycles faster
Originally committed as revision 21494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 01:31:06 +00:00
Michael Niedermayer
980bcc554d
Unroll main loop so the edge==0 case is seperate.
...
This allows many things to be simplified away.
h264 decoder is overall 1% faster with a mbaff sample and
0.1% slower with the cathedral sample, probably because the slow loop
filter code must be loaded into the code cache for each first MB of each
row but isnt used for the following MBs.
Originally committed as revision 21493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 01:24:25 +00:00
Rafaël Carré
881b5b80da
Fix svq3_* function declarations.
...
Patch by Rafaël Carré, rafael D carre A gmail
Originally committed as revision 21489 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 22:22:01 +00:00
Måns Rullgård
e3d8807315
SVQ1: 4-byte-align codebook tables
...
These tables are accessed as uint32 so they must be suitably aligned.
Originally committed as revision 21488 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 21:31:19 +00:00
Reimar Döffinger
7e2ef1b9e1
Fix possible crashes in mlp parser, it tries to go back 7 bytes after
...
finding the 4-byte signature.
Add a check that ignores the signature if we do not have enough previous
data to go back at least 7 bytes.
Originally committed as revision 21487 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 20:04:19 +00:00
Reimar Döffinger
d780511b94
Reduce log level of "Extracting .. channel downmix" to AV_LOG_DEBUG, the
...
message is pointless to ordinary users and is printed once per frame.
Originally committed as revision 21486 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 20:02:18 +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
Michael Niedermayer
8670f84cf9
Update comment.
...
Originally committed as revision 21479 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 13:18:08 +00:00
Michael Niedermayer
e470ef7641
Use table to speedup access to non_zero_count in MBAFF with differing interlacing.
...
~4 cpu cycles speedup
Originally committed as revision 21474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 11:14:29 +00:00
Stefano Sabatini
e8a9d01846
Fix misc typos, patch by
...
Fabian Greffrath base64_decode(PGZhYmlhbkBncmVmZnJhdGguY29tPg==).
Originally committed as revision 21473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 00:31:52 +00:00
Michael Niedermayer
8652e44acd
Simplify left_xy init
...
Originally committed as revision 21470 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-27 00:15:55 +00:00
Michael Niedermayer
599fe45b8d
Split fill_caches() between loopfilter & decode, the 2 no longer where common
...
enough to justify the messy interleaving.
Originally committed as revision 21469 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 23:54:11 +00:00
Michael Niedermayer
16e5e39ab4
Optimize loop filtering of the left edge in MBAFF.
...
60 cpu cycles speedup
Originally committed as revision 21467 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 22:59:19 +00:00
Michael Niedermayer
dfe4dc154b
use left_xy[1] in mbaff QP loop filter check, this improves the amount that can
...
be skiped.
Originally committed as revision 21465 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 20:28:58 +00:00
Michael Niedermayer
aebf31236e
Optimize mv/ref cache init for left MB.
...
Originally committed as revision 21464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 20:25:14 +00:00
Måns Rullgård
f2c694af28
Add UMULH()
...
This function/macro returns the high half of the unsigned 64-bit
product of two unsigned 32-bit operands.
Originally committed as revision 21463 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 18:05:55 +00:00
Loren Merritt
900479bb74
optimize h264_loop_filter_strength_mmx2
...
244->160 cycles on core2
Originally committed as revision 21462 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 17:17:48 +00:00
Michael Niedermayer
6548c939ec
remove unneeded check
...
Originally committed as revision 21460 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 15:34:21 +00:00
Michael Niedermayer
18ea2f933c
Use left_mb_xy from fill_caches instead of recalculating it.
...
Originally committed as revision 21459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 14:57:53 +00:00
Michael Niedermayer
a715af8ff4
Simplify left_xy content for the loop filter, this also makes it closer to
...
what is needed and its faster too.
Originally committed as revision 21458 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 14:55:19 +00:00
Michael Niedermayer
d5c30c86d0
Simplify loop filter a little by using top/left_type.
...
Originally committed as revision 21457 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:39:26 +00:00
Michael Niedermayer
99344d4372
Set top & left types for deblock in fill_caches().
...
Originally committed as revision 21456 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:38:18 +00:00
Michael Niedermayer
aaa995d7f2
100l typo fix, mixed up +-1 forcing the loop filter skip to never skip.
...
Originally committed as revision 21455 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:30:33 +00:00
Michael Niedermayer
66472bcde0
cosmetic
...
Originally committed as revision 21454 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:28:55 +00:00
Michael Niedermayer
3046c25ec5
Fix qp_thres loop filter check for MBAFF.
...
Originally committed as revision 21453 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 13:27:22 +00:00
Michael Niedermayer
806ac67b51
Optimize mb neighbor initialization for MBAFF in fill_caches().
...
~10 cpu cycles speedup.
Originally committed as revision 21452 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 10:35:36 +00:00
Carl Eugen Hoyos
ddee80f384
Metasoft MJPEG codec has Cb and Cr swapped, fixes issue 1611.
...
Originally committed as revision 21451 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 10:30:24 +00:00
Michael Niedermayer
021dccba1f
Fix heap overflow due to lack of nb_components check.
...
Originally committed as revision 21450 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 13:26:10 +00:00
Carl Eugen Hoyos
cc5d4f4c34
Release buffer when decoding is finished.
...
Originally committed as revision 21449 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 10:46:32 +00:00
Michael Niedermayer
2773920698
Optimize decode_cabac_field_decoding_flag().
...
~4 cpu cycles faster
Originally committed as revision 21447 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 02:44:34 +00:00
Alexander Strange
1e4f1c56d7
100l, correct wrong H.264+adaptive MBAFF decoding
...
Fixes several FATE tests.
Originally committed as revision 21445 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 01:56:13 +00:00
Alexander Strange
0b69d6254f
H.264: Use 64-/128-bit write-combining macros for copies
...
2-3% faster decode on x86-32 core2.
Originally committed as revision 21440 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-25 00:30:44 +00:00