[FFmpeg-devel] GSoC VQA v3 vptr decode function implementation

Kostya Shishkov kostya.shishkov
Mon Apr 13 08:17:57 CEST 2009


On Mon, Apr 13, 2009 at 7:44 AM, The Deep Explorer
<thedeepexplorer at gmail.com> wrote:
>>> Doc's info -->
>>>
>>> ?010 - Write block number (Val & 0xff) and then write Count blocks
>>> ? ? ? ? getting their indexes by reading next Count bytes from
>>> ? ? ? ? the VPTR chunk. Count is (((Val/256) & 0x1f)+1)*2.
>>> ? ? ? ? Again, the block numbers range from 0-255.
>>>
>>> ? ? ? ? ? ?block_no = code_buf & 0x1ff;
>>> ? ? ? ? ? ?count = (((code_buf/256) & 0x1f)+1)*2;
>>>
>>> It does not say how many bytes :( . So assuming 1 byte I will read the
>>> next byte ( say it is val)
>>> and then count will be computed as ?count = (((val/256) & 0x1f)+1)*2;
>>
>> Count bytes for Count block indexes - do the division yourself.
>>
>
> Honestly, I got lost , as to what division you are talking ...,

You have Count bytes to read and those are indexes for Count blocks,
so each index takes Count / Count = 1 byte

> So, count is ?(((Val/256) & 0x1f)+1)*2 ?and then this many times we
> will have to read/fetch
> each byte from the vptr chunk.. the byte we read is the index of what ?

of next block

> Is it the index to the dest buffer where we are writing the block no ?

no

> And every time we read , we have to increment the src index pointer by 1 byte ?

of course

> Thanks,
> -tde



More information about the ffmpeg-devel mailing list