[FFmpeg-devel] [PATCH] RealAudio 14.4K encoder
Vitor Sessak
vitor1001
Fri Jun 11 11:03:06 CEST 2010
On 06/10/2010 02:03 AM, Michael Niedermayer wrote:
> On Wed, Jun 02, 2010 at 01:13:17PM +0200, Francesco Lavra wrote:
>> On Sun, 2010-05-23 at 20:52 +0200, Francesco Lavra wrote:
>> [...]
>>> Floating point, with orthogonalization, with gain quantization done the
>>> fast way
>>> stddev: 210.14 PSNR: 49.88 bytes: 200000/ 200320
>>> stddev: 202.50 PSNR: 50.20 bytes: 143680/ 144000
>>> stddev: 196.30 PSNR: 50.47 bytes: 744960/ 745280
>>> stddev: 786.06 PSNR: 38.42 bytes: 5370560/ 5370880
>>> stddev: 422.29 PSNR: 43.82 bytes: 814080/ 814400
>>> stddev: 495.53 PSNR: 42.43 bytes: 432320/ 432640
>>> stddev: 396.24 PSNR: 44.37 bytes: 1741120/ 1741440
>>>
>>> Floating point, with orthogonalization, with gain quantization done
>>> taking into account the rounding error of the 5 best entries
>>> stddev: 210.49 PSNR: 49.86 bytes: 200000/ 200320
>>> stddev: 201.69 PSNR: 50.24 bytes: 143680/ 144000
>>> stddev: 200.05 PSNR: 50.31 bytes: 744960/ 745280
>>> stddev: 786.22 PSNR: 38.42 bytes: 5370560/ 5370880
>>> stddev: 419.41 PSNR: 43.88 bytes: 814080/ 814400
>>> stddev: 497.65 PSNR: 42.39 bytes: 432320/ 432640
>>> stddev: 395.23 PSNR: 44.39 bytes: 1741120/ 1741440
>>>
>>> I'd say we should go for the fast gain qantization, and in attachment is
>>> an cleaned up patch for it, with code duplication removed.
>>> I still have to try the iterative method, will do that in a few days I
>>> think.
>>
>> I have implemented an algorithm with multiple iterations in the codebook
>> search, and here are the results with 2 iterations:
>>
>> Floating point, with orthogonalization, with gain quantization done the
>> fast way, 2 iterations
>> stddev: 212.22 PSNR: 49.79 bytes: 200000/ 200320
>> stddev: 213.08 PSNR: 49.76 bytes: 143680/ 144000
>> stddev: 210.23 PSNR: 49.88 bytes: 744960/ 745280
>> stddev: 768.60 PSNR: 38.62 bytes: 5370560/ 5370880
>> stddev: 402.07 PSNR: 44.24 bytes: 814080/ 814400
>> stddev: 501.12 PSNR: 42.33 bytes: 432320/ 432640
>> stddev: 390.40 PSNR: 44.50 bytes: 1741120/ 1741440
>>
>> As you can see, no sensible improvements are brought by this approach,
>> and in some cases PSNR is even worse.
>> In case you want to take a look a the code, it's attached: at each
>> iteration, the vectors used to search a given codebook are
>> orthogonalized with the previously found vectors from the other two
>> codebooks.
>>
>
>> So my proposal is to go for the simpler method, with no iterations, like
>> in the attached (updated to latest svn) patch.
>
> ok
Applied. Congrats Francesco for your first patch!
> btw, is the code stable enough to add a regresion test? or is it
> giving different results between compilers/cpus?
> a reg test would be usefull
I got a different MD5 in Mans' PPC box.
-Vitor
More information about the ffmpeg-devel
mailing list