Commit Graph

2392 Commits

Author SHA1 Message Date
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
Michael Niedermayer
3f26d68aec emulate (idiotic) MS behavior for inconsistant dimensions
Originally committed as revision 3940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-06 18:43:06 +00:00
Michael Niedermayer
1b781f82c9 support skiping some bitstream encoding
Originally committed as revision 3939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-06 17:01:07 +00:00
Michael Niedermayer
09b0499f1b seperate bitstream encoding skip from PASS1 flag
Originally committed as revision 3938 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-06 10:36:07 +00:00
Michael Niedermayer
db2fcbbdb3 10l (use of deallocated memory)
Originally committed as revision 3936 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-04 11:53:35 +00:00
James A. Morrison
9a0a8d420d Build libpostproc out of source directory patch by (James A. Morrison >ja2morri csclub.uwaterloo ca>)
Originally committed as revision 3933 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-04 03:29:50 +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
anonymous
7cc84d241b - samples from mplayer ftp in the "adv" profile seem to have profile=2,
which isn't the advanced one; and indeed, using adv. profile parser fails.
Using normal parser works, and that's what is done
- attempt at taking care of stride for NORM2 bitplane decoding
- duplication of much code from msmpeg4.c; this code isn't yet used, but
goes down as far as the block layer (mainly Transform Type stuff, the
remains are wild editing without checking). Unusable yet, and lacks the AC
decoding (but a step further in bitstream parsing)
patch by anonymous

Originally committed as revision 3931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-04 02:20:38 +00:00
Michael Niedermayer
44f1698a38 merge a few shifts into the dequantization, faster and more accurate, lets hope it doesnt overflow
Originally committed as revision 3930 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-03 03:28:27 +00:00
Michael Niedermayer
125d624610 optimizing imdct12
Originally committed as revision 3929 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 22:38:28 +00:00
Michael Niedermayer
6e0d8c06c7 mb_lmin/max to limit the per mb quality for the ratecontrol independant from the frame limits
Originally committed as revision 3928 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 19:33:48 +00:00
Christophe Massiot
957c743a23 Border processing adaptive quant patch by (Christophe Massiot |cmassiot freebox fr)
Originally committed as revision 3927 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 18:49:04 +00:00
Johan Bilien
ebaa7e0315 rtp_callback: send number of mb patch by (Johan Bilien {jobi via.ecp fr)
Originally committed as revision 3926 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 18:14:59 +00:00
Michael Niedermayer
ce4a29c066 optimize antialias
switch to integer antialias code as default as its faster now

Originally committed as revision 3925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-02 01:37:33 +00:00
Michael Niedermayer
d04728bb57 faster, simpler and more accurate l3_unscale()
Originally committed as revision 3924 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 23:43:07 +00:00
Michael Niedermayer
711ae726f7 optimizing imdct36()
Originally committed as revision 3923 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 21:27:18 +00:00
Michael Niedermayer
c342499df2 make keyframe default for AVFrames
Originally committed as revision 3920 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 18:36:51 +00:00
François Revol
3c8e39f72d Stereo MACE fix by Burkhard Plaum <plaum AT ipf DOT uni-stuttgart DOT de>
Still doesn't work with our mov demuxer though...

Originally committed as revision 3919 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 15:13:27 +00:00
Michael Niedermayer
8845e427a7 10l (array gets padded with 0 which is CODEC_ID_NONE -> parsers claim to support CODEC_ID_NONE)
Originally committed as revision 3918 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 13:03:44 +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
anonymous
bf2bc926f0 - a lot less overflows when decoding frames
- no more error with norm6 codes
- almost skipped frames (~110 bits) are not overflowed
However:
- there are very few bits left in those frames, so I wonder if enough MB
data is actually left
- NORM6/DIFF6 (4/5) bitplanes are a lot more present, which I don't find
obvious.
patch by anonymous

Originally committed as revision 3915 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 10:03:55 +00:00
anonymous
2ce151f898 Documentation patch by anonymous
Originally committed as revision 3914 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 09:51:49 +00:00
Roberto Togni
b2eef2f0ea Add 32bit RGB support
Originally committed as revision 3912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-31 22:34:02 +00:00
Michael Niedermayer
e993bc03ac 10000l vbr mp3 fix
Originally committed as revision 3911 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-31 21:26:20 +00:00
Michael Niedermayer
a3a5f4d6c3 support 32bit output for the mpeg audio decoder
Originally committed as revision 3910 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-31 12:16:21 +00:00
Michael Niedermayer
b696d2a676 more accurate dequant of near zero coefficients
Originally committed as revision 3909 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-31 04:06:47 +00:00
Michael Niedermayer
84af4a7ee6 10l (missing overflow check)
Originally committed as revision 3908 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-31 03:14:22 +00:00
Michael Niedermayer
9da235c803 100000l (typos in the #define for selecting the NORM6 method -> wasnt compiled, after fixing typos new method doesnt even compile -> swicth back to old until its fixed)
Originally committed as revision 3907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 22:28:11 +00:00
anonymous
5e424311dd - add another way to decode norm6 VLC; modify VLC_NORM6_METH0D define in
vc9data.h to select the behaviour
- modified decode_b_picture_primary_header so that
decode_bi_picture_header is no more required

Fixes:
- modifications for some more using of MpegEncContext
- fixed a bit frame type decoding
- switch from pointers to index for AC tables
- corrected P CBPCY decoding (p_cbpcy += 4)

patch by anonymous

Originally committed as revision 3906 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 21:54:20 +00:00
anonymous
0d33db8a4d In that patch:
- avctx and gb elements were removed from VC9Context, hence a larger diff
- some code was added to h263dec.c regarding CODEC_ID_WMV3 (should apply to CODEC_ID_VC9 too)
- VLC tables and other related tables were made global whenever this seemed necessary; appropriate changes were therefore made to other parts of the code using those tables
- the change for the bitplane management to a struct (some of them should eventually be mapped to MpegEncContext arrays) wasn't associated with the proper frees; should be fixed now
patch by anonymous

better names for globalized tables by me

Originally committed as revision 3905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 16:34:57 +00:00
Michael Niedermayer
093c6e50c9 10l (didnt test code after cvs up ...)
Originally committed as revision 3904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 14:10:30 +00:00
Michael Niedermayer
a7a858996f dithering for the mpeg audio decoder
Originally committed as revision 3903 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 14:04:56 +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
4b9ac0b5f0 require a few valid and equal mp3 headers for resync
Originally committed as revision 3900 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-29 23:59:32 +00:00
François Revol
f4ff1b92cc added a lock/unlock_lib pair to allow extern progs to serialize access to lavc.
Originally committed as revision 3899 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-29 20:09:33 +00:00
Alex Beregszaszi
bf1f4da01f exported ff_mpa_synth_filter for upcoming qdm2 decoder
Originally committed as revision 3897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-28 19:54:10 +00:00
Michael Niedermayer
7d8b13b46b make decode012() static inline
Originally committed as revision 3895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-28 11:21:57 +00:00
Michael Niedermayer
edaf11e87a 10l (negative strides)
Originally committed as revision 3887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-26 17:04:34 +00:00
anonymous
0c040aacbe use dc tables from msmpeg4 instead of duplicating them patch by anonymous
Originally committed as revision 3886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-26 12:01:35 +00:00
Michael Niedermayer
a64a006e95 dont duplicate decode012()
Originally committed as revision 3884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-25 01:40:58 +00:00
Michael Niedermayer
6b250f09e8 check norm6 vlc validity as there are some bit sequences which dont corespond to any codeword, the other vlc tables all seem to be huffman tables though
Originally committed as revision 3883 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-25 01:29:10 +00:00
anonymous
e5540b3fd3 Fixes:
- i/p/b_decode_mbs functions now checks the proper values (from
bitplane). I didn't find it very clear, but it seems "raw" = "to read at
the MB layer". I used a structure, but we could spare that indirection and
add a flag in the VC9Context for each array.
- Properly decode (or so I think) the CBPCY (as it is predicted)
- many more things
patch by anonymous

Originally committed as revision 3882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-24 23:01:18 +00:00
Michael Niedermayer
b299f0d907 more 10l typos
Originally committed as revision 3881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-24 01:56:53 +00:00
Michael Niedermayer
9c68c65adb norm-6 / diff-6 support (untested, parts of it just guessed as the spec is unclear)
Originally committed as revision 3880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-24 01:46:12 +00:00
Michael Niedermayer
d29f0cd9c1 fixing many bugs in bitplane_decoding()
spliting row/colskip cases into their own functions as these will be needed for NORM/DIFF-6

Originally committed as revision 3879 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-24 00:35:18 +00:00
Michael Niedermayer
e902560005 dont use several 100 mb memory for a tiny 120 element table
remove redundant code related to av_free()
typo fix

Originally committed as revision 3878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 22:54:51 +00:00
Michael Niedermayer
bc399ae6a4 1000000000l typos
Originally committed as revision 3877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 22:49:41 +00:00
Michael Niedermayer
e25fa2136f mention table duplications, note, please avoid duplicating tables!
Originally committed as revision 3876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 22:10:55 +00:00
Roberto Togni
cca1a42653 Check pointers before writing to memory
Originally committed as revision 3874 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-23 21:36:24 +00:00