[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