Commit Graph

118 Commits

Author SHA1 Message Date
Kevin Baragona
3b66c4c59a More spelling errors patch by (Kevin Baragona (kevinmb500 gawab com>)
Originally committed as revision 4180 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-05 14:17:28 +00:00
Loren Merritt
a55f20bd9a fix storage of motion vectors for frames with more than 4096 macroblocks.
Originally committed as revision 4175 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-03 21:49:18 +00:00
Loren Merritt
7c33ad19fd clear the DPB after seeking.
Originally committed as revision 4174 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-03 06:53:59 +00:00
Michael Niedermayer
c0df9d75bd switch to native time bases
Originally committed as revision 4168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-30 21:43:59 +00:00
Loren Merritt
42251a2a4f MMX for H.264 deblocking filter
Originally committed as revision 4158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-25 01:01:41 +00:00
Loren Merritt
b80875c186 fix ref comparison in B-frame deblocker ('unused' and 'unavailable' were treated as different)
Originally committed as revision 4154 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-24 21:06:22 +00:00
Mike Melanson
160d679c07 Ministry of English Composition, reporting for duty (and the word is "skipped", not "skiped"; "skiped" would rhyme with "hyped")
Originally committed as revision 4153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-24 17:21:11 +00:00
Loren Merritt
e2e5894a91 deblocking filter doesn't need to call fill_caches again. 1.4% faster decoding.
Originally committed as revision 4147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-21 20:38:42 +00:00
Loïc Le Loarer
debc2adb16 CABAC support for MBAFF I frames patch by (Loïc Le Loarer < lll+ffmpeg m4x org)
This patch corrects the support for I slice in CABAC and MBAFF mode.
This decodes correctly 6 more frames of the conformance suite.

Originally committed as revision 4109 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-05 18:29:26 +00:00
Loïc Le Loarer
826de46ea3 CABAC support for MBAFF I frames patch by (Loïc Le Loarer | lll+ffmpeg m4x org)
Originally committed as revision 4106 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-05 01:35:22 +00:00
Loren Merritt
048bfeeb12 display deblocking strength in FF_DEBUG_PICT_INFO
Originally committed as revision 4091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 10:58:21 +00:00
Loren Merritt
171070658e allow 16 refs with B-frames
Originally committed as revision 4090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 10:54:16 +00:00
Loïc Le Loarer
6ba71fc467 This is the second patch for MBAFF support, this adds the deblocking
filter code for the I slice.

With this patch, 4 more frames are decoded correctly from the
conformance streams.
patch by (Loïc Le Loarer <lll+ffmpeg m4x org>)

Originally committed as revision 4088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 00:44:11 +00:00
Loïc Le Loarer
3bf3d666a7 The cvs version 1.103 of h264.c brokes 13 conformance streams, this
patch corrects this and decodes the same streams as version 1.102.
patch by (Loïc Le Loarer <lll+ffmpeg m4x org>)

Originally committed as revision 4087 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-27 00:27:37 +00:00
Loren Merritt
0149db6668 10l (compile fix)
Originally committed as revision 4032 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-12 03:10:44 +00:00
Loren Merritt
4e4d983e8b Set keyframe flag only on IDR-frames (needed for reordering across I-frames).
Read vui bitstream restrictions (allows B-frame delay in advance, rather than waiting till we're out of order.)
Mark duplicate frames due to delay as duplicates.

Originally committed as revision 4028 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-11 02:14:44 +00:00
Loren Merritt
885e88d252 remove an assert that was breaking compilation on some gccs.
Originally committed as revision 4020 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-07 09:05:33 +00:00
Loic Le Loarer
6867a90b41 MBAFF I slice no deblocking patch by (Loic >>lll+ffmpeg m4x org<<)
Originally committed as revision 4018 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-06 23:02:25 +00:00
Michael Niedermayer
deb13e3c73 spam
Originally committed as revision 4015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-06 19:59:37 +00:00
Måns Rullgård
26165f99c6 improved detection of "AVC1" style H.264 patch by (Måns Rullgård <mru inprovide com>)
Originally committed as revision 4013 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-06 19:40:12 +00:00
Loren Merritt
a18030bb62 10l (fix reordering when B-frames are not present)
Originally committed as revision 4004 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-05 00:14:21 +00:00
Loren Merritt
2f944356bf H.264: decode arbitrary frame orders and allow B-frames as references.
Originally committed as revision 4003 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-04 12:47:38 +00:00
Loren Merritt
3622988f21 oops, other half of the vismv patch
Originally committed as revision 4001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 12:12:44 +00:00
Loren Merritt
b75e10d52c vismv didn't display 8x8 mvs in H.264
Originally committed as revision 4000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-03 07:21:23 +00:00
Loren Merritt
19fe8b4100 In-loop deblocking for B-frames.
Originally committed as revision 3979 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-25 07:40:29 +00:00
Loren Merritt
738386a5ed 10l in implicit_weight_table
Originally committed as revision 3974 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-24 09:27:46 +00:00
Loic Le Loarer
e7e09b49b4 remove goto and reindent patch by (Loic Le Loarer <lll+ffmpeg m4x org>)
Originally committed as revision 3960 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-16 23:18:06 +00:00
Loic Le Loarer
6fbcaaa0ef INTRA PCM macroblocks support patch by (Loic )lll+ffmpeg m4x org)
This patch adds the support for INTRA PCM macroblocks in CAVLC and CABAC
mode, the deblocking needed a small modification and so did the
intra4x4_pred_mode prediction.

With this patch, the 5 streams of the conformance suite containing INTRA
PCM macroblocks now decode entirely, 4 are completely corrects, 1 is
incorrect since the first B slice because of deblocking in B slice not
yet implemented.

The code is not optimized for speed, it is not necessary IPCM
macroblocks are rare, but it could be optimized for code size, if
someone want to do this, feel free.

Originally committed as revision 3941 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-07 00:10:28 +00:00
Loic Le Loarer
0bf796340a H.264 multiple slice support in CABAC patch by (Loic (lll+ffmpeg m4x org)
3 more streams of the conformance suite decode to the
end instead of failing on an assert (CABACI3_Sony_B.jsv,
CABAST3_Sony_E.jsv and CABASTBR3_Sony_B.jsv), they are still false since
the first B slice probably because of deblocking in B slices not yet
implemented.

Originally committed as revision 3932 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-04 02:47:45 +00:00
Loïc Le Loarer
0d315f281c H.264 multiplce instance in reference list patch by (Loic <lll+ffmpeg m4x org )
With this patch, the streams CAWP5_TOSHIBA_E.264 and CVWP5_TOSHIBA_E.264
are completely decoded

Originally committed as revision 3917 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 11:26:11 +00:00
Loïc Le Loarer
dc032f3332 correct long term picture management patch by (Loic <lll+ffmpeg m4x org>)
fixes decoding of MR2_MW_A.264

Originally committed as revision 3916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 11:12:53 +00:00
Michael Niedermayer
bd9ea6a462 fixing missaligned memory accesses in fill_rectangle()
Originally committed as revision 3901 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 02:16:50 +00:00
Michael Niedermayer
4ae33c9b52 simplify
Originally committed as revision 3873 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 19:11:02 +00:00
Michael Niedermayer
934982c4ac avoid buf_size == 0 checks in every decoder
Originally committed as revision 3872 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 18:09:06 +00:00
Michael Niedermayer
46f2f05f59 simplify deblock
Originally committed as revision 3868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 14:03:13 +00:00
Michael Niedermayer
3b33943e9b simplify
reference list 1 swaping fix? seems its not used by any samples i found though

Originally committed as revision 3863 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 03:49:36 +00:00
Loic Le Loarer
827c91bfb7 H.264 b ref pic list order and long term pictures patch by (Loic Le Loarer <loic.le-loarer polytechnique org>)
Originally committed as revision 3851 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-19 17:35:51 +00:00
Michael Niedermayer
eed4ebd22c div by zero aspect fix
Originally committed as revision 3850 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-19 13:24:43 +00:00
Michael Niedermayer
0ecca7a49f various security fixes and precautionary checks
Originally committed as revision 3822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-12 00:16:25 +00:00
Gert Vervoort
9c6221ae62 10l (obmc_scratchpad not always initialize)
patch by (Gert Vervoort <gert.vervoort at hccnet dot nl>)

Originally committed as revision 3816 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-09 00:48:37 +00:00
Loren Merritt
934b0821db 10l: scratchpad could be allocated before its size was known.
Originally committed as revision 3812 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-08 08:56:18 +00:00
Loren Merritt
9f2d1b4ff5 H.264 weighted prediction.
Bidirectional weighting has not been tested for bitwise accuracy, but looks correct.

Originally committed as revision 3811 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-07 05:56:07 +00:00
Loren Merritt
1b2dcdc1e0 reduce stutter if we learn too late that the stream contains B-frames.
Originally committed as revision 3801 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-04 10:26:47 +00:00
Loren Merritt
a4dae92b58 Sort B-frames into display order.
Originally committed as revision 3799 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-04 01:12:48 +00:00
Michael Niedermayer
17bfbd70ab 10l
Originally committed as revision 3788 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-31 14:02:35 +00:00
Loïc Le Loarer
579448a083 - correct several errors on the deblocking accross slice boundaries.
- add support for deblocking_filter_idc==2 which means no deblocking accross slice.
- correct MMCO with multiple slices.

5 more streams from H264 conformance suite are now correctly decoded.

patch by (Loic <lll+ffmpeg >< m4x dot org>)

Originally committed as revision 3786 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-31 00:07:17 +00:00
Roberto Togni
f31ecffb4f Fix avc1 if there is nore than one nal per mov frame
Originally committed as revision 3785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-30 18:05:54 +00:00
Loren Merritt
5ad984c997 implement B_DIRECT and B_SKIP macroblock types.
fix reference list sorting for B-frames.
fix mv caching for mixed list B-blocks.

Originally committed as revision 3775 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-29 04:17:52 +00:00
Loren Merritt
650cec0c8c vismv for h264 displayed incorrect motion vectors.
Originally committed as revision 3765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-20 03:03:37 +00:00
Loic Le Loarer
5175b9376f add multi slice support
for main profile H.264 streams. I have tested this on all H264
conformance streams and comparing the result with the current CVS
version, there is 8 streams which decode correctly more frames and 2
streams which are now completely correct with my patch.

This patch also correct some typo in comments.

patch by (Loic Le Loarer <lll+ffmpeg >at< m4x org>)

Originally committed as revision 3758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-18 03:49:07 +00:00