Commit Graph

66 Commits

Author SHA1 Message Date
Diego Biurrun ba87f0801d Remove explicit filename from Doxygen @file commands.
Passing an explicit filename to this command is only necessary if the
documentation in the @file block refers to a file different from the
one the block resides in.

Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-20 14:45:34 +00:00
Vitor Sessak e8ff21fdf5 Revert commit 22378.
It broke FATE and kostya asked me on IRC to revert it.

Originally committed as revision 22379 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 08:20:11 +00:00
Kostya Shishkov 95bd18eeca Check for reference frames so RV 3/4 won't segfault trying to copy data from
nonexisting reference.

Originally committed as revision 22378 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 07:14:34 +00:00
Kostya Shishkov d90aeeaf56 Call avcodec_set_dimensions() instead of simply setting avctx->width/height
when frame dimensions change in RV3/4.

Originally committed as revision 20595 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 06:05:41 +00:00
Kostya Shishkov ec10d2d539 Update dimensions in AVCodecContext when RV3/4 frame dimensions change
Originally committed as revision 20572 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 07:48:35 +00:00
Kostya Shishkov 1369582777 Convert ZERO8x2 macro into inline function
Originally committed as revision 19746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-30 10:54:16 +00:00
Kostya Shishkov b7eb7ef6b5 Zeroing pic->motion_val in RV3/4 causes alignment problems on some 64-bit
architectures since stride is multiple of 4 and not of 8, so split
fill_rectangle() calls to operate on 32-bit words instead of 64-bit ones.

Originally committed as revision 19744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-30 06:30:53 +00:00
Kostya Shishkov 20622c4a8a Adjust r->avail_cache[] indexes to avoid alignment issues when zeroing block
inside it.

Originally committed as revision 19743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-30 06:16:33 +00:00
Kostya Shishkov 39c601b5e7 RV3/4 intra types array causes alignment issues (at least on ARM5), thus change
its stride and offset to always have align 4.

Originally committed as revision 19316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-01 15:08:02 +00:00
Kostya Shishkov 9c4b5eb8ce Revert changing VLC initialization type for RV3/4 decoder.
While using large static table is not good (especially for embedded devices and
CPUs with small cache), other alternatives are not very good either.

Originally committed as revision 18696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-27 05:30:22 +00:00
Kostya Shishkov 3df18b3ed1 Get rid of monstrous static table and initialize VLCs for RV3/4 dynamically.
Originally committed as revision 18681 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-25 05:47:38 +00:00
Kostya Shishkov a456df258e 100l: VLC table array should not be const
Originally committed as revision 18642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-21 17:35:30 +00:00
Kostya Shishkov 547b6a4cc7 Make RV3/4 VLC tables use new static initialization method
Originally committed as revision 18637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-21 04:42:27 +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
Kostya Shishkov 0304109df6 Correct MV prediction for B-frame blocks in RV4 decoder
Originally committed as revision 17974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-15 08:21:42 +00:00
Kostya Shishkov 923ed9748c Fix direct and skip MB motion compensation in RV4:
two conditions were incomplete and zeroing motion
vectors was performed only on half of them.

Originally committed as revision 17947 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-13 13:48:44 +00:00
Kostya Shishkov 7a47495079 cosmetics: reindent after last commit
Originally committed as revision 17585 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-25 08:36:00 +00:00
Kostya Shishkov 77f7156d85 Since motion vectors for intra blocks are always zero, do not try to retrieve them.
Originally committed as revision 17584 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-25 08:35:37 +00:00
Kostya Shishkov 7fa70598e8 Enable dropping frames for RV3/4
Originally committed as revision 17221 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-14 06:38:50 +00:00
Kostya Shishkov 86dd3974e5 In RV3/4 nonzero MB offset for the first slice also indicates error
Originally committed as revision 17201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-13 07:06:36 +00:00
Kostya Shishkov 432f1f11ea Move RV3/4 frame type check up so 1-slice unanchored B-frames are checked, too.
Originally committed as revision 17031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-07 10:46:51 +00:00
Kostya Shishkov 3ffabd4e49 Silence two pointer assignment compiler warnings in rv34.c
Originally committed as revision 16916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 15:03:40 +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
Diego Biurrun dc8a7c93d3 Add missing void keyword to parameterless function declarations.
Originally committed as revision 16860 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 18:38:25 +00:00
Kostya Shishkov 1aa7335149 Fix Doxygen comments for RV3/4 decoder.
Originally committed as revision 16842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-28 07:16:20 +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
Kostya Shishkov 592beefe99 It turned out that RV30 uses motion vectors for forward motion B-frame
macroblocks to predict motion vectors for backward motion B-frame macroblocks
and vice versa.

Originally committed as revision 16381 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-29 10:20:03 +00:00
Kostya Shishkov ffedb5c19a 352l: correct calculating number of bits for storing macroblock offset in RV3/4
Originally committed as revision 16293 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-23 18:27:06 +00:00
Kostya Shishkov 17b17c53f4 add const qualifier to some pointers for input data
Originally committed as revision 16195 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 20:17:07 +00:00
Kostya Shishkov bb39171beb use precalculated mb_pos where available
Originally committed as revision 16194 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 20:10:15 +00:00
Kostya Shishkov 6c3fca6479 Merge deblocking pattern with CBP for RV30/40 loop filtering
Originally committed as revision 16192 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 20:00:48 +00:00
Kostya Shishkov 26bc319c1d Generate correct deblock pattern for RV30
Originally committed as revision 16191 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 19:39:56 +00:00
Kostya Shishkov 0dfcc36818 Do not attempt to decode RV30/40 B-frames without anchors.
This fixes issue 747.

Originally committed as revision 16031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-07 16:30:08 +00:00
Kostya Shishkov 3e16cde430 Fix reading out of buffer during RV30/40 deblock mask calculation
Originally committed as revision 15983 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-02 18:14:53 +00:00
Kostya Shishkov 958a2b5d6b 34l: forgot to change one case of chroma MC for RV40
Originally committed as revision 15982 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-02 18:12:48 +00:00
Kostya Shishkov 1799d5223e Check RV30/40 slice offsets to be inside buffer.
This fixes issue 738

Originally committed as revision 15981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-02 17:39:20 +00:00
Kostya Shishkov a1c1c78019 Update ff_rv34_decode_frame() arguments definition
Originally committed as revision 15980 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-02 17:35:38 +00:00
Kostya Shishkov de8cac167d Invoke future RV30/40 loop filter for already decoded rows instead of
the whole frame at once.

Originally committed as revision 15949 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-29 06:22:31 +00:00
Kostya Shishkov f653095bdd Fix RV40 chroma MC
Originally committed as revision 15943 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-27 07:26:26 +00:00
Kostya Shishkov cd98279126 33l Fix applying residue condition in RV30/40 decoder
Originally committed as revision 15891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-20 14:07:37 +00:00
Kostya Shishkov 78a0fa8c8f Eliminate direct use of s->current_picture in RV30/40 decoder
Originally committed as revision 15890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-20 14:05:29 +00:00
Kostya Shishkov 7690351cf3 Use wider margins for edge emulation in RV30/40
Originally committed as revision 15889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-20 14:03:35 +00:00
Diego Biurrun 52ece41057 Remove unused variable.
Originally committed as revision 15803 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-12 17:29:02 +00:00
Kostya Shishkov 502ecc97af Split RV3/4 deblock pattern into horizontal and vertical parts
during calculating.

Originally committed as revision 15794 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-08 18:15:13 +00:00
Kostya Shishkov ede0a5f973 Drop redundant check in RV3/4 deblock coefficients calculation
Originally committed as revision 15792 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-08 07:24:56 +00:00
Kostya Shishkov e122311261 Calculating an additional MV-based deblocking pattern is the same
for both RV3 and RV4, so move it into common code.

Originally committed as revision 15786 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-07 07:18:22 +00:00
Kostya Shishkov b215365817 Introduce RV3-specific motion vector prediction.
Now B-frames in RV3 look almost correct.

Originally committed as revision 15764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-11-01 17:57:44 +00:00
Kostya Shishkov 5f621dd28a Correct motion vector scaling in B-frames for RV3/4
Originally committed as revision 15747 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-30 06:08:47 +00:00
Kostya Shishkov 2ee054c215 Fix chroma motion compensation for RV30
Originally committed as revision 15731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-27 19:07:39 +00:00
Kostya Shishkov 60ce2f9cae Choose RV3/4 DC quantizer correctly
Originally committed as revision 15675 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-24 06:17:18 +00:00