[FFmpeg-soc] [soc]: r1168 - rv40/rv40.c

Michael Niedermayer michaelni at gmx.at
Thu Aug 23 18:38:03 CEST 2007


Hi

On Thu, Aug 23, 2007 at 07:18:08PM +0300, Kostya wrote:
> On Thu, Aug 23, 2007 at 06:05:26PM +0200, kostya wrote:
> > Author: kostya
> > Date: Thu Aug 23 18:05:26 2007
> > New Revision: 1168
> > 
> > Log:
> > Handle case when slice tail is sent as another slice
> 
> Let me elaborate on it a bit.
> 
> Real container stores video frame by slices (controversal decision to me).
> They decided to drop macroblock count in slice, so you need either to get
> next slice, parse its header and set limit or just decode until end and
> hope thet nothing goes wrong. But it appears that sometimes slice end is
> stored as new slice so you need to add it to the end before decoding.
> 
> In order to workaround this err... design I keep track of last macroblock
> decoded successfully in slice and in case of bit reader reading past
> frame data set mode expecting frame tail, then if it arrives (without
> correct slice header), concatenating it with the previous data and
> decoding starting from the last successfully decoded macroblock.

you should use a parser which puts these parts back together
how should it work with remuxing in another container lets say
matroska, i very seriously doubt that it will work if the tail of a slice
is in the next frame ...

also are you sure that there are no flags/sizes at demuxer level which
could be used to easily combine these parts into slices or frames
without needing to look into the codec bitstream?


> 
> I've run my decoder under FFplay and MPlayer and should note that lavf
> demuxer drops some frames (can be clearly seen on title fade out in
> test.rmvb), so I will try to fix it.

thanks

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The worst form of inequality is to try to make unequal things equal.
-- Aristotle
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-soc/attachments/20070823/92c15be5/attachment.pgp>


More information about the FFmpeg-soc mailing list