|
Media Authoring with Java API |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object tv.amwa.maj.entity.InterchangeObject tv.amwa.maj.entity.EssenceDescriptor tv.amwa.maj.entity.AAFFileDescriptor tv.amwa.maj.entity.DigitalImageDescriptor tv.amwa.maj.entity.CDCIDescriptor tv.amwa.maj.entity.MPEGVideoDescriptor
@AAFClass(uuid1=218169601, uuid2=257, uuid3=20736, uuid4={6,14,43,52,2,6,1,1}, definedName="MPEGVideoDescriptor", description="Describes essence that is encoded according to the MPEG specifications.") public class MPEGVideoDescriptor
Implements the description of picture essence that is encoded according to the MPEG specifications.
THE COMMENTS FOR THIS CLASS ARE INCOMPLETE.
Nested Class Summary | |
---|---|
static class |
MPEGVideoDescriptor.XMLHandler
|
Nested classes/interfaces inherited from class tv.amwa.maj.entity.DigitalImageDescriptor |
---|
DigitalImageDescriptor.DigitalImageDescriptorXMLHandler, DigitalImageDescriptor.VideoLineMapXMLHandler |
Nested classes/interfaces inherited from class tv.amwa.maj.entity.AAFFileDescriptor |
---|
AAFFileDescriptor.FileDescriptorXMLHandler |
Nested classes/interfaces inherited from class tv.amwa.maj.entity.EssenceDescriptor |
---|
EssenceDescriptor.EssenceDescriptorXMLHandler, EssenceDescriptor.LocatorXMLHandler, EssenceDescriptor.SubDescriptorXMLHandler |
Nested classes/interfaces inherited from class tv.amwa.maj.entity.InterchangeObject |
---|
InterchangeObject.InterchangeObjectXMLHandler |
Field Summary | |
---|---|
static String |
MPEGVIDEODESCRIPTOR_TAG
|
Fields inherited from class tv.amwa.maj.entity.CDCIDescriptor |
---|
CDCIDESCRIPTOR_TAG |
Fields inherited from class tv.amwa.maj.entity.DigitalImageDescriptor |
---|
DIGITALIMAGEDESCRIPTOR_ITEM |
Fields inherited from class tv.amwa.maj.entity.AAFFileDescriptor |
---|
FILEDESCRIPTOR_ITEM |
Fields inherited from class tv.amwa.maj.entity.EssenceDescriptor |
---|
ESSENCEDESCRIPTOR_ITEM |
Fields inherited from interface tv.amwa.maj.iface.CDCIDescriptor |
---|
ALPHASAMPLINGWIDTH_DEFAULT, BLACKREFERENCELEVEL_DEFAULT, COLORSITING_DEFAULT, PADDINGBITS_DEFAULT, REVERSEDBYTEORDER_DEFAULT, VERTICALSUBSAMPLING_DEFAULT |
Fields inherited from interface tv.amwa.maj.iface.DigitalImageDescriptor |
---|
ALPHATRANSPARENCY_DEFAULT, DISPLAYF2OFFSET_DEFAULT, FIELDENDOFFSET_DEFAULT, FIELDSTARTOFFSET_DEFAULT, IMAGEALIGNMENTFACTOR_DEFAULT, STOREDF2OFFSET_DEFAULT, Uncompressed |
Constructor Summary | |
---|---|
MPEGVideoDescriptor(ContainerDefinition containerFormat,
int storedHeight,
int storedWidth,
LayoutType frameLayout,
int[] videoLineMap,
Rational imageAspectRatio,
int horizontalSubsampling,
int componentWidth)
Creates and initializes a new MPEG video descriptor descriptor, which specifies that a file source mob is associated with video essence that is represented and
coded according to the MPEG specifications. |
Method Summary | |
---|---|
void |
appendXMLChildren(Node parent)
Append child elements to the given parent node to serialize the value of an object to an XML fragment. |
MPEGVideoDescriptor |
clone()
Creates a cloned copy of this entity. |
boolean |
equals(Object o)
Tests to see if the given object is equal to this interchange object. |
int |
getBitRate()
Returns the maximum bit rate of the MPEG elementary stream of the described MPEG video essence, measured in bits per second. |
boolean |
getClosedGOP()
Returns false . |
ContentScanningType |
getCodedContentScanning()
Returns whether the underlying content of the descrived MPEG-coded essence was of a known content scanning type. |
boolean |
getConstantBPictureCount()
Returns true if the associated essence always has a constant
number of B frames throughout, or false if the number of B frames vary. |
boolean |
getIdenticalGOP()
Returns true if every GOP in the described MPEG video sequence
is constructed in the same way, as per ISO/IEC13818-1 IBP descriptor, otherwise
false . |
boolean |
getLowDelay()
Returns true if the low delay mode was used in the sequence
represented by the described MPEG-video essence and false otherwise. |
short |
getMaxBPictureCount()
Returns the maximum number of B pictures between P frames or I frames in the described MPEG video essence, equivalent to ISO/IEC 13818-2 annex D (M-1). |
short |
getMaxGOP()
Returns the maximum occurring spacing between I frames in the described MPEG video essence, as per an ISO/IEC 13818-1 IBP descriptor. |
byte |
getProfileAndLevel()
Returns the MPEG-2 video profile and level of the described MPEG video essence. |
boolean |
getSingleSequence()
Determines whether the described MPEG video essence consists of a single MPEG sequence or if there are a number of sequences. |
int |
hashCode()
Returns a hash code value for this interchange object. |
void |
setBitRate(Integer bitRate)
Sets the maximum bit rate of the MPEG elementary stream of the described MPEG video essence, measured in bits per second. |
void |
setClosedGOP(Boolean closedGOP)
Set to true to indicate that "ClosedGop" is set in all GOP headers of
the described MPEG video essence, as per ISO/IEC 13818-1 IBP descriptor, otherwise
false . |
void |
setCodedContentScanning(ContentScanningType codedContentScanning)
Sets whether the underlying content of the associated MPEG-coded essence was of a known content scanning type. |
void |
setConstantBPictureCount(Boolean constanBPictureCount)
Set to true to indicate that the described MPEG video essence always has a
constant number of B frames throughout or to false to indicate that the
number of B frames vary. |
void |
setIdenticalGOP(Boolean identicalGOP)
Set to true to indicate that every GOP in the described MPEG video sequence
is constructed in the same way, as per ISO/IEC 13818-1 IBP descriptor, otherwise
false . |
void |
setLowDelay(Boolean lowDelay)
Set to true if the low delay mode was used in the sequence
represented by the described MPEG video essence and false otherwise. |
void |
setMaxBPictureCount(Short maxBPictureCount)
Sets the maximum number of B pictures between P frames or I frames in the described MPEG video essence, equivalent to ISO/IEC 13818-2 annex D (M-1). |
void |
setMaxGOP(Short maxGOP)
Sets the maximum occurring spacing between I frames in the described MPEG video essence, as per ISO/IEC 13818-1 IBP descriptor. |
void |
setProfileAndLevel(Byte profileAndLevel)
Sets the MPEG-2 video profile and level of the described MPEG video essence. |
void |
setPropertiesFromInterface(MPEGVideoDescriptor castFrom)
|
void |
setSingleSequence(Boolean singleSequence)
Sets whether the described MPEG video essence consists of a single MPEG sequence or if there are a number of sequences. |
Methods inherited from class tv.amwa.maj.entity.AAFFileDescriptor |
---|
describesStaticEssence, getCodecDefinition, getContainerFormat, getLength, getLinkedSlotID, getSampleRate, setCodecDefinition, setContainerFormat, setDescribesStaticEssence, setDescribesTimeVaryingEssence, setLength, setLinkedSlotID, setPropertiesFromInterface, setSampleRate |
Methods inherited from class tv.amwa.maj.entity.EssenceDescriptor |
---|
appendLocator, appendSubDescriptor, countLocators, countSubDescriptors, getLocatorAt, getLocators, getSubDescriptorAt, getSubDescriptors, insertLocatorAt, insertSubDescriptorAt, prependLocator, prependSubDescriptor, removeLocatorAt, removeSubDescriptorAt, setPropertiesFromInterface |
Methods inherited from class tv.amwa.maj.entity.InterchangeObject |
---|
castFromInterface, countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, registerImplementation, setPropertiesFromInterface, setPropertyValue, toString |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface tv.amwa.maj.iface.AAFFileDescriptor |
---|
getCodecDefinition, getContainerFormat, getLength, getLinkedSlotID, getSampleRate, setCodecDefinition, setContainerFormat, setLength, setLinkedSlotID, setSampleRate |
Methods inherited from interface tv.amwa.maj.iface.EssenceDescriptor |
---|
appendLocator, appendSubDescriptor, countLocators, countSubDescriptors, getLocatorAt, getLocators, getSubDescriptorAt, getSubDescriptors, insertLocatorAt, insertSubDescriptorAt, prependLocator, prependSubDescriptor, removeLocatorAt, removeSubDescriptorAt |
Methods inherited from interface tv.amwa.maj.iface.InterchangeObject |
---|
countProperties, createOptionalPropertyValue, disableGenerationTracking, enableGenerationTracking, getDefinition, getGeneration, getGenerationAUID, getProperties, getPropertyValue, isGenerationTracked, isPropertyPresent, omitOpionalProperty, setPropertyValue |
Methods inherited from interface tv.amwa.maj.entity.MAJCommon |
---|
toString |
Field Detail |
---|
public static final String MPEGVIDEODESCRIPTOR_TAG
Constructor Detail |
---|
public MPEGVideoDescriptor(ContainerDefinition containerFormat, @UInt32 int storedHeight, @UInt32 int storedWidth, LayoutType frameLayout, @VideoLineMap int[] videoLineMap, Rational imageAspectRatio, @UInt32 int horizontalSubsampling, @UInt32 int componentWidth) throws NullPointerException, IllegalArgumentException
Creates and initializes a new MPEG video descriptor descriptor, which specifies that a
file source mob
is associated with video essence that is represented and
coded according to the MPEG specifications.
containerFormat
- Container mechanism used to store the essence.storedHeight
- Number of pixels in vertical dimension of the stored view.storedWidth
- Number of pixels in horizontal dimension of the stored view.frameLayout
- Describes whether all data for a complete sample is in one
frame or is split into more than one field.videoLineMap
- The scan line in the analog source that corresponds to the
beginning of each digitized field. For single-field video, there is 1 value in
the array; for interlaced video, there are 2 values in the array.imageAspectRatio
- Describes the ratio between the horizontal size and the vertical
size in the intended final image.horizontalSubsampling
- Ratio of luminance sampling to chrominance sampling in the
horizontal direction. For 4:2:2 video, the value is 2, which means that there are twice as
many luminance values as there are color-difference values. Legal values are 1
,
2
and 4
.componentWidth
- Number of bits used to store each component. Can have a value of
8
, 10
, or 16
. Each component in a sample is
packed contiguously; the sample is filled with the number of bits specified by the optional
padding bits property. If the padding bits property is omitted, samples are packed contiguously.
NullPointerException
- One or more of arguments is null
.
IllegalArgumentException
- The given values are not within the permintted ranges.Method Detail |
---|
public final void setPropertiesFromInterface(MPEGVideoDescriptor castFrom)
InterchangeObject.setPropertiesFromInterface(tv.amwa.maj.iface.InterchangeObject)
@AAFProperty(uuid1=67175938, uuid2=267, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="BitRate", typeName="UInt32", optional=true, uniqueIdentifier=false, pid=0) public int getBitRate() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns the maximum bit rate of the MPEG elementary stream of the described MPEG video essence, measured in bits per second.
getBitRate
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional bit rate property is not
present in this MPEG video descriptor.public void setBitRate(Integer bitRate) throws IllegalArgumentException
MPEGVideoDescriptor
Sets the maximum bit rate of the MPEG elementary stream of the described MPEG video
essence, measured in bits per second. Set this optional property to null
to
omit it.
setBitRate
in interface MPEGVideoDescriptor
bitRate
- Maximum bit rate of the MPEG elementary stream of the described MPEG video
essence.
IllegalArgumentException
- The given bit rate is negative.@AAFProperty(uuid1=67175938, uuid2=262, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="ClosedGOP", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=0) public boolean getClosedGOP() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns false
. This is an optional property.
getClosedGOP
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional closed GOP property is not
present in this MPEG video descriptor.public void setClosedGOP(Boolean closedGOP)
MPEGVideoDescriptor
Set to true
to indicate that "ClosedGop" is set in all GOP headers of
the described MPEG video essence, as per ISO/IEC 13818-1 IBP descriptor, otherwise
false
. Set this optional to null
to omit it.
setClosedGOP
in interface MPEGVideoDescriptor
closedGOP
- Is "ClosedGOP" set in all the headers of the described MPEG video essence.?@AAFProperty(uuid1=67175938, uuid2=260, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="CodedContentScanning", typeName="ContentScanningType", optional=true, uniqueIdentifier=false, pid=0) public ContentScanningType getCodedContentScanning() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns whether the underlying content of the descrived MPEG-coded essence was of
a known content scanning type. Possible values are
Progressive
,
Interlace
and
Mixed
,
or returns NotKnown
if the
value is unknown. This is an optional property.
getCodedContentScanning
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional coded content type property is not
present in this MPEG video descriptor.public void setCodedContentScanning(ContentScanningType codedContentScanning)
MPEGVideoDescriptor
Sets whether the underlying content of the associated MPEG-coded essence was of
a known content scanning type. Possible values are Progressive
,
Interlace
and Mixed
,
or set to NotKnown
if the value is unknown. Set this
optional property to null
to omit it.
setCodedContentScanning
in interface MPEGVideoDescriptor
codedContentScanning
- Content scanning type of data represented by the underlying content
of the associated MPEG-coded essence.@AAFProperty(uuid1=67175938, uuid2=259, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="ConstantBPictureCount", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=0) public boolean getConstantBPictureCount() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns true
if the associated essence always has a constant
number of B frames throughout, or false
if the number of B frames vary.
This is an optional property.
getConstantBPictureCount
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional constant B frames property is
not present in this MPEG video descriptor.public void setConstantBPictureCount(Boolean constanBPictureCount)
MPEGVideoDescriptor
Set to true
to indicate that the described MPEG video essence always has a
constant number of B frames throughout or to false
to indicate that the
number of B frames vary. Set this optional property to null
to omit
it.
setConstantBPictureCount
in interface MPEGVideoDescriptor
constanBPictureCount
- Does the described essence to have a constant number of
B frames?@AAFProperty(uuid1=67175938, uuid2=263, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="IdenticalGOP", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=0) public boolean getIdenticalGOP() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns true
if every GOP in the described MPEG video sequence
is constructed in the same way, as per ISO/IEC13818-1 IBP descriptor, otherwise
false
.
getIdenticalGOP
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional identical GOP property is
not present in this MPEG video descriptor.public void setIdenticalGOP(Boolean identicalGOP)
MPEGVideoDescriptor
Set to true
to indicate that every GOP in the described MPEG video sequence
is constructed in the same way, as per ISO/IEC 13818-1 IBP descriptor, otherwise
false
. Set this optional property to null
to omit it.
setIdenticalGOP
in interface MPEGVideoDescriptor
identicalGOP
- Is every GOP in the described MPEG-video sequence constructed in the
same way?@AAFProperty(uuid1=67175938, uuid2=261, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="LowDelay", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=0) public boolean getLowDelay() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns true
if the low delay mode was used in the sequence
represented by the described MPEG-video essence and false
otherwise.
This is an optional property.
getLowDelay
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional low delay property is not
present in this MPEG video descriptor.public void setLowDelay(Boolean lowDelay)
MPEGVideoDescriptor
Set to true
if the low delay mode was used in the sequence
represented by the described MPEG video essence and false
otherwise.
Set this optional property to null
to omit it.
setLowDelay
in interface MPEGVideoDescriptor
lowDelay
- Was the low delay mode used in the sequence?@AAFProperty(uuid1=67175938, uuid2=265, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="MaxBPictureCount", typeName="UInt16", optional=true, uniqueIdentifier=false, pid=0) public short getMaxBPictureCount() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns the maximum number of B pictures between P frames or I frames in the described MPEG video essence, equivalent to ISO/IEC 13818-2 annex D (M-1). This is an optional property.
getMaxBPictureCount
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional maximum B picture count property
is not present in this MPEG video descriptor.public void setMaxBPictureCount(Short maxBPictureCount) throws IllegalArgumentException
MPEGVideoDescriptor
Sets the maximum number of B pictures between P frames or I frames in the
described MPEG video essence, equivalent to ISO/IEC 13818-2 annex D (M-1). Set this optional
property to null
to omit it.
setMaxBPictureCount
in interface MPEGVideoDescriptor
maxBPictureCount
- Maximum number of B pictures between P frames or I frames
in the described MPEG video essence.
IllegalArgumentException
- The given maximum B picture count is negative.@AAFProperty(uuid1=67175938, uuid2=264, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="MaxGOP", typeName="UInt16", optional=true, uniqueIdentifier=false, pid=0) public short getMaxGOP() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns the maximum occurring spacing between I frames in the described MPEG video essence, as per an ISO/IEC 13818-1 IBP descriptor. This is an optional property.
getMaxGOP
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional max GOP property is not
present in this MPEG video descriptor.public void setMaxGOP(Short maxGOP) throws IllegalArgumentException
MPEGVideoDescriptor
Sets the maximum occurring spacing between I frames in the described
MPEG video essence, as per ISO/IEC 13818-1 IBP descriptor. Set this optional
property to null
to omit it.
setMaxGOP
in interface MPEGVideoDescriptor
maxGOP
- Maximum occurring spacing between I frames of the described
MPEG video essence.
IllegalArgumentException
- The given max GOP value is negative.@AAFProperty(uuid1=67175938, uuid2=266, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="ProfileAndLevel", typeName="UInt8", optional=true, uniqueIdentifier=false, pid=0) public byte getProfileAndLevel() throws PropertyNotPresentException
MPEGVideoDescriptor
Returns the MPEG-2 video profile and level of the described MPEG video essence. For the main
profile and main level, the value returned is 0x48
. For 4:2:2 profile at
main level, the value returned is 0x85
. This is an optional property.
getProfileAndLevel
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional profile and level property is not
present in this MPEG video descriptor.public void setProfileAndLevel(Byte profileAndLevel)
MPEGVideoDescriptor
Sets the MPEG-2 video profile and level of the described MPEG video essence. For the main
profile and main level, set to 0x48
. For 4:2:2 profile at main level,
set to 0x85
. Set this optional property to null
to omit it.
setProfileAndLevel
in interface MPEGVideoDescriptor
profileAndLevel
- MPEG-2 video profile and level of the described MPEG video essence.@AAFProperty(uuid1=67175938, uuid2=258, uuid3=0, uuid4={6,14,43,52,1,1,1,5}, definedName="SingleSequence", typeName="Boolean", optional=true, uniqueIdentifier=false, pid=0) public boolean getSingleSequence() throws PropertyNotPresentException
MPEGVideoDescriptor
Determines whether the described MPEG video essence consists of a single MPEG sequence or
if there are a number of sequences. Returns true
if the sequence
has only one sequence and false
if it contains more than one. This is
an optional property.
getSingleSequence
in interface MPEGVideoDescriptor
PropertyNotPresentException
- The optional single sequence property is not
present for this MPEG video descriptor.public void setSingleSequence(Boolean singleSequence)
MPEGVideoDescriptor
Sets whether the described MPEG video essence consists of a single MPEG sequence or
if there are a number of sequences. Set to true
if the sequence
has only one sequence and false
if it contains more than one. Set this
optional property to null
to omit it.
setSingleSequence
in interface MPEGVideoDescriptor
singleSequence
- Does the described essence contain only a single sequence?public boolean equals(Object o)
MAJCommon
Tests to see if the given object is equal to this interchange object. To be equal, the given value must be not null, share the same interface to its value and each of the properties of the value must each be equal.
equals
in interface MAJCommon
equals
in class CDCIDescriptor
o
- Object to test for equality with.
Object.equals(Object)
public int hashCode()
MAJCommon
Returns a hash code value for this interchange object.
hashCode
in interface MAJCommon
hashCode
in class CDCIDescriptor
Object.hashCode()
public MPEGVideoDescriptor clone()
MAJCommon
Creates a cloned copy of this entity. The clone will be initialized to have the same value as this value but exists independently from then on. Changes to this value will not effect the clone and changes to the clone will not effect this. MAJ API clones are true deep clones with no shared references to areas of memory within the original.
This method does not throw a CloneNotSupportedException
as all
entity values must implement the Cloneable
interface. If a cloning
error does occur, a null
value will be returned but this is very unlikely
to happen.
clone
in interface MAJCommon
clone
in class CDCIDescriptor
Object.clone()
public void appendXMLChildren(Node parent)
XMLSerializable
Append child elements to the given parent node to serialize the value of an object
to an XML fragment. Methods of the XMLBuilder
class are provided to help with this
process.
appendXMLChildren
in interface XMLSerializable
appendXMLChildren
in class CDCIDescriptor
parent
- XML parent element to append child nodes to.
|
Media Authoring with Java API |
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |