[M4IF Technotes] Very basic question about video bitstream syntax and ES definitio ns

Prabhudev Hosur Prabhudev_Hosur objectvideo.com
Fri Sep 21 17:01:56 EDT 2001


Please correct 2) as:
A visual elementary stream is defined differently for combined  and separate
configurations  to address video only decoding and MPEG-4  systems level
decoding.  In the first case, an elementary stream is the entire visual
bitstream for a visual object layer.  In the second case,  it is all the
data after either video object layer (for video visual object) header or
visual object header (for other visual objects)
Prabhu
ObjectVideo
-----Original Message-----
From: technotes-admin   lists.m4if.org
[mailto:technotes-admin   lists.m4if.org]On Behalf Of Prabhudev Hosur
Sent: Friday, September 21, 2023 3:32 PM
To: 'Larry Pearlstein'; technotes   lists.m4if.org
Subject: RE: [M4IF Technotes] Very basic question about video bitstream
syntax and ES definitio ns
Larry Pearlstein,
1)       A visual bitstream should start with
Visual_object_sequence_start_code
2)       A visual elementary stream is defined differently for combined  and
separate configurations  to address video only decoding and MPEG-4  systems
level decoding.  In the first case, an elementary stream is the entire
visual bitstream for a visual object layer.  In the second case,  it is only
all the data except the data after either video object layer (for video
visual object) header or visual object header (for other visual objects)
-Prabhu
ObjectVideo
-----Original Message-----
From: technotes-admin   lists.m4if.org
[mailto:technotes-admin   lists.m4if.org]On Behalf Of Larry Pearlstein
Sent: Friday, September 21, 2023 2:24 PM
To: 'technotes   lists.m4if.org'
Subject: [M4IF Technotes] Very basic question about video bitstream syntax
and ES definitio ns
Dear M4IF community members,
I'm wondering about the syntax that I've found in MPEG-4 video bitstreams.
I see the following:
0000 0101   video_object_start_code
0000 0120   video_object_layer_start_code
00c8        = "0000 0000 1100 1000"     >   random_acc = 0
                                            video_object_type_indication =
0x01, simple object type
                                            is_object_layer_id = 1
                                            verid = 0010,
                                            priority = 001
                                            etc.
My confusion comes from the fact that it seems that the syntax of the file
begins in the middle of the VisualObject syntax.  Perhaps I've missed some
text that suggests that this is allowed, suggested, etc?
In the conformance spec it says:
        "A bitstream is the coded representation of one layer of a single
visual object."
Based on this definition, I'd expect to find a visual_object_start_code at
the beginning of the file.
Also, I'm confused about the definition about an MPEG-4 "Elementary Stream".
Figure 6-12 suggests that a Visual Object Layer is an elementary stream.  I
would imagine that a VideoObjectLayer is a type of Visual Object Layer,
right?
But the text suggests that a VideoObjectLayer contains configuration
information that is not part of an elementary stream.  Also,
VideoObjectLayer is hierarchically above the 5 functions that are enumerated
as "entry points" for elementary streams.
So - is a VideoObjectLayer an Elementary Stream?  Is an MPEG-4 video
bitstream file an elementary stream?  Is an MPEG-4 video bitstream file a
VideoObjectLayer, etc?
Thanks for any help.  Also, please forgive me if this isn't the appropriate
forum for this question, it's the first time I've posted.
                                Thanks,
                                Larry Pearlstein
                                ATI
-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/mp4-tech/attachments/20010921/3cea7542/attachment.html


More information about the Mp4-tech mailing list