[M4IF Technotes] Is OBMC implementation different from Momusys and 14496-2??
Luca Piccarreta
piccarre elet.polimi.it
Fri Oct 18 18:47:01 EDT 2002
Thanks for the answer.
But I'm still a little bit perplexed.
May be these questions have been asked lots of times,
but how should a decoder behave at the end
of a video packet (OBMC)? I suppose that the MV vector of the macroblock
to the right should be used. (If I remember right, MV vectors of other
video packets are valid for OBMC prediction).
Does this imply that a Video Packet cannot be decoded correctly
on its own?
Regards,
Luca.
----- Original Message -----
From: "Gary Sullivan" <garysull microsoft.com>
To: "Luca Piccarreta" <piccarre elet.polimi.it>; <technotes lists.m4if.org>
Sent: Friday, October 18, 2023 5:24 PM
Subject: RE: [M4IF Technotes] Is OBMC implementation different from Momusys
and 14496-2??
The bottom remote vectors should be used for the upper two 8x8
blocks within the macroblock,
but not for the lower two 8x8 blocks (for which the remote
motion vector would be from the next row of macrobloks). I think
this is stated in the spec if you look closely enough.
OBMC as in MPEG-4 was copied directly from H.263 with the same
design, but was not ever put into a profile of MPEG-4.
OBMC is actually used a lot in H.263 in the videoconferencing industry.
It gives a significant improvement in visual quality, and it's
not terribly difficult to decode - it just requires a one-macroblock
pipelining delay in the decoding process.
Best Regards,
Gary Sullivan
+> -----Original Message-----
+> From: Luca Piccarreta [mailto:piccarre elet.polimi.it]
+> Sent: Friday, October 18, 2023 4:17 AM
+> To: technotes lists.m4if.org
+> Subject: Re: [M4IF Technotes] Is OBMC implementation
+> different from Momusys and 14496-2??
+>
+>
+> I'm also very interested in this point.
+> The spec for OBMC look very encoder-oriented.
+> Encoders usually have all the MVs available at
+> encoding time.
+> Decoders, instead, work in a pipeline.
+> In MS software also bottom vector is not used.
+> And having the right vector available really
+> complicates decoding.
+> In fact, Motion compensation for a MB is carried
+> out only after the subsequent MB header and MV
+> (and shape) have been decoded.
+> This may be (Not sure, though) the reason why
+> OBMC is not present in any profile/level
+> combination.
+> So one may wonder why there is a tool that no encoder
+> can use being sure that any decoder will ever be able
+> to decode!
+> Strictly following the specs for OBMC would heavily
+> impact on performances (DCT coefs or output) for a whole
+> row should be cached.
+> Partially following the specs makes the decoder code
+> cumbersome to seay the least (see decode_PVOP...
+> code in MS Ref).
+> Thanks to anyone that will shed light on this issue.
+> Luca Piccarreta.
+>
+> ----- Original Message -----
+> From: <CC_Ju mtk.com.tw>
+> To: <technotes lists.m4if.org>
+> Sent: Thursday, October 17, 2023 9:08 AM
+> Subject: [M4IF Technotes] Is OBMC implementation different
+> from Momusys and
+> 14496-2??
+>
+>
+> > Dear all:
+> > I don't know if I misunderstand the OBMC
+> implementation in Momusys
+> > software. It seems to use only up, left, right, and
+> current macroblock's
+> > motion vector to do OBMC operation. The motion vector in
+> bottom macroblock
+> > seems don't used in OBMC operation. This differs from 14496-2
+> > specification. Anybody can help?
+> >
+> > Thanks in advance.
+> >
+> > ---
+> > Chi-Cheng
+> >
+> >
+> >
+> >
+> >
+> >
+> >
+> >
+> > _______________________________________________
+> > Technotes mailing list
+> > Technotes lists.m4if.org
+> > http://lists.m4if.org/mailman/listinfo/technotes
+>
+> _______________________________________________
+> Technotes mailing list
+> Technotes lists.m4if.org
+> http://lists.m4if.org/mailman/listinfo/technotes
+>
More information about the Mp4-tech
mailing list