Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HbbTV profile gives an error "trun run box shall allow negative composition offset (v1 expected but v0 found, on audio segments)" #688

Open
Murmur opened this issue Sep 7, 2023 · 3 comments
Labels
CTA-WAVE General, categorized CTA issues HbbTV-DVB-issue

Comments

@Murmur
Copy link

Murmur commented Sep 7, 2023

See gpac issue, a new parameter to force trun.version=1 on audio segments: gpac/gpac#2586
they should not complain, trun v1(trun.version=1) is only mandatory for video tracks in cmf2 brand.

FFMPEG is writing video=v1, audio=v1 segments, MP4BOX is writing video=v1, audio=v0 segments. Validator does not complain on ffmpeg segments but do complain on mp4box segments.

HbbTV specs too strict about "forcing" V1 on video+audio segments? Specs wording is not clear enough? Validator gives a false error?

MP4BOX test content video=v1,audio=v0
https://refapp.hbbtv.org/videos/00_llama_h264_v8/manifest_1080p_24s.mpd

HbbTV ts_103285v010301p.pdf spec
Following are constraints on the Player with respect to ISO BMFF format(=mp4 file): Players shall support the usage of the track fragment run box ('trun') with negative composition offsets (trun.version=1 format). Negative composition offsets were added to ISO/IEC 14496-12 in Amendment 3, which is included in ISO/IEC 14496-12 in the Segment can be determined by adding composition offsets stored in the Track Run Box (trun). Negative composition offsets in a V1 trun box should be used to adjust the presentation time of the first presented sample (V1=version 1 format).

Validator error: [x]segment [x]hbbtv
segment validation: ## ### HbbTV check violated: Section E.3.1.1. "The track run box (trun) shall allow negative composition offsets in order to maintain audio visual presentation synchronization", but unsigned offsets found.

@rbouqueau
Copy link
Collaborator

There is a "should" in HbbTV. So the code should be modified accordingly: error for video, warning otherwise.

See also unresolved #446.

@RufaelDev
Copy link

RufaelDev commented Sep 7, 2023

Hey all, I think the negative composition time is only needed in video tracks in certain cases (when negative composition times are needed), so this is a player requirement not a content requirement. If you have a simple GOP in decode order I P P P for example you dont need trun v1 even for video. I raised this issue also in MPEG for CMAF 9.2.5 as that clause assumes that negative composition time is required, but this is not always the case such as in simple group structures. So supporting trun v1 in my opinion is a player requirement not a content requirement. Of course when you need negative composition you can use it but CMAF also adds the option of using edit list. I see the HbbTV text implies that trun v1 shall be used but the text does not literally state it. Content provider may default to v1 trun but I dont think it is a requirement.

So my point is if you read the text carefully you will see that it is a player requirement not a content requirement, as your content may not require negative composition time offsets

so even for video i dont think using trun v0 should raise an error.

@Murmur
Copy link
Author

Murmur commented Sep 25, 2023

trun v1 negative composition time | CMAF also adds the option of using edit list.

@RufaelDev Slight offtopic but how do trun.ver1=allow negative composite time(no edit list tables) VS use edit list tables for negative time(+trun.ver0) decision should be evaluated, pro+/con- issues, player implications and compatibility etc?

@rbouqueau rbouqueau added CTA-WAVE General, categorized CTA issues HbbTV-DVB-issue labels Apr 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CTA-WAVE General, categorized CTA issues HbbTV-DVB-issue
Projects
None yet
Development

No branches or pull requests

3 participants