Commit Graph

92 Commits

Author SHA1 Message Date
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
Michael Niedermayer
bf835aee11 uppercase codec_tag=AVC1 support
Originally committed as revision 3746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-09 22:04:15 +00:00
Michael Niedermayer
a979965313 out of buffer access fix
Originally committed as revision 3744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-09 01:01:11 +00:00
Burkhard Plaum
073c2593c9 Memory leak fix patch by (Burkhard Plaum <plaum >at< ipf.uni-stuttgart )dot( de>)
Originally committed as revision 3717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-27 18:10:06 +00:00
Loren Merritt
7d7f635dc0 Fixed typo which caused incorrect motion prediction in B-frames. patch by (Loren Merritt <lorenm ta u tod washington tod edu>)
Originally committed as revision 3709 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-24 22:50:49 +00:00
Michael Niedermayer
5d0e4cb87a segfault fix
Originally committed as revision 3656 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-31 00:42:43 +00:00
Michael Niedermayer
db4d9faf8d optimzation
Originally committed as revision 3630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-24 02:59:36 +00:00
Michael Niedermayer
58897665ae optimization
Originally committed as revision 3629 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-24 02:08:45 +00:00
Michael Niedermayer
7b89e963e8 fix CABAC+LOOP missmatch
Originally committed as revision 3628 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-23 21:13:31 +00:00
Michael Niedermayer
3981c385cc cbp_table cleanup
Originally committed as revision 3627 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-23 19:12:21 +00:00
Michael Niedermayer
9af1ec8e9a cleanup of decode_cabac_residual()
Originally committed as revision 3626 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-23 15:59:01 +00:00
Michael Niedermayer
d6b0c1bbf8 decode intra cabac mb_type cleanup
Originally committed as revision 3625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-23 12:07:57 +00:00
Gildas Bazin
03393cb766 small typo patch by (Gildas Bazin <gbazin at altern dot org>)
Originally committed as revision 3624 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-22 19:55:57 +00:00
Loren Merritt
d5af70c3b8 H.264 CABAC + B-frames patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-22 18:30:50 +00:00
Loren Merritt
0bc42caddf h.264 ref list reordering bugfix patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3558 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-03 22:01:21 +00:00
Michael Niedermayer
0fa8158d3e move h264 idct to its own file and call via function pointer in DspContext
allow h264 idct to be used for lowres=1

Originally committed as revision 3524 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-27 19:47:17 +00:00
Michael Niedermayer
792bb815e3 assertion when playing AVC/H.264 streams fix by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3505 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-25 10:06:31 +00:00
Michael Niedermayer
5cbb0e70a0 H.264 max reference pictures fix by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-25 09:59:36 +00:00
Roberto Togni
4770b1b4fb AVC (H264 in mp4 files, fourcc avc1) support
Originally committed as revision 3459 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-13 21:20:55 +00:00
Loren Merritt
d89dc06a96 h264 deblocking crash patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-02 10:49:54 +00:00
Michael Niedermayer
b3067ac197 cleanup
Originally committed as revision 3395 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-16 22:51:18 +00:00
Måns Rullgård
ec587a50c7 Get H.264 frame rate from SPS/VUI patch by (Måns Rullgård <mru at kth dot se>)
Originally committed as revision 3394 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-16 22:48:05 +00:00
Michael Niedermayer
7440fe839d segfault fix
Originally committed as revision 3376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-03 01:50:52 +00:00
Michael Niedermayer
bba8334965 overread fix
Originally committed as revision 3294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-07-08 00:53:21 +00:00
Michael Niedermayer
68b3ba0dfa 1000l
Originally committed as revision 3277 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-30 22:39:01 +00:00
Alex Beregszaszi
d967e3b8a5 some debug
Originally committed as revision 3257 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-26 10:09:42 +00:00
Michael Niedermayer
53db1cae1c data_size = 0 cleanup
Originally committed as revision 3146 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-21 14:37:16 +00:00