Commit Graph

11172 Commits

Author SHA1 Message Date
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
Justin Ruggles
008f872f61 Only check frame size if the header is valid.
Originally committed as revision 21439 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 23:55:33 +00:00
Carl Eugen Hoyos
b52fcba9cd Fix decoding ATI VCR2 codec, sample in
samples/V-codecs/ATI-VCR12/ATI/VCR2test.avi
Software decoding was broken since r8865, when two new context variables
were added, but not initialized in vcr2_init_sequence().
Another such context variable was added in r18381.

Originally committed as revision 21438 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 22:47:50 +00:00
Michael Niedermayer
996b099a0f Branchless setting of MB_TYPE_8x8DCT.
Not benchmarked as i failed to find a sample that uses this one. But it should be faster.

Originally committed as revision 21435 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 20:54:09 +00:00
Michael Niedermayer
81afcf1fae Remove cruft.
Originally committed as revision 21434 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 20:52:49 +00:00
Michael Niedermayer
d9ef0d2e14 Mark index as unsigend so gcc knows it doesnt need a sign extension on x86_64.
Any tips on how i can convince gcc that it doesnt need a
mov     %eax, %eax
in every get_bits() ?

Originally committed as revision 21433 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 19:19:09 +00:00
Michael Niedermayer
449d1442a6 a[b-1] -> (a-1)[b].
Helps gcc not to add seperate -1 instructions.

Originally committed as revision 21432 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:42:22 +00:00
Michael Niedermayer
7abc860323 Optimize suffix_length computation, 1 cpu cycle speedup.
Originally committed as revision 21431 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:23:46 +00:00
Michael Niedermayer
eeb1e92feb Simplify suffix_length computation, same speed.
Originally committed as revision 21430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:18:08 +00:00
Michael Niedermayer
c78295ad1b Optimize level_code computation, 6cpu cycles speedup.
Originally committed as revision 21428 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:17:01 +00:00
Reimar Döffinger
0b882b4009 Fix crash in MLP decoder due to integer overflow.
Probably only DoS, init_get_bits sets buffer to NULL, thus causing a
NULL-dereference directly after.

Originally committed as revision 21426 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:07:29 +00:00
Michael Niedermayer
8ba436171f 1 cpu cycle faster suffix_length calculation.
Originally committed as revision 21425 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 18:05:02 +00:00
Laurent Aimar
f0f86627fe VC-1/WMV3 DXVA2 implementation
It allows VLD VC-1/WMV3 decoding using DXVA2 (GPU assisted decoding API under
VISTA and Windows 7).
 It is implemented by using AVHWAccel API.

Originally committed as revision 21424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 17:27:00 +00:00
Michael Niedermayer
77d40dce93 Remove is_complex from loop_filter() its useless there in its current form.
Originally committed as revision 21423 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 17:02:44 +00:00
Laurent Aimar
34fecc9afd Added a few missing consts in dxva_h264.
Originally committed as revision 21422 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 16:40:58 +00:00
Laurent Aimar
0dc343d4cb Added a missing const to ff_h264_get_slice_type().
Originally committed as revision 21421 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 16:37:12 +00:00
Laurent Aimar
8880c8bcc3 Added missing const to get_bits_count().
Originally committed as revision 21419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 16:22:09 +00:00
Michael Niedermayer
b2b7ab32aa Prefer cbp over cbp_table.
Originally committed as revision 21418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 13:43:26 +00:00
Michael Niedermayer
50eb40a799 Remove all uses of slice_type* from the loop filter, also remove its
initialization befre the loop filter.

Originally committed as revision 21416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-24 13:20:17 +00:00
Michael Niedermayer
2c0ee01866 Remove unneeded reset of non_zero_count_cache for deblock.
Originally committed as revision 21414 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 22:11:46 +00:00
Michael Niedermayer
01c511683f Remove useless things from the deblock side of fill_caches().
Originally committed as revision 21413 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 21:57:36 +00:00
Michael Niedermayer
ea3b456dd6 make mv_cache init 64bit where possible.
Originally committed as revision 21412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 21:45:12 +00:00
Laurent Aimar
85167c46ef Moved reusable functions from dxva2_h264.c to dxva2.c
Originally committed as revision 21407 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:17:57 +00:00
Michael Niedermayer
0c32e19d58 Move +52 from the loop filter to the alpha/beta offsets in the context.
This should fix a segfault, also it might be faster on systems where the
+52 wasnt free.

Originally committed as revision 21406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:05:30 +00:00
Reimar Döffinger
6231d0983b Release buffer when the codec is closed.
Originally committed as revision 21405 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:04:09 +00:00
Reimar Döffinger
b9e3f85dbc Use qstride = 0 and allocate only a single line for qscale_table since
for this codecs all quants are the same for a single frame.

Originally committed as revision 21404 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:01:38 +00:00
Laurent Aimar
e4833b5d71 Added ff_dxva2_ prefix to get_surface(_index) and commit_buffer functions.
Originally committed as revision 21403 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:01:28 +00:00
Laurent Aimar
8cf9bbb6dc Reindent the content of one if(){} in ff_dxva2_common_end_frame.
Originally committed as revision 21402 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 18:00:51 +00:00
Laurent Aimar
8db7ee09c3 Moved reusable code from dxva2_h264.c:end_frame to ff_dxva2_common_end_frame.
Originally committed as revision 21401 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 17:59:08 +00:00
Michael Niedermayer
1cc2d21175 Set edges based on cbp and mv partitioning, not just skiped MBs.
This is faster for videos that have lots of MBs that fall in this category.

Originally committed as revision 21400 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 15:28:34 +00:00
Reimar Döffinger
87ac0c0a39 Use AVPALETTE_COUNT instead of hard-coding 256.
This is consistent with other codecs and will also avoid a crash on the
memcpy to data[1] if AVPALETTE_SIZE ever increases.

Originally committed as revision 21399 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 15:22:48 +00:00
Reimar Döffinger
ab8075a2da Remove redundant initialization of the palette, it is part of the context
and that one is always 0-initialized already.

Originally committed as revision 21398 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 15:19:34 +00:00
Michael Niedermayer
6b3661b22d Optimize filter_mb_mbaff_edge*()
Originally committed as revision 21397 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 14:50:56 +00:00
Michael Niedermayer
933bea77e5 Optmize 8x8dct check used to skip some borders in the loop filter.
4 cpu cycles faster.

Originally committed as revision 21396 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 13:54:02 +00:00
Reimar Döffinger
6242b1c424 Use av_freep intead of av_free to free pointers in vp56 context.
Originally committed as revision 21395 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 13:49:09 +00:00
Reimar Döffinger
48c65d0dc9 Zero the frame data on allocation for VB codec, e.g. the FATE sample seems to
rely on this.

Originally committed as revision 21394 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 10:25:22 +00:00
Daniel Verkamp
a7e6328cba Export wma_critical_freqs as ff_wma_critical_freqs
Originally committed as revision 21391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-23 08:39:50 +00:00
Reimar Döffinger
e62a55b92e The SSSE3 version of dct_quantize in mpegvideo_mmx_template.c needs
inv_zigzag_direct16 16-byte aligned, so mark it appropriately.
Fixes encoder crashes e.g. with MPlayer's -vf lavc.

Originally committed as revision 21389 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 23:40:18 +00:00
Alex Converse
3deb53849e Implement an sse version of scalarproduct_float().
Originally committed as revision 21386 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 23:07:58 +00:00
Kostya Shishkov
57835fc1ae Check for chunk boundaries when decoding VB codec data
Originally committed as revision 21385 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 19:07:44 +00:00
Kostya Shishkov
2727649677 Zero palette in case not all entries are initialized later
Originally committed as revision 21384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 18:28:41 +00:00
Måns Rullgård
c67278098d Move array specifiers outside DECLARE_ALIGNED() invocations
Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 03:25:11 +00:00
Michael Niedermayer
258b60c224 Gcc idiocy fixes related to filter_mb_edge*.
Change order of operands as gcc uses a hardcoded register per operand it seems
even for static functions
thus reducing unneeded moved (now functions try to pass the same argument in
the same spot).
Change signed int to unsigned int for array indexes as signed requires signed
extension while unsigned is free.
move the +52 up and merge it where it will end as a lea instruction, gcc always
splits the 52 out there turning the free +52 into an expensive one otherwise.
The changed code becomes a little faster.

Originally committed as revision 21375 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-22 01:59:17 +00:00
Michael Niedermayer
1f445f5473 Move dquant check into qscale overflow check.
This should be faster (couldnt meassue a difference), and its less picky
on slightly out of spec dquant.

Originally committed as revision 21373 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 21:01:26 +00:00
Michael Niedermayer
31f6e3c19e Make calculation of mask_edge free of branches, faster of course but probably
little effect overall as this is not that often executed.

Originally committed as revision 21366 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 16:50:31 +00:00
Michael Niedermayer
e9e949cf74 Clarify CODEC_CAP_SUBFRAMES.
Originally committed as revision 21364 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 13:49:47 +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
David Conrad
1f630b9717 Use two separate memory arguments since 8+() is invalid gas syntax
Originally committed as revision 21360 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-21 09:46:57 +00:00
Måns Rullgård
68cf92ee5e Always call avcodec_thread_init()
The various avcodec_thread_init() functions are updated to return
immediately after setting avctx->thread_count.  This allows -threads 0
to pass through to codecs.  It also simplifies the usage for apps
using libavcodec.

Originally committed as revision 21358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 22:55:50 +00:00
Michael Niedermayer
b4c2ada528 Attempt to fix asm compilation failure.
Only tested on gcc 4 & x86_64.

Originally committed as revision 21355 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 19:23:19 +00:00
Laurent Aimar
92c6a099ba H264 DXVA2 implementation
It allows VLD H264 decoding using DXVA2 (GPU assisted decoding API under
VISTA and Windows 7).
 It is implemented by using AVHWAccel API. It has been tested successfully
for some time in VLC using an nvidia card on Windows 7.

 To compile it, you need to have the system header dxva2api.h (either from
microsoft or using http://downloads.videolan.org/pub/videolan/testing/contrib/dxva2api.h)
 The generated libavcodec.dll does not depend directly on any new lib as
the necessary objects are given by the application using FFmpeg.

Originally committed as revision 21353 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 18:54:51 +00:00
Måns Rullgård
5e7dfb7de1 Move COPY3_IF_LT to lavc/mathops.h
This obscure macro is only used in motion_est.c so having it in lavc
makes more sense.  See discussion here:
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2008-November/056561.html

Originally committed as revision 21346 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 06:01:54 +00:00
Alexander Strange
bec358d683 H.264: Declare bS with DECLARE_ALIGNED_8 for uint64_t casts.
Originally committed as revision 21345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 03:28:57 +00:00
Michael Niedermayer
97775235ec Simplify/Optimize another of the mbaff loop filter cases.
Its faster but too rarely used to make a differnce.

Originally committed as revision 21344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 03:00:08 +00:00
Michael Niedermayer
085d9d98e8 Only calculate the second chroma qp if it differs from the firstin the main
loop filter. (a little faster for the common case where they are equal)

Originally committed as revision 21342 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 01:49:24 +00:00
Michael Niedermayer
948180e7b1 Set bS with 64bits at a time.
Originally committed as revision 21341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 01:38:32 +00:00
Michael Niedermayer
87df989ee3 Merge multiple IS_* macro uses where possible.
Originally committed as revision 21340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 01:15:30 +00:00
Michael Niedermayer
55c54371c4 Simplify and optimize intra code in h264_loopfilter.c
Originally committed as revision 21339 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 00:44:03 +00:00
Vitor Sessak
7f3f5f46c2 Floating point discrete cosine transform
Originally committed as revision 21338 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 00:39:47 +00:00
David Conrad
c4f2b6dce3 Use constant offsets for memory operands since gcc is unable to
This fixes gcc failing to fit 6 memory locations into 7 registers on x86-32

Originally committed as revision 21337 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 00:34:10 +00:00
Michael Niedermayer
9528ce7b99 Sightly simplify initialization of int start.
No real speed change.

Originally committed as revision 21336 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-20 00:17:16 +00:00
Michael Niedermayer
3f50965b28 Mark the h264 c loop filter as av_always_inline av_flatten to make sure its
all inlined, its small and horizontal & vertical versions are build out of
them. no change as gcc already did this.

Originally committed as revision 21333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 22:54:13 +00:00
Michael Niedermayer
c9640c17ac skip outer pixels if possible in h264_loop_filter_luma_c().
overall 3.7% faster loop filtering (C version only)

Originally committed as revision 21332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 22:46:58 +00:00
Michael Niedermayer
655a1d57d5 Reenable ff_h264_filter_mb_fast() for all slices it supported before.
Originally committed as revision 21328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 16:43:57 +00:00
Michael Niedermayer
9ac4548ff7 Fix h264_loop_filter_strength_mmx2() so it works with b frames.
Originally committed as revision 21327 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 16:40:36 +00:00
Michael Niedermayer
ebddd2e253 Remove -2 -> -1 remapping, its not needed anymore as we must remap all
references per LUT anyway.

Originally committed as revision 21323 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 14:28:19 +00:00
Jason Garrett-Glaser
76d81909ae Update libx264.c to use new libx264 features
With b_keyframe instead of IDR for detecting keyframes, ffmpeg should now
support periodic encoding with periodic intra refresh (although there is no
interface option for it yet).
Set the new timebase values for full VFR input support.
Bump configure to check for API version 83.

Originally committed as revision 21317 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 04:00:08 +00:00
Jai Menon
7817ddabc8 Apply changes made in r21308 to svq3.c.
Fixes compilation with gcc and -O0.

Originally committed as revision 21316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 03:16:48 +00:00
Michael Niedermayer
c2894fbf1c Dont waste time initializing stuff for deblocking intra mbs, none of
it is used.

Originally committed as revision 21315 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 03:14:45 +00:00
Michael Niedermayer
580920f8dc Remove 2 checks from fetch_diagonal_mv() that apparently serve no purpose.
Originally committed as revision 21314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 02:28:26 +00:00
Michael Niedermayer
26c83a4161 Move a few things into a deeper if() in fetch_diagonal_mv().
Originally committed as revision 21313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 02:07:12 +00:00
Michael Niedermayer
350fc614b4 Remove code that handles the case of a MB pair to our right being available.
Thats not possible except maybe in FMO which noone uses anyway.
iam also not sure if this wasnt missing a part_width.

Originally committed as revision 21312 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-19 01:23:19 +00:00
Michael Niedermayer
7231ccf4d5 Cosmetic, get rid of &x[0]
Originally committed as revision 21309 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:55:19 +00:00
Michael Niedermayer
2b3649f656 Fix compilation with -O0.
Originally committed as revision 21308 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:41:12 +00:00
Michael Niedermayer
7a93858a6d Fix accumulated indention errors.
Originally committed as revision 21307 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:34:37 +00:00
Michael Niedermayer
70bd7a3d48 Optimize top non_zero_count_cache init.
Originally committed as revision 21306 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:31:14 +00:00
Michael Niedermayer
5e07aa7721 Dont init chroma elements of non_zero_count_cache for deblock.
Originally committed as revision 21305 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:30:21 +00:00
Michael Niedermayer
5cc5d9bf29 Remove unneeded for_deblock check, this code was alraedy under for_deblock.
Originally committed as revision 21304 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 23:27:53 +00:00
Michael Niedermayer
bffe82f504 Rather call filter_mb_mbaff_edge*v() more often than do extra calculations
in the innerst loop. ~150 cpu cycles faster

Originally committed as revision 21299 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 21:22:09 +00:00
Michael Niedermayer
fb823b7791 Fix 10l segfault with threads.
Originally committed as revision 21293 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 20:19:19 +00:00
Michael Niedermayer
0fe674cb4a Use h->slice_num where possible.
Originally committed as revision 21292 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 20:13:53 +00:00
Michael Niedermayer
bce6a1e7c7 Enable filter_mb_fast for CAVLC P slices.
Originally committed as revision 21291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 19:45:56 +00:00
Michael Niedermayer
439d6b1dcf filter_mb_fast needs cbp_table to be set.
Originally committed as revision 21290 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 19:45:02 +00:00
Michael Niedermayer
42ebca8551 PAFF CABAC P slices seem to work as well, so enable them for ff_h264_filter_mb_fast() too.
Originally committed as revision 21289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 16:29:16 +00:00
Michael Niedermayer
a8f4921595 Reenable filter_mb_fast for I slices and progressive CABAC P slices.
Originally committed as revision 21288 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 16:16:22 +00:00
Michael Niedermayer
a7d7cdaac7 Set h->cbp for ff_h264_filter_mb_fast().
Originally committed as revision 21287 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 16:11:13 +00:00
Michael Niedermayer
9327042c17 10l for someone, Store chroma_qp_diff in the correct struct.
Originally committed as revision 21286 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 14:05:30 +00:00
Gwenole Beauchesne
054947cafd Install <libavcodec/vaapi.h> header.
Originally committed as revision 21285 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 13:52:20 +00:00
Michael Niedermayer
b6ef858ec7 Move CAVLC 8x8 DCT special case from ff_h264_filter_mb() to fill_caches
that way it is also available for ff_h264_filter_mb_fast().

Originally committed as revision 21283 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 13:09:53 +00:00
Michael Niedermayer
6d7e6b2657 Perform reference remapping at fill_cache() time instead of in the
loop filter. This removes one obstacle of getting ff_h264_filter_mb_fast()
bitexact. code is maybe 0.1% faster

Originally committed as revision 21280 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 05:15:31 +00:00
Michael Niedermayer
7da0d82104 Make qp check for loop filter skiping also work with MBAFF.
Originally committed as revision 21276 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 00:34:28 +00:00
Michael Niedermayer
12be38ec18 Comment about a cornercase we ignore currently
Originally committed as revision 21275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 00:21:58 +00:00
Michael Niedermayer
44a5e7b64c Move the qp check to skip the loop filter up.
Originally committed as revision 21274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-18 00:20:44 +00:00
Michael Niedermayer
b6303e6d2a Reorganize how values are stored in h->non_zero_count.
~1% faster

Originally committed as revision 21273 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 23:44:23 +00:00
Michael Niedermayer
2911e13224 Disable a few things in fill_filter_caches() that arent needed.
0.1% speedup

Originally committed as revision 21272 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 22:05:36 +00:00
Michael Niedermayer
f432b43b08 Split fill_caches() between filter and decoder.
Originally committed as revision 21271 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 21:43:08 +00:00
Michael Niedermayer
c988f97566 Rearchitecturing the stiched up goose part 1
Run loop filter per row instead of per MB, this also should make it
much easier to switch to per frame filtering and also doing so in a
seperate thread in the future if some volunteer wants to try.
Overall decoding speedup of 1.7% (single thread on pentium dual / cathedral sample)
This change also allows some optimizations to be tried that would not have
been possible before.

Originally committed as revision 21270 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 20:35:55 +00:00
Alexander Strange
0209e1e160 Add missing Makefile dependencies to CONFIG_SNOW_ENCODER.
Fixes build with --disable-encoders --enable-encoder=snow.
This fixes MPlayer build with --disable-mencoder.

Originally committed as revision 21259 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-17 08:24:45 +00:00
Michael Niedermayer
7931bb2a0c Comment for() ; out
~200 bytes smaller ff_h264_filter_mb()
please everyone, NEVER add code with the assumtation that gcc will remove it
without checking gcc actually does. Chances are it does not.

Originally committed as revision 21251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 17:41:40 +00:00
Michael Niedermayer
ed3d7e2f65 Mark a few functions as noinline, this makes ff_h264_filter_mb() a bit smaller
and 5% faster.
ff_h264_filter_mb_fast() stay the same size as gcc decided not to inline these
functions there in the first place.

Originally committed as revision 21250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 17:27:17 +00:00
Michael Niedermayer
183a86c958 Apply last 2 optimizations to similar code i forgot.
Originally committed as revision 21249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 16:21:12 +00:00
Michael Niedermayer
3f55a651c4 Another microopt, 4 cpu cycles for avoidance of FFABS().
Originally committed as revision 21248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 16:14:32 +00:00
Måns Rullgård
1c6f46be03 Add missing guards and includes to arm/aac.h
Originally committed as revision 21247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 15:54:01 +00:00
Michael Niedermayer
26147d368b Minor (2 cpu cycles) optimization ||->|.
Originally committed as revision 21246 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 15:19:05 +00:00
ami_stuff
8be7ac98ca Support decoding of SoftLab-NSK VideoTizer.
Patch by ami_stuff, ami_stuff o2 pl

Originally committed as revision 21245 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 13:13:49 +00:00
Michael Niedermayer
4c568cbcac Consider slice_beta_offet in qp_thresh.
Originally committed as revision 21244 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 13:12:11 +00:00
Michael Niedermayer
2e36c931f0 Avoid wasting 4 cpu cycles per MB in redundantly calculating qp_thresh.
Originally committed as revision 21243 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 11:55:35 +00:00
Carl Eugen Hoyos
864a074213 Correctly decode some Avid AV1x samples, fixes issue 1684.
Originally committed as revision 21241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 10:46:45 +00:00
Anatoly Nenashev
e1bb0364f8 Support lowres 3 when decoding MPEG video.
Patch by Anatoliy Nenashev, nenashev_as mail ru

Originally committed as revision 21239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 10:41:52 +00:00
Michael Niedermayer
ddd60f28d8 Replace cabac checks in inline functions from h264.h with constants.
No benchmark because its just replacing variables with litteral constants
(so no risk for slowdown outside gcc silliness) and i need sleep.

Originally committed as revision 21237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 05:41:33 +00:00
Måns Rullgård
a482e61bd6 Add symbol versioning for shared libraries
Based on patch by Reinhard Tartler <siretart tauware de>

Originally committed as revision 21236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 04:49:02 +00:00
Vitor Sessak
d140b02581 SIPR16k decoder
Originally committed as revision 21234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 03:54:55 +00:00
Vitor Sessak
d79c06b2ad Allow a SIPR table to be used by the upcoming SIPR16k decoder
Originally committed as revision 21233 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 03:44:17 +00:00
Vitor Sessak
65323ed279 Split some SIPR structs to a header file for the upcoming SIPR16k commit
Originally committed as revision 21232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 03:40:25 +00:00
ami_stuff
a4be782cbd Support 2Vuy in mov, fixes issue 1690.
Patch by ami_stuff, ami_stuff o2 pl

Originally committed as revision 21230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 00:32:09 +00:00
Måns Rullgård
2b9cb7ec71 Fix out of tree build with hardcoded tables
Originally committed as revision 21228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 20:48:34 +00:00
Måns Rullgård
d356a53f44 AAC: optimise bitstream reading in decode_spectrum_and_dequant()
Using the low-level macros directly avoids redundant open/update/close
cycles.

2-3% faster on ARM, PPC, and Core i7.

Originally committed as revision 21224 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 14:02:52 +00:00
Carl Eugen Hoyos
59ea69ef54 Support decoding of Avid uncompressed mov files, fixes issue 1685.
Originally committed as revision 21223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 11:03:40 +00:00
Carl Eugen Hoyos
a0ae3e41f3 Support decoding Avid 1:1x codec, (partially) fixes issue1684.
Originally committed as revision 21222 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 10:55:31 +00:00
Michael Niedermayer
7c2de274e7 Add forgotten include of h264_mvpred.h to h264.h.
This could have caused the linking failure of pred_pskip_motion() missing if
a compiler included never used static functions.

Originally committed as revision 21221 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 03:42:56 +00:00
Michael Niedermayer
e2dd8586d8 Add forgotton multiple inclusion guards to h264_mvpred.h.
Originally committed as revision 21220 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 03:41:28 +00:00
Måns Rullgård
798339fb46 AAC: ARM/NEON asm for VMUL2/4 functions
Originally committed as revision 21219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 02:58:24 +00:00
Carl Eugen Hoyos
c78dfcdaf4 Do not assign codec_tag to pix_fmt in rawdec.c, but in raw.c
Originally committed as revision 21218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 00:45:47 +00:00
Reimar Döffinger
29b75f0b67 Change code so it uses 2 adds instead of one FFABS.
About 1% faster ff_ac3_bit_alloc_calc_psd on Intel Atom, overall speedup
not measurable though.
Should have a bigger effect on systems without cmov or with very slow cmov.

Originally committed as revision 21214 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-14 17:50:33 +00:00
Alexander Strange
f267d3ac75 Implement alpha channel decoding for BGR HuffYUV.
Since BGR24 is decoded as BGR32, fill its alpha channel with 255
using the appropriate predictors.

Originally committed as revision 21211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-14 01:32:49 +00:00
Måns Rullgård
2ef21b9179 AAC: Reduce depth of vlc_spectral tables to 2
Up to 6% faster overall on i7, no change on A8.

Originally committed as revision 21191 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 16:46:39 +00:00
Måns Rullgård
95dff4aced AAC: Unswitch loop over window groups in decode_spectrum_and_dequant()
GCC should be able to do this, but doesn't.  Slightly faster code.

Originally committed as revision 21190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 16:46:35 +00:00
Måns Rullgård
05f9d8fcaa AAC: simplify some calculations in decode_spectrum_and_dequant()
Simplify cur_band_type, group_len, and coef/offset calculations.  This
makes the code easier to read and slightly faster.

Originally committed as revision 21189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 16:46:32 +00:00
Måns Rullgård
c816d3d042 AAC: Compress codebook tables and optimise sign bit handling
The codebooks each consist of small number of values repeated in
groups of 2 or 4.  Storing the codebooks as a packed list of 2- or
4-bit indexes into a table reduces their size substantially (from 7.5k
to 1.5k), resulting in less cache pressure.

For the band types with sign bits in the bitstream, storing the number
and position of non-zero codebook values using a few bits avoids
multiple get_bits() calls and floating-point comparisons which gcc
handles miserably.

Some float/int type punning also avoids gcc brain damage.

Overall speedup 20-35% on Cortex-A8, 20% on Core i7.

Originally committed as revision 21188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 16:46:28 +00:00
Vitor Sessak
ef5e7fb253 Remove needless use of log2f()
Originally committed as revision 21185 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 04:35:19 +00:00
Vitor Sessak
1c3c129b8f Remove the struct SiprModeParam of the context. This will simplify splitting
the file for future 16k mode decoder code.

Originally committed as revision 21184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 04:29:55 +00:00
Måns Rullgård
f3da24c4c3 SIPR: kill variable-length arrays
Two of these are in fact constant size, so use the constant instead of
a variable in the declarations.  The remaining one is small enough
that always using the maximum size is acceptable.

Originally committed as revision 21183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 03:11:02 +00:00
Michael Niedermayer
0cd73b6c30 remove unused variable
Originally committed as revision 21182 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 02:44:38 +00:00
Michael Niedermayer
cc51b28299 Split cabac decoding code out of h264.c.
not slower according to benchmarks.

Originally committed as revision 21181 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 02:35:36 +00:00
Michael Niedermayer
8e71d89a7b Move golomb_to_int*cbp tables back to h264_data.h as svq3.c used them.
Yes i did compile&test, no svq3.c was not recompiled.

Originally committed as revision 21180 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 02:17:16 +00:00
Zuxy Meng
0752cd39d2 More av_cold for infrequently called functions.
Originally committed as revision 21179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 02:16:00 +00:00
Michael Niedermayer
e1e949026e Split cavlc out of h264.c.
Seems to speed the code up a little...
The placement of many generic functions between h264.c and h264.h is still open
Currently they are a little randomly placed between them.

Originally committed as revision 21178 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 01:59:19 +00:00
Reimar Döffinger
1460c79097 Use MULH instead of 64x64 multiplication, around 5% overall speedup on Intel Atom.
Patch by myself and Yuriy Kaminskiy [yumkam mail ru]

Originally committed as revision 21175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 23:02:07 +00:00
Michael Niedermayer
188d3c510d Split motion vector prediction off h264.c/h.
Originally committed as revision 21174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 21:36:26 +00:00
Michael Niedermayer
2bedc0e854 Move check_intra4x4_pred_mode() back from h264.h to h264.c, the function is just
called once per MB in worst case and doesnt seem to benefit from static inline.
Actually the code might be a hair faster now (0.1% according to my benchmark but
this could be random noise)

Originally committed as revision 21173 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 21:17:26 +00:00
Michael Niedermayer
ea6f00c448 Split all the reference picture handling off h264.c.
Originally committed as revision 21172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 20:59:00 +00:00
Thilo Borgmann
099809d19b Reindent after last commit.
Originally committed as revision 21171 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 20:37:56 +00:00
Thilo Borgmann
ff9ea0b7cc Replace variable length array with an allocated buffer
in the context to increase compatibility.

Originally committed as revision 21170 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 20:35:22 +00:00
Michael Niedermayer
889fce8e30 Split (picture|seq) parameter set decoding out of h264.c.
no speedloss meassured, also its really not touching anything that is speed relevant.

Originally committed as revision 21169 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 19:33:45 +00:00
Michael Niedermayer
9c09546352 Split SEI code off h264.c.
Originally committed as revision 21168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 18:54:40 +00:00
Michael Niedermayer
943f69a6ea Split direct mode (macro)block decoding off h264.c.
No speedloss meassured (its slightly faster here but that may be random fluctuations)

Originally committed as revision 21165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 14:32:58 +00:00
Michael Niedermayer
9514a0841a Align mb_bit_buffer and vs_bit_buffer as their alignment is checked by assert().
Originally committed as revision 21164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 13:54:35 +00:00
Zuxy Meng
a7494872d5 Reduce stack usage in svq1_encode_plane(). Reuse context scratch buffer
instead.  Avoid a crash on MinGW.

Originally committed as revision 21162 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 09:13:32 +00:00
Michael Niedermayer
082cf97106 Split h264 loop filter off h264.c.
No meassureable speed difference on pentium dual & cathedral sample.

Originally committed as revision 21159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 06:01:55 +00:00
Michael Niedermayer
419276c50d Move svq3.o to the correct spot.
Originally committed as revision 21158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 05:34:10 +00:00
Michael Niedermayer
903d58f631 Get rid of #include "svq3.c"
functions called more than per mb are moved into the header, scan8 is also
as it must be known at compiletime.
The code after this patch duplicates h264data.h, this has been done to minimize
the changes in this step and allow more fine grained benchmarking.
Speedwise this is 1% faster on my pentium dual core with diegos cursed cathedral
sample.

Originally committed as revision 21157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 05:30:31 +00:00
Michael Niedermayer
a683681336 Better title for the file.
Originally committed as revision 21156 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 04:49:18 +00:00
Carl Eugen Hoyos
0941ee0fa6 Support uncompressed ("Resolution 1:1") Avid AVI Codec, (partially) fixes issue 1474.
Originally committed as revision 21154 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-12 00:29:26 +00:00
Måns Rullgård
dc0d86face AAC: use table for cbrtf(n)*n
The maximum length of escape_sequence is 21 bits, so adjust limit in
code to match this.

Up to 10% faster on Cortex-A8.

Originally committed as revision 21153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 20:21:26 +00:00
Måns Rullgård
7c8af53f87 AAC: escape_sequence is 21 bits max
The maximum length of escape_sequence is 21 bits, so adjust limit in
code to match this.  Also fix the comment.

Originally committed as revision 21151 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 18:02:00 +00:00
Alex Converse
c460833d76 fft-test: Add RDFT/IRDFT support.
Originally committed as revision 21141 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 16:41:03 +00:00
Alex Converse
5b37ef8e43 fft-test: Replace do_mdct with a tf_transform enum and switch on it.
Originally committed as revision 21140 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 16:40:01 +00:00
Kostya Shishkov
eebece4641 Fix two RLE buffer size calculations in TSCC decoder.
Spotted by Zhongtuan Ma.

Originally committed as revision 21138 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 14:21:53 +00:00
Carl Eugen Hoyos
3b3a676a13 10l: Fix forgotten variable rename from r14893 (fixes issue 1675).
Originally committed as revision 21135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 10:54:59 +00:00
Alexander Strange
7ffd8332c7 Add missing internal.h to files calling ff_match_2uint16().
Fixes warnings:
libavcodec/mpegvideo_enc.c:574: warning: implicit declaration of function
'ff_match_2uint16'
libavcodec/ituh263enc.c:143: warning: implicit declaration of function
'ff_match_2uint16'
libavcodec/svq1enc.c:97: warning: implicit declaration of function
'ff_match_2uint16'

Originally committed as revision 21133 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 04:57:04 +00:00
Michael Niedermayer
2c8077621b Optimize ff_snow_horizontal_compose97i.
this makes the 9/7 C wavelet at the decoder side 22% faster.
The old code is changed to match the new in terms of the order of operations
(which also makes it sligtly faster)

Originally committed as revision 21132 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 02:52:50 +00:00
Michael Niedermayer
233a8b3d6b Merge vertical_compose53iL0*()
8% faster C 5/3 wavelet at the decoder side.

Originally committed as revision 21131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 01:00:50 +00:00
Michael Niedermayer
2a84512a74 Optimize horizontal_compose53i() by inlining inv_lift() and optimizing the
resulting code slightly. ~30% faster C 5/3 wavelet at the decoder side.

Originally committed as revision 21130 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:54:48 +00:00
David Conrad
24ca518bd1 Add support for dirac in ogg
Originally committed as revision 21128 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:52 +00:00
David Conrad
66b0255248 Add a function to parse Dirac's sequence header
Originally committed as revision 21127 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:44 +00:00
David Conrad
c4dffe7e36 Export fullrange flag and color information for h.264
Originally committed as revision 21126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-11 00:31:39 +00:00
Vladimir Voroshilov
7bd3096f5f SIPR decoder for modes 8k5, 6k5 and 5k0.
Patch by Vladimir Voroshilov and myself.

Originally committed as revision 21125 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 21:38:15 +00:00
Peter Ross
a1ae40fd0d Deluxe Paint Animation decoder
Originally committed as revision 21117 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 05:41:36 +00:00
Michael Niedermayer
9e2e821468 Doxy for ff_match_2uint16().
Originally committed as revision 21115 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 04:06:34 +00:00
Michael Niedermayer
6c060b55a9 Fix implicit declaration warning.
Originally committed as revision 21114 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 04:04:51 +00:00
Michael Niedermayer
c46eeae2a8 Add a function to match a 2 element vector of uint16_t and use it in h263 and svq1
instead of custom and bloated code to find an index into a w/h array.

Originally committed as revision 21113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 18:33:21 +00:00
Michael Niedermayer
aa11ce6568 Make inter_level/run global again, msmpeg4 uses them.
... I did test but it wasnt recompiled ...

Originally committed as revision 21112 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 18:12:06 +00:00
Michael Niedermayer
0366b6e199 Make some tables static again, i mistakely thought they would be used in several
places.

Originally committed as revision 21111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 17:22:37 +00:00
Laurent Aimar
75dd693840 Export get_slice_type() as ff_h264_get_slice_type().
Patch by Laurent Aimar <fenrir at videolan dot org>.

Originally committed as revision 21110 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 16:20:41 +00:00
Michael Niedermayer
fc53b6afee Split H263 encoder and decoder from common code.
Originally committed as revision 21109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 14:59:06 +00:00
Reimar Döffinger
14b8607065 Add support for hard-coded MDCT-related ff_sine_windows tables.
Originally committed as revision 21108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 13:28:04 +00:00
Laurent Aimar
b090930d43 Always initialize bit_depth_luma and bit_depth_chroma in the H264
decoder which allows their usage without checking profile_idc.

Patch by Laurent Aimar (fenrir (AT) videolan org)

Originally committed as revision 21107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 07:57:26 +00:00
Peter Ross
8600106ac2 update my email address
Originally committed as revision 21106 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-09 03:31:13 +00:00
Michael Niedermayer
a7ac9c2f62 Move 3 direct MV related functions that i left out from h263.c to mpeg4video.c.
Originally committed as revision 21104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 19:59:51 +00:00
Thilo Borgmann
b2f4b04336 Change local variable type from unsigned int to int in order to
fix a fate test error for gcc 4.1.x introduced in revision 21069.

Originally committed as revision 21103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 19:53:42 +00:00
Michael Niedermayer
261a3c2d05 Move AVCodecs from h263dec.c to msmpeg4.c and disentangle init decode init.
Originally committed as revision 21102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 19:40:10 +00:00
Michael Niedermayer
7213abf6ba Use h263 tables in msmpeg4v1 dont duplicate them halfway.
Originally committed as revision 21101 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 19:10:11 +00:00
Daniel Verkamp
0219e99eea Release cyuv/aura decoder buffer
Originally committed as revision 21100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 18:54:52 +00:00
Måns Rullgård
3963a17d0e AAC: add a const to decode_spectrum_and_dequant() args
Originally committed as revision 21099 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 17:52:54 +00:00
Michael Niedermayer
101ada9abd Rename most non static h263 tables so their name contains h263.
Originally committed as revision 21098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 17:51:48 +00:00
Michael Niedermayer
fef59a5b4b Rename mpeg4 intra vlc tables so they contain "mpeg4", this improves readability
of msmpeg4 code (one now knows where that table comes from).

Originally committed as revision 21097 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 17:41:14 +00:00
Michael Niedermayer
05b858b045 Rename DCtab_*, its a global variable and it helps understanding if mpeg4
is in its name.

Originally committed as revision 21096 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 17:28:43 +00:00
Jai Menon
4536c8e603 Snow : re-indent after r21093.
Originally committed as revision 21094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 16:37:32 +00:00
Jai Menon
a4bd598541 Snow : remove pointless 'if(1)'.
Originally committed as revision 21093 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 16:34:50 +00:00
Michael Niedermayer
28fbbee15f Remove useless line.
Originally committed as revision 21092 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 16:26:44 +00:00
Michael Niedermayer
e75d233506 Fix indention.
Originally committed as revision 21091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 16:04:45 +00:00
Andreas Öman
4ad04da214 Log unknown NAL code from correct context
Originally committed as revision 21090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 15:50:26 +00:00
Jai Menon
2da16f288a Snow : use non-NULL context for av_log.
Originally committed as revision 21089 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 14:45:24 +00:00
Jai Menon
8ec5a042e4 Cosmetics : remove duplicated comment.
Originally committed as revision 21088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 14:33:35 +00:00
Diego Biurrun
49d2d1c35c Explain why the level variable is magically inceased in mpeg4_encode_dc().
It must be in a certain range to avoid DC overflows.

Originally committed as revision 21087 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 10:00:56 +00:00
Alex Converse
d987a9e9ad fft-test: whitespace cosmetics
Originally committed as revision 21085 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 06:11:56 +00:00
Jai Menon
e8c6411ce3 Snow : release buffers allocated using avctx->get_buffer.
Originally committed as revision 21084 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 05:09:17 +00:00
Jai Menon
8456462fb8 Set bits_per_coded_sample in the raw video encoder.
Aside from being the correct thing to do, this also
fixes issue 1299.

Originally committed as revision 21083 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 05:08:02 +00:00
Michael Niedermayer
51ce2207c8 Add a few CONFIG_MPEG4_DECODER that should be there.
Originally committed as revision 21082 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-08 04:00:06 +00:00
Michael Niedermayer
ca334dd14b Split the mpeg4 encoder and decoder off h263.c
Originally committed as revision 21079 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 23:53:49 +00:00
Thilo Borgmann
e38215f2a4 Add multi-channel correlation support for ALS.
Originally committed as revision 21074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:48:58 +00:00
Carl Eugen Hoyos
59043195d4 Fix red/blue swap for 4xa files.
Originally committed as revision 21070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:33:26 +00:00
Thilo Borgmann
99c5f5ccbe Optimize short-term prediction by reducing index arithmetic.
Originally committed as revision 21069 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:23:28 +00:00
Michael Niedermayer
46244c640c Add some const qualifiers.
Originally committed as revision 21064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 15:46:45 +00:00
Michael Niedermayer
616251c924 Document decide_ac_pred() and restore_ac_coeffs().
Originally committed as revision 21063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 15:43:49 +00:00
Michael Niedermayer
d6856c5708 Move restore_ac_coeffs() call into decode_ac_pred().
This makes decode_ac_pred() easier to understand.

Originally committed as revision 21062 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 15:31:54 +00:00
Michael Niedermayer
0dc5dc08db Move restore_ac_coeffs() up so its declared before its use.
Originally committed as revision 21061 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 15:24:50 +00:00
Michael Niedermayer
64f716b499 More doxy
Originally committed as revision 21060 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 15:12:31 +00:00
Michael Niedermayer
7cd9fe488d Document ff_h263_show_pict_info().
Originally committed as revision 21059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 14:56:40 +00:00
Michael Niedermayer
4fea04820b Factorize if() surrounding every ff_h263_show_pict_info() call.
Originally committed as revision 21058 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 14:55:11 +00:00
Michael Niedermayer
0b60f3bdf5 2 more if(CONFIG_*_DECODER)
Originally committed as revision 21055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 06:32:34 +00:00
Michael Niedermayer
d7525cba23 Split out intel H263 decoder.
Originally committed as revision 21054 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 06:25:41 +00:00
Michael Niedermayer
515a543809 flv.h should ideally be included in flvdec.c
Originally committed as revision 21053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 06:20:57 +00:00
Michael Niedermayer
6a14a15722 Move forgotton "AVCodec flv_encoder" over to flvenc.c.
Originally committed as revision 21052 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 05:41:49 +00:00
Michael Niedermayer
a0b0d75368 Split flv decoding out.
Originally committed as revision 21051 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 05:36:45 +00:00
Michael Niedermayer
eb52376915 Split out flv encoding.
Originally committed as revision 21050 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 04:42:39 +00:00
Michael Niedermayer
f867378771 Document aspect_to_info().
Originally committed as revision 21049 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 04:01:19 +00:00
Michael Niedermayer
f016159416 Cleanup aspect_to_info().
Originally committed as revision 21048 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:58:12 +00:00
Michael Niedermayer
214cb565c0 Document several more things.
Originally committed as revision 21047 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:54:10 +00:00
Michael Niedermayer
b0704443f2 Document *VLC_BITS.
Originally committed as revision 21046 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:40:41 +00:00
Michael Niedermayer
046be9299f Simplify h263_get_picture_format().
Originally committed as revision 21045 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:36:46 +00:00
Michael Niedermayer
5149048b6f Mark h263_get_picture_format() av_const to indicate that it has no funny
sideeffects and reads no global memory.

Originally committed as revision 21044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:34:30 +00:00
Michael Niedermayer
7a05b0a675 Document h263_get_picture_format().
Originally committed as revision 21043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 03:30:45 +00:00
Carl Eugen Hoyos
07f2a575c5 100l: Fix compilation after r21037.
Originally committed as revision 21039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-06 23:15:33 +00:00
Michael Niedermayer
2efcf29275 Stop the approximation in bessel() once it does no longer improve.
This is faster.

Originally committed as revision 21038 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-06 22:40:52 +00:00
Daniel Verkamp
9df9b810c5 Handle more ADPCM codecs in av_get_bits_per_sample().
This removes some special-case code from riff.c.
CODEC_ID_ADPCM_G726 is still handled in riff.c as before because it is
not guaranteed to be fixed 4 bits per sample.

Originally committed as revision 21037 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-06 21:51:20 +00:00
Francesco Lavra
643bae382c Use correct context for av_log(), should prevent a crash for malformed files.
Patch by Francesco Lavra (francescolavra at interfree dot it).

Originally committed as revision 21031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 16:25:41 +00:00
Diego Biurrun
50fe16960b Add a few explanatory comments to cornercase workarounds.
Originally committed as revision 21030 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 10:18:01 +00:00
Thilo Borgmann
71fe4573bc Replace array operator [] with direct access via pointer.
Solves issue 1657.

Originally committed as revision 21029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 01:16:02 +00:00
Carl Eugen Hoyos
6698d13998 Cosmetics: Fix indentation and comment after r21027.
Originally committed as revision 21028 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 01:14:38 +00:00
Carl Eugen Hoyos
4235c98e57 Support decoding raw 2bpp in mov, fixes issue 1528.
Originally committed as revision 21027 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 01:11:45 +00:00
Carl Eugen Hoyos
0a1e15109a Improve readability of 4bpp raw decoder and prepare for supporting 2bpp.
Originally committed as revision 21026 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-05 00:41:29 +00:00
Vitor Sessak
0e426b7a6c Reindent after last commit
Originally committed as revision 21019 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 19:26:08 +00:00
Vitor Sessak
846b231643 Add missing "static" qualifier
Originally committed as revision 21018 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 19:25:44 +00:00
avcoder
b02e9c962b The H.263 wrong_run table is only for encoding; only enable it in such cases.
patch by avcoder, ffmpeg gmail com

Originally committed as revision 21013 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 13:21:18 +00:00
Gwenole Beauchesne
81774dd0c4 VAAPI: fix WMV3 decoding of videos with an odd number of macroblocks per line.
Originally committed as revision 21012 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 09:23:24 +00:00
Gwenole Beauchesne
5716aec3f9 Fix XvMC. XvMCCreateBlocks() may not allocate 16-byte aligned blocks,
so we can't use SSE-optimized routines.

Originally committed as revision 21011 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-04 09:19:32 +00:00
Stefano Sabatini
fa4dc9f082 Document avcodec_pix_fmt_to_codec_tag().
Originally committed as revision 21006 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 21:21:41 +00:00
Stefano Sabatini
4160069067 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
XXX_license() functions, consistent with the rest of FFmpeg.

Originally committed as revision 21005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 14:31:25 +00:00
Reimar Döffinger
4a1289450a Reduce number of ASM constraints for ff_lpc_compute_autocorr_sse2 since it
causes no significant speed difference and can avoid compilation issues with
--enable-pic.

Originally committed as revision 21003 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-02 17:48:08 +00:00
Vitor Sessak
4e2c08c551 Small ELBG optimization: use last pixel as a initial guess for the codebook
entry.

Originally committed as revision 21001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-02 12:15:09 +00:00
Michael Niedermayer
24b207b5a5 Adjust threshold for xvid packed b frame detection.
Also add xvid_build check.
If you note any packed bitstream regression, check this commit first and report it.
Fixes issue1652

Originally committed as revision 20997 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 21:32:48 +00:00
Michael Niedermayer
6c58758737 It appears s->bitstream_buffer_size has to be 0 at the end so rather use assert.
Originally committed as revision 20996 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 21:07:52 +00:00
Stefano Sabatini
702d0a9e85 Remove residual use of the doxygen markup which is deprecated,
consistent with r19122.

Originally committed as revision 20989 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-01 12:28:18 +00:00
Diego Biurrun
f9310cbb2f Remove unused function msmpeg4_memsetw().
It is an exact duplicate of memsetw() in h263.c.

Originally committed as revision 20986 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-31 01:27:47 +00:00
Carl Eugen Hoyos
f27fd36231 Fix colourspace for 16 bit raw video in mov, fixes issue 1527 on big-endian.
Originally committed as revision 20985 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-31 01:08:10 +00:00
Carl Eugen Hoyos
e1bd945b1d Support raw black&white in mov, fixes issue 1654.
Originally committed as revision 20984 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 22:58:49 +00:00
Diego Biurrun
20390e3170 cosmetics: Move MPEG-4 encoding functions around to avoid forward declarations.
Originally committed as revision 20981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 16:10:52 +00:00
Diego Biurrun
df8d98c4dd 10l: Move ff_mpeg4_pred_dc() to an appropriate place.
It is used by both encoders and decoders and should not be below
a CONFIG_ENCODERS preprocessor check.

Originally committed as revision 20980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 16:08:47 +00:00
Diego Biurrun
2a992f467a cosmetics: Move MPEG-4 decoding functions around to avoid forward declarations.
Originally committed as revision 20979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 14:51:46 +00:00
Diego Biurrun
1436f31709 cosmetics: Move H.263-related functions around to avoid forward declarations.
Originally committed as revision 20978 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 14:34:14 +00:00
Diego Biurrun
8380edd947 cosmetics: Reorder functions to avoid forward declarations.
Originally committed as revision 20977 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 14:15:12 +00:00
Diego Biurrun
941870cd35 Remove unnecessary forward declaration for msmpeg4_memsetw().
Originally committed as revision 20976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 13:48:03 +00:00
Diego Biurrun
4052cbf161 Get rid of pointless CONFIG_ANY_H263 preprocessor definition.
Originally committed as revision 20975 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 11:33:59 +00:00
Diego Biurrun
af818f7a66 Add required header #includes for mpegvideo.h and config.h.
Originally committed as revision 20974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 11:22:41 +00:00
Diego Biurrun
716d1c2a31 Eliminate CONFIG_ANY_H263_DECODER preprocessor definition.
It is just a logical OR of several decoder definitions, all of which depend on
CONFIG_H263_DECODER. So it can just be replaced by the latter.

Originally committed as revision 20973 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 11:07:04 +00:00
Diego Biurrun
af8a008a68 Get rid of pointless CONFIG_WMV_DECODER definition.
Originally committed as revision 20972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-30 02:09:51 +00:00