Re: QPEG

Michael Niedermayer <[email protected]> Sun, 7 Nov 2004 13:58:43 +0100
Newsgroups gmane.comp.video.xine.codec.devel
Message-ID <[email protected]>
Hi

On Saturday 06 November 2004 18:56, Kostya wrote:
> Here is my QPEG decoder (module for ffmpeg). It is complicated RLE with
> very unusual coding of delta frames. There is one file from MPlayer
> repository which plays OK - qpeg-test.avi. Playing other tested files
> (Clock.avi, Space.avi, VWbig6.avi) leaves a lot of garbage on the screen
> - it seems to me that codec somehow cleans those areas (maybe using some
> previous frame). If you look in code you'll see a piece of code with
> comment "much of magic here, skipped for now", in disasm it copied some
> dwords from one location to another.
>
> Can anybody figure this out ?

the "much of magic here, skipped for now" code seems to be a motion 
compensation function
the 4 high bits of the code are 0xF to enter it, the low 4bits select the 
block size, the next code contains the motion vector the high 4bits the x 
component, the low 4 bits the y component in twos complement encoding
it doesnt seem that this affects the dst/filled pointers, so the rle stuff 
probably always runs over the blocks afterwards
note, all just from the disassembly, nothing tested

[...]
-- 
Michael

"I do not agree with what you have to say, but I'll defend to the death your
right to say it." -- Voltaire


-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click