On Tue, Jun 10, 2014 at 12:20:44PM +0200, Maxim Polijakowski wrote:
> Am 08.06.2014 14:15, schrieb Dirk Ausserhaus:
> >On Sun, Jun 8, 2014 at 2:10 PM, Kostya Shishkov
> ><[email protected]> wrote:
> >>On Sun, Jun 08, 2014 at 01:53:49PM +0200, Dirk Ausserhaus wrote:
> >>>Here's a patch that fixes decoding of Indeo 4 B-frames.
> >>Looks correct. I should've done it long time ago and saved you some work.
> >>
> >>>Now the main problem is Indeo 4 B-frames reconstruction. For that I
> >>>need to modify IVI context to store the second pair of vectors (that
> >>>is not hard at all) and make it perform the averaging motion
> >>>compensation for B-blocks (that one seems to require some more
> >>>hacking).
> >>It seems tricker than most codecs since in Indeo one does not add residue to
> >>motion compensation but rather the othe way around so motion function will
> >>have to do averaging inside before adding result to the block.
> 
> IIRC, it performs a simple averaging motion compensation like this:
> 
> (X + Y) / 2.
> 
> IIRC, it doesn't even do a proper rounding.

Should not matter much in this case.
 
> The tricky part was which frames to choose - two different kinds of
> NULL frames (type 6 and 7) play the key role there.
> I'll try to search my data for more information on this topic. Not
> sure how sucessful it will be because alot of time has passed since
> I worked on this codec...

At least in volcano.avi you have a sequence of
I, I, I, IP, B, B, type6 (null_last), type4 (droppable P), IP, B, B, type6

Another file I have features this pattern:
I, I, I, IP, B, B, P, B, B, P

Hopefully Dirk will figure something out.
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to