Commit Graph

216 Commits

Author SHA1 Message Date
Jason Garrett-Glaser
4f717c69ed idct_dc for VC-1/WMV3 decoder; ~11% faster decoding overall.
Includes mmx2 asm for the various functions.
Note that the actual idct still does not have an x86 SIMD implemtation.
For wmv3 files using regular idct, the decoder just falls back to simple_idct,
since simple_idct_dc doesn't exist (yet).

Originally committed as revision 19204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 09:00:55 +00:00
Jason Garrett-Glaser
41faa87886 Fix typo in vc1.c, make capitalization in warning/error messages more consistent.
Originally committed as revision 19203 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-16 00:48:07 +00:00
Diego Biurrun
b761659bef Split decoder-specific code off from vc1.c into vc1dec.c and keep code
shared between decoder and parser in vc1.c.

Originally committed as revision 19152 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-11 09:31:31 +00:00
Baptiste Coudurier
35b2c65756 vc1 and wmv3 decoders use MPV_frame_start which uses get_buffer, set CODEC_CAP_DR1
Originally committed as revision 19111 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-05 08:53:39 +00:00
Baptiste Coudurier
87e302bfd8 remove unused hack which set AVCodecContext frame_number to pic timestamp
Originally committed as revision 18988 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 00:24:20 +00:00
Baptiste Coudurier
2d05bc8641 set pict_type in VC-1 parser, fix some timestamps problems
Originally committed as revision 18987 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-30 00:09:00 +00:00
David Conrad
ebcf3b742b Ensure that we don't read from invalid memory with B-frame qpel
Originally committed as revision 18839 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-15 07:49:59 +00:00
Benjamin Larsson
10c773c12f Remove dead assignments found by CSA
Originally committed as revision 18730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-02 09:08:40 +00:00
Kostya Shishkov
b750fb6945 Display dimensions should not affect the real size of coded frame, thus set
only avctx->{width,height} and don't touch coded_{width,height} when parsing
them. This fixes the case when coded and display dimensions differ by more
than one macroblock.

Originally committed as revision 18665 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-23 07:14:02 +00:00
Kostya Shishkov
21fce71fd1 Switch VLC tables in WMV3/VC-1 decoder to new static init method
Originally committed as revision 18658 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-22 05:20:31 +00:00
Kostya Shishkov
f7cf12b209 Set flag after VC-1 VLCs are initialized to avoid race condition
Originally committed as revision 18639 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-21 05:42:22 +00:00
Kostya Shishkov
346802aa99 Remove some useless assignments and variables found by Clang
Originally committed as revision 18638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-21 05:24:50 +00:00
David Conrad
2d08f9ea54 VC1 loop filter uses the frame quantizer not the mb quantizer
Originally committed as revision 18534 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-16 07:34:52 +00:00
David Conrad
3992526b3c Split VC1 loop filter into separate functions for h/v and size
Originally committed as revision 18521 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:22:17 +00:00
David Conrad
0e58865d6e Move VC1 loop filter to DSPContext
Originally committed as revision 18520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-15 06:20:22 +00:00
David Conrad
8013da7364 VC1: add and use avg_no_rnd chroma MC functions
Originally committed as revision 18518 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:56:10 +00:00
David Conrad
c374691b28 Rename put_no_rnd_h264_chroma* to reflect its usage in VC1 only
Originally committed as revision 18517 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 23:55:39 +00:00
David Conrad
6cecd63005 VC1: Do qpel when needed for both MVs in a B frame
Originally committed as revision 18511 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-14 19:26:33 +00:00
Carl Eugen Hoyos
e161e007be Use INIT_VLC_USE_STATIC and not its value "1".
Originally committed as revision 18430 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-11 11:47:15 +00:00
Thilo Borgmann
7a00bbad21 Implement avcodec_decode_video2(), _audio3() and _subtitle2() which takes an
AVPacket argument rather than a const uint8_t *buf + int buf_size. This allows
passing of packet-specific flags from demuxer to decoder, such as the keyframe
flag, which appears necessary to playback corePNG P-frames.

Patch by Thilo Borgmann thilo.borgmann googlemail com, see also the thread
"Google Summer of Code participation" on the mailinglist.

Originally committed as revision 18351 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-07 15:59:50 +00:00
David Conrad
828775e160 Remove unused FILTSIGN macro
Originally committed as revision 18300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 08:06:30 +00:00
Gwenole Beauchesne
bb691a6da4 Add support for HW accelerated VC-1 decoding through the new
AVHWAccel infrastructure.

Originally committed as revision 18135 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-21 23:44:21 +00:00
Carl Eugen Hoyos
1a022c2fbf Apply correct pix_fmts to WMV3_VDPAU and VC1_VDPAU.
Originally committed as revision 17594 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-25 23:58:52 +00:00
Carl Eugen Hoyos
ac00575d92 Fix VC1 and WMV3 playback in MPlayer.
Originally committed as revision 17587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-25 15:43:53 +00:00
Gwenole Beauchesne
4daa41c415 Rename buf_vdpau to buf_start
Patch by Gwenole Beauchesne <g$lastname> <at> <(antonym of "joined")-desktop><com>

Originally committed as revision 17561 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-24 17:09:57 +00:00
Michael Niedermayer
c269cf68a0 Approved hunks for VAAPI / our new shiny hwaccel API
by Gwenole Beauchesne gbeauchesne splitted desktop com

Originally committed as revision 17539 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-23 13:35:52 +00:00
Diego Biurrun
de86157836 cosmetics: 'void/int inline' --> 'inline void/int' to avoid warnings of the type
"'inline' is not at beginning of declaration" with -Wextra.

Originally committed as revision 17392 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-17 12:11:46 +00:00
Diego Biurrun
bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Gwenole Beauchesne
f92a6c66ed Record B-fraction index from frame header and two fields from entry point structure
into VC-1 context.

Patch by Gwenole Beauchesne
(gbeauchesne <whirlpool> splitted <dash> desktop <dit> com)
Thread [PATCH][VC-1] Record extra syntax elements for VA API support

Originally committed as revision 16859 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 17:15:08 +00:00
Kostya Shishkov
81169111ef Fix Doxygen comments for VC-1 decoder.
Originally committed as revision 16843 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-28 07:16:52 +00:00
Stefan Gehrer
3e7233688a avoid duplication of size_table and offset_table
Originally committed as revision 16743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-24 14:28:08 +00:00
Kostya Shishkov
1cae2ef9a6 Remove the block with always false condition from vc1_parse_frame_header()
Originally committed as revision 16726 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-23 06:33:04 +00:00
Kostya Shishkov
a28d522491 VC-1 postproc field is 2 bits wide while decoder read only single bit.
Spotted by Stephen Warren.

Originally committed as revision 16725 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-23 06:31:17 +00:00
Carl Eugen Hoyos
27052238c0 Cosmetics: Fix indentation after last commit.
Originally committed as revision 16700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-20 09:36:28 +00:00
NVIDIA Corporation
c5b42f4a80 Add VDPAU hardware accelerated decoding for WMV3 and VC1 which can
be used by video players.

Original patch by NVIDIA corporation.

Originally committed as revision 16699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-20 09:28:36 +00:00
Aurelien Jacobs
199436b952 moves mid_pred() into mathops.h (with arch specific code split by directory)
Originally committed as revision 16681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 22:57:40 +00:00
Jason Garrett-Glaser
5a44906d8e Fix 10L in r16670 (broke deblocking code)
Originally committed as revision 16671 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 07:20:12 +00:00
Jason Garrett-Glaser
0a359cf157 Faster VC-1 C loopfilter using lots of xor magic
Originally committed as revision 16670 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 07:14:36 +00:00
Kostya Shishkov
7a96cd3123 VC-1 display dimensions should affect coded dimensions only (I think)
Originally committed as revision 16578 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 08:05:40 +00:00
Kostya Shishkov
e9ca5f0892 Print VC-1 aspect ratio in debug
Originally committed as revision 16577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 08:03:45 +00:00
Kostya Shishkov
820089cb06 421l: fix loop filter for P-frames in VC-1
Originally committed as revision 16576 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 08:02:31 +00:00
Carl Eugen Hoyos
63bfcb6997 Fill range_map* in VC1Context.
Originally committed as revision 16515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-10 09:55:55 +00:00
Carl Eugen Hoyos
49186206eb Add refdist_flag to VC1Context.
Originally committed as revision 16504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-09 16:51:21 +00:00
Kostya Shishkov
55374d57e8 421l: postproc flag may be present in any VC-1 AP frame type
Originally committed as revision 15842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-16 06:47:44 +00:00
Kostya Shishkov
77298e99b7 Make it possible to disable loop filter in VC-1.
Unlike H.264 it does not affect picture quality on any files I've watched.

Originally committed as revision 15295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-09-11 06:35:37 +00:00
Diego Biurrun
218e061201 Remove unused variable.
Originally committed as revision 14442 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-27 21:56:26 +00:00
Kostya Shishkov
00a750009f In-loop deblocking filter for VC-1 decoder
Originally committed as revision 14344 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-23 06:21:27 +00:00
Erik Hovland
8d8d2b7391 Fix a mem leak in vc1_decode_frame().
Patch by Erik Hovland erik hovland org

Originally committed as revision 14277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-18 07:15:50 +00:00
Stefan Gehrer
5a89396989 remove duplicate tables
Originally committed as revision 13959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-25 11:33:49 +00:00
Stefano Sabatini
fe4bf37455 Make AVCodec long_names definition conditional depending on CONFIG_SMALL.
Originally committed as revision 13759 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-06-12 21:50:13 +00:00