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

AVC test content with A/V fragment durations meeting requirements of test 9.4 #69

Open
jpiesing opened this issue Feb 28, 2024 · 3 comments
Assignees

Comments

@jpiesing
Copy link
Contributor

It has been suggested that we have no suitable content with both (AVC) video and (any) audio where the respective fragment durations meet the requirement of test 9.4. Specifically.

9.4.2 Pre-condition
Four CMAF Switching Sets are available:
• Two CMAF Switching Sets for video and two Switching Sets for audio are available.
• Each pair of Switching Sets follows the properties in clause 5.3.3.5. Consequently, all CMAF tracks in both Switching Sets conform to one media profile, one CMAF Principal Header exists for initialization of playback and this CMAF Principal Header can be appended to the source buffer without triggering a reinitialization of the decoding and rendering platform.
• In the first switching set pair, there exists at least one media time greater than 0, for which the Audio and Video Switching Set coincides with a Fragment Boundary

This is part of cta-wave/device-playback-task-force#111 @yanj-github @rcottingham

@rbouqueau Do we have any such content?

@rbouqueau
Copy link
Collaborator

For the splicing content (section 9.4), for video, there exist two separate generated contents. Each contains one Switching Set per codec. As a consequence there exists now two Switching Sets individually available: for AVC and HEVC. There is only one Track per Switching Set. The CMAF Fragment duration is 1.92s which is recommended for CMAF Fragment alignment. So I think we're safe on the video side.

Audio: I let Resilion comment.

Once this is clarified my suggestion is to unify the contents into one manifest. The content for this manifest needs to be decided by the group (in particular if one Track per Switching Set is ok).

@jpiesing
Copy link
Contributor Author

jpiesing commented Mar 5, 2024

@yanj-github @rcottingham Is there an audio file with segment duration 1.92s or a segment duration such that

M * audio segment duration = N * 1.92.

@yanj-github
Copy link
Collaborator

yanj-github commented Mar 5, 2024

Current fragment durations for the audio codecs we delivered:

  • AAC: 1.984s
  • AC-4: 2s
  • E-AC-3: 2.016s

Aligning fragment boundaries in an audio and video switching set is straightforward for AC-4 as the codec works in frames. Video can be regenerated to have 2s fragment duration or AC-4 with 1.92s.
However, AAC and E-AC-3 are non-trivial to align as they depend on sample rate and audio unit length. The longer the fragment duration, this easier it is to get a suitable duration to sync segment boundaries, but this has a knock on effect on total content duration. Content of 60s may not work, so we might have to make the content duration longer. Both audio and video will have to be carefully regenerated for these codecs.

In practice though perfectly aligning fragment boundaries is rare, so do we really need specific test content for 9.4 test?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants