Bug 23558 - Requirement to ignore additional top-level boxes in ISO BMFF limits forward compatibility.
Requirement to ignore additional top-level boxes in ISO BMFF limits forward c...
Status: RESOLVED WONTFIX
Product: HTML WG
Classification: Unclassified
Component: Media Source Extensions
unspecified
PC All
: P2 minor
: LC
Assigned To: Adrian Bateman [MSFT]
HTML WG Bugzilla archive list
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-10-18 00:22 UTC by Mark Watson
Modified: 2013-11-05 16:22 UTC (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Watson 2013-10-18 00:22:36 UTC
Section 12.2.2 states "Valid top-level boxes defined in ISO/IEC 14496-12 other than moov, moof, and mdat are allowed to appear between the end of an initialization segment or media segment and before the beginning of a new media segment. These boxes must be accepted and ignored by the user agent and are not considered part of the media segment in this specification."

This requires such additional boxes to be ignored, wheras it would be better if it was simply allowed to ignore them.

Replace: "These boxes must be accepted and ignored by the user agent and are not considered part of the media segment in this specification."

With: "These boxes must be accepted and may be ignored by the user agent and are not considered part of the media segment in this specification."
Comment 1 Aaron Colwell 2013-10-18 20:17:32 UTC
I have concerns about adding a "may" here because it leaves open the possibility that other boxes could effect the interpretation of the boxes that we've outlined. If we add "may" then I think we should also add something that specifically says "Additional top level boxes must not effect the interpretation of the initialization segment or media segment in any way". This prevents unspec'ed side-effect behavior from creeping into UAs.
Comment 2 Mark Watson 2013-10-22 15:42:33 UTC
There could be additional boxes inside the moof that an MSE implementation is not required to ignore so I'm not sure why the same should not apply to top-level boxes.

For example, if ISO specified additional boxes providing stream data checksums, shouldn't an MSE implementation be allowed to support these without modification of the MSE specification ?
Comment 3 Aaron Colwell 2013-10-22 16:06:05 UTC
(In reply to Mark Watson from comment #2)
> There could be additional boxes inside the moof that an MSE implementation
> is not required to ignore so I'm not sure why the same should not apply to
> top-level boxes.
For the most part the top-level boxes we are allowing are self-contained and aren't really effected by the append behavior.

> 
> For example, if ISO specified additional boxes providing stream data
> checksums, shouldn't an MSE implementation be allowed to support these
> without modification of the MSE specification ?
Things like this are exactly what I am worried about because it could potentially cause a change in UA behavior. MSE can't really make any assumption about whether these checksums are correct because the application may decide to not append all the top-level boxes that may be included in the checksum. It could make this decision w/o even knowing that the checksum boxes are present in the stream. If you really want checksum validation, then this should be called out in the spec text and the behavior for validation failures should be clearly defined.
Comment 4 Mark Watson 2013-11-05 16:18:33 UTC
Ok, close as WONT FIX for the moment. If I come up with a good idea for forwards compatibility that addresses these concerns - and I come up with it in time - I'll re-open.
Comment 5 Aaron Colwell 2013-11-05 16:22:50 UTC
per discussion on the telecon call, I'm resolving this as fixed.