[FFmpeg-devel] [PATCH 5/5] libavcodec/ffv1: Support storing LSB raw

Jerome Martinez jerome at mediaarea.net
Wed Oct 16 19:27:09 EEST 2024


Le 16/10/2024 à 15:54, Michael Niedermayer a écrit :
> 3rd implemantation :)
> you might ask why i implement this 4?! times
> Heres why: (tests done with 4 rawlsb bits, 16bit per sample input)

I tested on my side also including the speed as the goal is to avoid the 
speed cost of the LSB, with 6K content from scanner (analog input, last 
bits are more or less random).
Speed     Compr
0,037x    0,471    No patch
0,051x    0,491    bitfield
0,046x    0,489    rangecoder

the 25% gain in the speed is clearly visible (actually it 27%  in my 
tests) with the bitfield version of storing LSB, but it is a lot less 
visible with the rangecoder version (the one from today):
There is a small 0.5% gain in size at the cost of 9% of speed, it is not 
worth it IMO.

I prefer by far your first version (really storing LSB as raw), it is 
fast as expected (25% less time) and adding the range coder creates 
something not really interesting (20% less time "only" for so little 
gain in size compared to 25%)


More information about the ffmpeg-devel mailing list