Commit Graph

24 Commits

Author SHA1 Message Date
Diego Biurrun c26abfa541 Rename ABS macro to FFABS.
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +00:00
Diego Biurrun b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Justin Ruggles e1bbc0321c cosmetic change to adjust alignment.
Originally committed as revision 5767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 17:08:25 +00:00
Justin Ruggles 5f3acd9ec9 Modify preset compression levels to utilize log search.
Originally committed as revision 5766 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 17:04:54 +00:00
Michael Niedermayer dbb45a3bb7 log prediction order search method
Originally committed as revision 5763 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 15:46:45 +00:00
Justin Ruggles 26053bdcc8 Add lpc order search. This creates new compression levels 6 to 12.
Originally committed as revision 5762 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-16 13:34:47 +00:00
Michael Niedermayer 408ec4e2a6 calculate all coefficients for several orders during cholesky factorization, the resulting coefficients are not strictly optimal though as there is a small difference in the autocorrelation matrixes which is ignored for the smaller orders
Originally committed as revision 5758 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-15 23:43:38 +00:00
Michael Niedermayer 8ea543b580 cleanup
Originally committed as revision 5750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-14 19:14:25 +00:00
Michael Niedermayer ab01b2b82a optionally (use_lpc=2) support Cholesky factorization for finding the lpc coeficients
this will find the coefficients which minimize the sum of the squared errors,
  levinson-durbin recursion OTOH is only strictly correct if the autocorrelation matrix is a
  toeplitz matrix which it is only if the blocksize is infinite, this is also why applying
  a window (like the welch winodw we currently use) improves the lpc coefficients generated
  by levinson-durbin recursion ...

optionally (use_lpc>2) support iterative linear least abs() solver using cholesky
  factorization with adjusted weights in each iteration

compression gain for both is small, and multiple passes are of course dead slow

Originally committed as revision 5747 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-14 18:48:38 +00:00
Michael Niedermayer 1484a46753 dither lpc cpeffs
Originally committed as revision 5727 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-13 11:41:52 +00:00
Justin Ruggles c6375bf23c allows user-settable block size and fixes related typo
Originally committed as revision 5674 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-08 16:39:58 +00:00
Justin Ruggles 1e5707b7b8 porder patch by (Justin Ruggles jruggle a t earthlink d ot net)
Originally committed as revision 5593 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-03 09:20:26 +00:00
Michael Niedermayer 474176bf92 3 lines while -> 1 line for loop
Originally committed as revision 5577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 13:14:04 +00:00
Michael Niedermayer 5d2f52b989 simplify
Originally committed as revision 5576 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 13:10:08 +00:00
Michael Niedermayer b2e30cb324 simplify compute_autocorr
Originally committed as revision 5575 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 13:01:01 +00:00
Michael Niedermayer 412759560c dont use memcpy for copying structs
Originally committed as revision 5574 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 12:40:39 +00:00
Michael Niedermayer 7c69b83057 simplify
Originally committed as revision 5573 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 11:06:27 +00:00
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
Michael Niedermayer 78f67b7ad3 simplify
Originally committed as revision 5571 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-07-02 09:30:51 +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 6c35b4dee3 10l
Originally committed as revision 5527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-25 21:22:25 +00:00
Michael Niedermayer d1015e88b4 simplify & optimize things a little
Originally committed as revision 5516 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-24 13:56:29 +00:00
Michael Niedermayer 9e96ab0389 first rudimentary version of (Justin Ruggles jruggle earthlink net) flac encoder
Originally committed as revision 5514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-06-24 10:20:15 +00:00