Commit Graph

101 Commits

Author SHA1 Message Date
Michael Niedermayer 50c6f6cd4c improved lambda/qp guessing for motion estimation RD in first pass
this only affects encoding with bframes and rate control

Originally committed as revision 4765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 14:17:54 +00:00
Michael Niedermayer f79432a26e set a few variables correctly
Originally committed as revision 4560 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-09-05 10:26:11 +00:00
Michael Niedermayer c619ff6daf optimizations
dc coeff rounding fix
class=3 num of bits fix
do interlaced check & idct only if CODEC_FLAG_INTERLACED_DCT

Originally committed as revision 4542 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-30 20:03:19 +00:00
Michael Niedermayer 8fce2707e8 regression tests for dv
Originally committed as revision 4541 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-08-30 19:44:02 +00:00
Michael Niedermayer d8cbeba156 yamaha adpcm regression test
Originally committed as revision 4473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-07-25 14:36:58 +00:00
Michael Niedermayer 3b5ffe7a39 fix mpeg2 chroma_420_type
Originally committed as revision 4274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-18 19:42:42 +00:00
Justin Ruggles 132041f06f While adding stereo rematrixing, I came across something that needs to
be fixed even without adding the feature.  The output correctly uses 4
dummy values for the rematrixing flags in block-0, but the bit
allocation routine does not take these bits into account.  From what I
can tell, there was a patch in 2003 that corrected the output to make it
DVD and spec compatible, but it didn't correct the bit allocation.  It's
only 4 bits over the entire 6 blocks, so overflow errors would happen
rarely or never, but it's still worth fixing.  So here is a fix.

patch by (Justin Ruggles {jruggle earthlink net)

Originally committed as revision 4179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-05-05 14:10:52 +00:00
Michael Niedermayer b44985ba12 store the number of runs to avoid storing the last run value
about 10% lower bitrate for -qscale 32 (forman & some music video)
worst case bitrate increase <0.1% (lossless or low qscale)
and now the bad news, even though this just adds a single subtraction and an if() into the medium sized unpack_coeffs() loop and the if() will only be false once per unpac_coeff() call, gcc produces 50% slower code, i didnt look at the generated asm yet, not sure if i want to ...

Originally committed as revision 4131 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-15 13:24:30 +00:00
Michael Niedermayer f5a719287d rescale coefficients during IDWT, that way the lifting steps are much simpler and faster
Originally committed as revision 4119 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-10 14:21:53 +00:00
Michael Niedermayer a0a74ad9f0 increasing precission of the quantization parameter
this is needed as the quantization stepsize for each subband is also in this precission and insignificant changes to the wavelet like scaling its coefficients slightly differently would lead to wildly variing PSNR and bitrate
note, a encoder could also simply choose to leave the least significant bits of the quantization parameters zero which would give the exact previous behaviour except a y very tiny number of bits in  the header

Originally committed as revision 4115 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-09 22:15:48 +00:00
Michael Niedermayer 538a38418c 10% faster unpack_coeffs
Originally committed as revision 4108 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-05 17:59:05 +00:00
Michael Niedermayer 3cff4572ce fixing lossless snow
Originally committed as revision 4107 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-05 09:37:43 +00:00
Michael Niedermayer d13eef3d3d snow regression test
Originally committed as revision 4100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-04-03 15:39:17 +00:00
Calcium 58d2a1506d 28_fix_parameters_in_G726.patch by (Calcium | calcium nurs or jp)
Originally committed as revision 4070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-23 12:35:27 +00:00
Michael Niedermayer 8272de4ea2 fix time stored in mov
based upon 23_fix_timestamp_in_mov.patch by (Calcium | calcium nurs or jp)

Originally committed as revision 4067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-23 11:15:45 +00:00
Michael Niedermayer 6c13c880fa trying to fix a few minor values in the mp4/mov muxer
Originally committed as revision 4063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-23 00:26:43 +00:00
Michael Niedermayer 4a7d265176 sample_size fix
Originally committed as revision 4043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-15 23:50:24 +00:00
Michael Niedermayer 625d98a319 set global_quality
Originally committed as revision 4042 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-03-15 22:49:16 +00:00
Michael Niedermayer 420370d4aa switch MPEG4 fourcc to FMP4
Originally committed as revision 3972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-22 19:48:07 +00:00
Michael Niedermayer 9499ebff8d checksum change due to (don't crash on null codec patch which changed the stored length of the compressor name, movenc.c 1.28->1.29)
Originally committed as revision 3950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-07 22:47:46 +00:00
Michael Niedermayer 090fa6576c max/avg bitrate change (movenc.c 1.25->1.26)
Originally committed as revision 3948 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-07 20:45:19 +00:00
Michael Niedermayer a749c8d6e5 regression test checksum change due to the mov header field and compressor name patch (movenc.c 1.24->1.25)
Originally committed as revision 3946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-07 18:56:41 +00:00
Michael Niedermayer 976709ee73 compare audio files 16bit wise instead of 8bit
additionally compare the mp2 case with some delay as this matches better (the delay issue obviously should be fixed)

Originally committed as revision 3922 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-02-01 21:16:33 +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 16dd93ab6a quick and dirty PSNR check for audio
Originally committed as revision 3902 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-30 13:26:11 +00:00
Michael Niedermayer dd4f8a04fe jpeg style yuv fixes
Originally committed as revision 3852 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-01-20 00:30:20 +00:00
Michael Niedermayer c50cd09dd5 rv20 regression test
Originally committed as revision 3740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-12-07 13:48:25 +00:00
Loren Merritt f37b9768f6 split ffhuffyuv into 2 codecs:
"huffyuv" is compatible with the official version
"ffvhuff" contains our improvements

Originally committed as revision 3720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-28 18:29:38 +00:00
Michael Niedermayer 7f8038ce88 mv/mb reuse regression test
Originally committed as revision 3686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-16 14:02:41 +00:00
Maarten Daniels ccff9da62a H261 fixing and cleaning:
-corrected wrong value in mv data
 -set correct mb_type after adjusting index
 -don't use H263 loop filter when the loop filter flag is set but when
  using the H261 encoder
 -use the same unquantizer as H263 (which is optimized btw)
 -removed unused members in H261Context
patch by (Maarten Daniels <maarten.daniels >at< luc >dot< ac >dot< be>)

regression test checksum update by me

Originally committed as revision 3669 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-11-12 01:21:34 +00:00
Michael Niedermayer d34a07466f switch ffv1 to the put/get_symbol() from snow
Originally committed as revision 3659 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-31 12:22:00 +00:00
Michael Niedermayer 880eae9c50 switch ffv1 from CABAC to the range coder
Originally committed as revision 3658 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-31 10:08:50 +00:00
Michael Niedermayer 9740687b6b fix and cleanup h261 mb_type selection
Originally committed as revision 3647 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-28 17:21:34 +00:00
Michael Niedermayer 61b262a90a h.261 regression test
Originally committed as revision 3644 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-28 10:24:02 +00:00
Michael Niedermayer 4e255822e5 100l (dont reset the sample position at the block end)
Originally committed as revision 3618 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-10-21 20:01:32 +00:00
Michael Niedermayer c4f8d5d9f9 write shorter headers if possible
Originally committed as revision 3494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-22 20:01:56 +00:00
Loren Merritt ee598f7ba4 (non)interlaced huffyuv patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3473 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-17 10:57:57 +00:00
Alex Beregszaszi 7be8716a2a forgot to commit this
Originally committed as revision 3447 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-10 09:51:16 +00:00
Loren Merritt 952b32c0ad Always write VOL control parameters, needed by old xvid patch by (Loren Merritt <lorenm at u dot washington dot edu>)
Originally committed as revision 3432 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-09-03 02:32:39 +00:00
Michael Niedermayer bb22e8b175 10l (lrintf(a)+b vs. lrintf(a+b))
Originally committed as revision 3391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-08-14 15:18:49 +00:00
Michael Niedermayer e6cf9be59b use non zero qscale for svq1 test
Originally committed as revision 3358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-07-28 09:22:52 +00:00
Michael Niedermayer 5d79ddc9b1 10l (fixes delayed frames during encoding)
Originally committed as revision 3279 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-30 23:41:29 +00:00
Michael Niedermayer 30b5382bf9 regression checksum changes due to new resampling code
Originally committed as revision 3232 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-18 02:59:30 +00:00
Michael Niedermayer 0e9d4a67f4 change qscale -> lambda for the motion estimation
finetune bit/distortion weighting factor used in motion estimation, the old coeffs where finetuned relative to incorrect mv_penalty tables which where then fixed later but the coeffs where not
this _may_ fix the long standing blocking artifacts, but may also introduce mudding artefacts theoretically, so please tell us if u stumble across any so we can either fix them or export this variable so the user can change it

Originally committed as revision 3189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-06-03 19:29:47 +00:00
Michael Niedermayer e928649b0b pass AVPacket into av_write_frame()
fixes the random dts/pts during encoding
asf preroll fix
no more initial zero frames for b frame encoding
mpeg-es dts during demuxing fixed
.ffm timestamp scale fixed, ffm is still broken though

Originally committed as revision 3168 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-29 02:06:32 +00:00
Michael Niedermayer b86bd1f137 svq1 regression test
Originally committed as revision 3129 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-12 03:33:40 +00:00
Michael Niedermayer dd17409ca0 next_pts fix by (Wolfram Gloger <wmglo at dent dot med dot uni-muenchen dot de>)
note, dont take the PSNR/stddev values serious, they are caused by a bug in ffmpeg.c which drops one frame before the last frame during encoding with b frames

Originally committed as revision 3110 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-05-05 21:23:28 +00:00
Michael Niedermayer 49f3806dd8 rv10 decoding fix
Originally committed as revision 3068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-25 16:14:13 +00:00
Michael Niedermayer aab9cdcff8 qpel & SSE/SATD regression test
Originally committed as revision 3056 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-24 14:41:57 +00:00
Michael Niedermayer a76078b97f +-1 bugfix regression test checksum update
Originally committed as revision 3018 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-04-16 01:08:03 +00:00