cta-wave / device-playback-task-force

9 stars 0 forks source link

Playback Requirements for TTML IMSC1.1 Text ('im2t') #45

Closed haudiobe closed 6 months ago

haudiobe commented 5 years ago

Add playback requirements for this profile.

gitwjr commented 1 year ago

Deferred for future work.

haudiobe commented 6 months ago

Addressed in DPCTF specification 2nd edition

The WAVE content specification [WAVE-CON] defines a set of WAVE Media Profiles for subtitles.

The primary focus of CTA WAVE is content streaming and playback by an HTML5 application using MSE and, where needed, EME. During such playback, subtitles and captions are typically decoded and presented by a JavaScript library that is included with the application. For example, for IMSC1, see https://github.com/sandflow/imscJS or https://github.com/Dash-Industry-Forum/dash.js.

Such libraries have dependencies on the HTML5 user agent implementation, such as graphics rendering and synchronization with the video and audio. This synchronization is done by the JavaScript library reading the HTML5 currentTime property that is verified as part of WAVE testing. The tests in this specification include observations for the accuracy of the fit between the value of currentTime and the currently-output video or audio. These tests are part of WAVE’s overall focus on HTML5/MSE/EME testing. Other basic subtitle/captioning functionality in HTML5/MSE/EME playback is not tested by WAVE.

However, a number of resources exist for testing a subtitle decoder; examples for IMSC1/TTML include: https://github.com/w3c/imsc-tests (which is cited in the WAVE Media Profile for IMSC1 Text) and https://dvb.org/specifications/verification-validation/dvb-ttml-subtitling-test-streams/. The W3C publishes IMSC1 test vectors at https://github.com/w3c/imsc-tests (which is cited in the WAVE Media Profile for IMSC1 Image).

WAVE does not currently provide test suite support for native media rendering (the so-called "Type 1").

WAVE collects and develops test content to meet industry needs for streaming interoperability. If an organization has test content suitable for testing decoding and presentation of IMSC1/TTML and wishes to add to the WAVE pool of qualified material, please contact standards@CTA.tech.

North American regulations require support for CTA-608/708 subtitles under certain conditions. The WAVE Content Specification does not require support and the WAVE Device Test Suite does not include any tests for handling CTA-608/708 subtitles. However, the DASH Industry Forum has a .js script for handling CTA-608. It can be found at https://github.com/Dash-Industry-Forum/dash.js/blob/development/externals/cea608-parser.js.