Hi!
It is a bit unclear how to treat the "duration" property on readingOrder level in the manifest when media fragment selectors are used.
Lets define the resource audio.mp3 as an audio file that is 20 seconds long.
According to the spec, the duration property is the duration of the resource.
But then consider this partial manifest:
{
"duration": "PT10S", // This is the overall length of the audiobook when played from start to end.
"readingOrder": [
{
"url": "audio.mp3#t=10,20"
"duration": "PT20S" // The resource duration is 20s long. But we will only play the interval 10-20s
}
]
}
The above JSON fails the spec according to: https://www.w3.org/TR/audiobooks/#audio-manifest-processing
since the durations does not match.
So should "duration" always be the duration of the resources regardless of media fragment selectors? If so, it gives a false indication of the actual duration when the audiobook is played. In the example above, the global "duration" in the manifest would be set to 20 seconds, but it would actually be 10 seconds when playing the audiobook.
Hi!
It is a bit unclear how to treat the "duration" property on readingOrder level in the manifest when media fragment selectors are used.
Lets define the resource
audio.mp3as an audio file that is 20 seconds long.According to the spec, the
durationproperty is the duration of the resource.But then consider this partial manifest:
The above JSON fails the spec according to: https://www.w3.org/TR/audiobooks/#audio-manifest-processing
since the durations does not match.
So should "duration" always be the duration of the resources regardless of media fragment selectors? If so, it gives a false indication of the actual duration when the audiobook is played. In the example above, the global "duration" in the manifest would be set to 20 seconds, but it would actually be 10 seconds when playing the audiobook.