[M4IF Technotes] Problem in BIFS description
Nico Oorts
nico.oorts xmt.be
Thu Dec 19 16:54:34 EST 2002
Hi,
I have a scene description containing a scene with different
audiotracks. I describe one audiosource (pointing to an OD) and do a
replace commando after some time with another audiosource. This is
repeated for some other tracks. When I compile the BIFStext with mp4tool
and I play the result than the updates are played correctly (at the
correct time). The only problem is that all tracks are internally
playing from timestamp 0. I thought this was related with the UPDATE
commando for the OD, which is executed at timestamp 0. I already changed
this but without result. Some ideas?
Best Regards,
Nico Oorts
Here are the BIFS:
Layer2D {
children [
Sound2D {
source DEF N0 AudioSource {
url [ "3" ]
}
}
]
}
InitialObjectDescriptor {
objectDescriptorID 1
ODProfileLevelIndication 254
sceneProfileLevelIndication 254
audioProfileLevelIndication 254
visualProfileLevelIndication 254
graphicsProfileLevelIndication 254
includeInlineProfileLevelFlag true
esdescr [
ES_Descriptor {
es_id 2
streamPriority 0
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 1
streamType 3
upStream false
bufferSizeDB 75
maxBitrate 0
avgBitrate 0
decSpecificInfo BIFSConfig {
isCommandStream true
pixelMetrics true
pixelWidth 0
pixelHeight 0
nodeIDBits 10
routeIDBits 10
}
}
slConfigDescr SLConfigDescriptor {
}
}
ES_Descriptor {
es_id 1
streamPriority 0
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 255
streamType 1
upStream false
bufferSizeDB 84
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
}
]
}
AT 0 {
UPDATE OD [
ObjectDescriptor {
objectDescriptorID 3
esdescr [
ES_Descriptor {
es_id 3
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_hugo_pcm.media"
}
}
]
}
ObjectDescriptor {
objectDescriptorID 5
esdescr [
ES_Descriptor {
es_id 5
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_voetbalA_pcm.media"
}
}
]
}
ObjectDescriptor {
objectDescriptorID 6
esdescr [
ES_Descriptor {
es_id 6
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_glen_pcm.media"
}
}
]
}
ObjectDescriptor {
objectDescriptorID 7
esdescr [
ES_Descriptor {
es_id 7
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_voetbalB_pcm.media"
}
}
]
}
ObjectDescriptor {
objectDescriptorID 8
esdescr [
ES_Descriptor {
es_id 8
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_hugo_pcm.media"
}
}
]
}
ObjectDescriptor {
objectDescriptorID 9
esdescr [
ES_Descriptor {
es_id 9
streamPriority 16
decConfigDescr DecoderConfigDescriptor {
objectTypeIndication 193
streamType 5
upStream false
bufferSizeDB 20
maxBitrate 0
avgBitrate 0
}
slConfigDescr SLConfigDescriptor {
}
muxInfo muxInfo {
fileName "voetbal_voetbalC_pcm.media"
}
}
]
}
] # end UPDATE OD
}
AT 15000{
REPLACE N0 BY DEF N1 AudioSource {
url [5]
}
}
AT 30000{
REPLACE N1 BY DEF N2 AudioSource {
url [6]
}
}
AT 45000{
REPLACE N2 BY DEF N3 AudioSource {
url [7]
}
}
AT 60000{
REPLACE N3 BY DEF N4 AudioSource {
url [8]
}
}
AT 75000{
REPLACE N4 BY DEF N5 AudioSource {
url [8]
}
}
AT 90000{
DELETE N5
}
More information about the Mp4-tech
mailing list