Commit Graph

138 Commits

Author SHA1 Message Date
Justin Ruggles
a403fc0324 flac-lpc patch by (Justin Ruggles jruggle earthlink net)
tabs removed and regression.sh fixed (it was missing in the patch) by me

Originally committed as revision 5572 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 10:22:31 +00:00
Justin Ruggles
e71bcc3798 flacenc - rice param search patch by (Justin Ruggles jruggle earthlink net
1) search for optimal rice parameters and partition order. i also
modified the stereo method estimation to use this to calculate estimated
bit count instead of using just the pure sums.

2) search for the best fixed prediction order

3) constant subframe mode (good for encoding silence)

Note that the regression test for the decoded wav file also changed.
This is due to FFmpeg's FLAC decoder truncating the file, which it did
before anyway...just at a different cutoff point.  The generated FLAC
files are still 100% lossless.

With this update, FFmpeg's FLAC encoder has speed and compression
somewhere between "flac -1" and "flac -2".  On my machine, it's about
15% faster than "flac -2", and about 10% slower than "flac -1".  The
encoding parameters are identical to "flac -2" (fixed predictors, 1152
blocksize, partition order 0 to 3).

Originally committed as revision 5536 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-27 21:01:21 +00:00
Michael Niedermayer
f33aa12011 stereo decorrelation support by (Justin Ruggles jruggle earthlink net>)
Originally committed as revision 5528 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-26 06:00:07 +00:00
Michael Niedermayer
aeb2904eba flac regression test
Originally committed as revision 5515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-24 11:40:21 +00:00
Loren Merritt
4a387d7d3b update regression tests for r5449 (adpcm)
Originally committed as revision 5476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-14 19:10:59 +00:00
Loren Merritt
871371a768 Snow: fix subband weighting in wavelet cmp functions. use 32x32 cmp in iterative motion estimation.
Originally committed as revision 5427 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-30 05:44:22 +00:00
Loren Merritt
8c36eaaa94 Snow multiple reference frames
(bitstream is not backwards compatible, even if refs aren't used)

Originally committed as revision 5417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-28 21:44:47 +00:00
Michael Niedermayer
ed90d370ec dont store mov style meta tags in mp4 (fixes ffmpeg -title + gtkpod)
Originally committed as revision 5405 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-18 23:32:42 +00:00
Baptiste Coudurier
307eb24879 add MPEG-2 intra vlc support
Originally committed as revision 5372 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-05-13 17:16:58 +00:00
Michael Niedermayer
e27b6e62f7 missmatch control for mpeg2 intra dequantization if bitexact=1
Originally committed as revision 5328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-28 17:03:52 +00:00
Benjamin Larsson
ddbddce547 Fix samples to bytes relation.
Originally committed as revision 5314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-24 13:04:12 +00:00
Benjamin Larsson
f1f7807abd AC3 encoding volume fix, by Justin Ruggles jruggle earthlink net.
Originally committed as revision 5281 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-10 12:12:26 +00:00
Corey Hickey
52dc09a5fe Fix regression tests to match changed output of AC3 encoder
(ac3enc.c r1.30)

Originally committed as revision 5275 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-04-07 21:30:24 +00:00
Loren Merritt
0816152af9 seed iterative_me with mvs from conventional search.
+15% speed, +.1 dB

Originally committed as revision 5159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-13 05:23:34 +00:00
Daniel Maas
0b297700b7 DVCPRO50 support.
Patch by Daniel Maas dmaas at maasdigital dot com

Originally committed as revision 5113 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-06 08:54:33 +00:00
Baptiste Coudurier
26f86eaf03 ftyp patch by (Baptiste COUDURIER <baptiste.coudurier smartjog com)
Originally committed as revision 5098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-02 19:28:35 +00:00
Baptiste Coudurier
1522767d0d compute output format before setting language patch by (Baptiste COUDURIER <baptiste.coudurier smartjog com)
Originally committed as revision 5093 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-03-02 01:37:38 +00:00
Dan Maas
40116978de Assign class 2 to most macroblocks by default, instead of a more conservative
method defined by SMPTE

Patch by Dan Maas

Originally committed as revision 5074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-28 02:54:48 +00:00
Dan Maas
2e52b44e50 AC coefficient weighing (per SMPTE 314M) for the DV encoder and decoder. The
performance impact is less than 1%.

Patch by Dan Maas  (dmaas at maasdigital dot com)

Originally committed as revision 5070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-27 04:50:06 +00:00
Michael Niedermayer
6661b2130d dont lowwer qnos of more blocks then needed
Originally committed as revision 5055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-23 13:05:37 +00:00
Michael Niedermayer
d2d230a756 fixing dv_guess_qnos()
roman, dont hesitate to reverse this and solve it differntly if you want ...

Originally committed as revision 5053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-23 08:56:53 +00:00
Michael Niedermayer
b4e021e8c4 jpeg-ls regression test
Originally committed as revision 4925 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-02-02 15:34:09 +00:00
Michael Niedermayer
82e415b1fc avoid using non constant fields of AVCodecContext in avi muxer
Originally committed as revision 4897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-25 17:14:16 +00:00
Benjamin Larsson
12943a53b5 Fix the wrongly commited regressions stuff for psp compatible mp4 files.
Originally committed as revision 4890 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-24 08:15:47 +00:00
Benjamin Larsson
dcfdb046ee Fix for title field in PSP compatible mp4 files. Patch by
Olivier, oandrieu <at> gmail.com.

Originally committed as revision 4889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-24 08:03:42 +00:00
Michael Niedermayer
29f7ae79e7 scale video for snow iterative me down so the egression test is faster
Originally committed as revision 4888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-23 18:49:08 +00:00
Michael Niedermayer
b29af723de >4gb fixes by (Dirk Musfeldt | d.musfeldt meilenstein de)
Originally committed as revision 4886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-23 14:12:03 +00:00
Loren Merritt
48d1b9a17c fix convergence of snow iterative_me
Originally committed as revision 4876 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-21 02:35:03 +00:00
Michael Niedermayer
c8a596d210 bugs found by valgrind
Originally committed as revision 4841 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 21:37:57 +00:00
Michael Niedermayer
47ad9abaa5 fixing second last time François Revol applies a patch without running the regression tests, next time his account is disabled
Note, if you think thats too harsh, look at the cvs history he has broken the regression tests many times and has not once
updated the checksums ...
regression test checksum change due to: movenc.c 1.46->1.47
"finally found what those >138 codes were... crappy compressed 5bit ascii. this gets them correctly, and adds setting track"

Originally committed as revision 4826 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-08 17:06:26 +00:00
Michael Niedermayer
80e44bc3bf use h264 MC functions for 2xX Xx2 blocks in snow too
Originally committed as revision 4824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-08 01:50:34 +00:00
Michael Niedermayer
2692ceab8b use h264 MC functions for rectangular blocks too
Originally committed as revision 4821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-07 18:34:19 +00:00
Michael Niedermayer
a588a2c654 regression test for iterative ME & wavelet cmp functions
Originally committed as revision 4820 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-07 15:53:21 +00:00
Michael Niedermayer
88e51e1fb5 second try of improved lambda/qp guessing for motion estimation RD in first pass
Originally committed as revision 4785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-29 15:46:23 +00:00
Michael Niedermayer
aaaa6f1549 dont discard least significant bits
Originally committed as revision 4773 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-25 16:34:12 +00:00
Michael Niedermayer
b7c51ebc89 slightly better mv_penalty table
Originally committed as revision 4770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-24 03:12:07 +00:00
Michael Niedermayer
377798d6bd minor typo
Originally committed as revision 4767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-23 00:40:52 +00:00
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