[FFmpeg-devel] [PATCH] RoQ decoder 4:4:4 update

Eric Lasota riot
Tue Jun 5 03:52:10 CEST 2007

Sorry about that last one, Thunderbird decided to switch to preformat 
and I incorrectly assumed Mailman would fix the word wrap.

Michael Niedermayer wrote:
> and
> that the code would use 32/64 bit read/writes instead of bytewise ones

Considering block_copy is inlined with fixed sizes in the 
implementations, gcc should be compiling it as such, but I'd have to dig 
out nasm again for that.

> uint8_t cell[123] is clearer than roq_cell cell for someone not knowing
> the code

I wouldn't think someone not knowing the code would glean any more 
information off of a byte array than off of an unfamiliar type, but it 
does seem more intuitive to have a type that specifically represents 
data in a particular configuration than an unstructured array.

Admittedly it's a bit less important than with cells (which are 
non-intuitive as an interleaved array), but I think something like 
blah[cp][n] looks more intuitive as accessing a specific byte of a 
specific plane of a macroblock than blah[cp*64+n]

Speaking of cells, should the cells and qcells fields of RoqContext be 
renamed to something like codebook2x2 and codebook4x4 (or shorthand as 
cb2 and cb4), representing their usage instead of their type?

c_stride could be deleted also, as it's no longer used in the update, as 
long as it's okay to assume that all three planes will have the same 
stride in 4:4:4.

More information about the ffmpeg-devel mailing list