MPTF/MPTF Discussions/ViewPort-Support
< MPTF | MPTF Discussions
Submitter: BBC
Tracker Issue ID: ISSUE-37
Description:
The HTML5 <video> tag should allow a sub-region of decoded video to be displayed. This sub-region is also known as a View-Port.
- It should be possible to change the View-Port during playback without interrupting the media presentation, in particular the audio.
- This use-case is taking connected CE devices with limited processor power into consideration.
Motivation:
Broadcasters sometimes transmit Mosaic style pictures, from which a single element (i.e. a portion of this picture) can be scaled up to fill the whole viewing region.
Using W3C media fragments or drawing mechanisms such as the <canvas> tag are currently not adequate to meet the requirements of this use-case.
Media Fragments do allow a view-port to be defined, but the drawbacks are:
- A change in the media fragment parameters will in the best case scenario result in a delay to the media pipeline while the switching occurs
- The Media Fragments specification currently only envisages cropping rather than up-scaling of a selected region (See relevant section in Media Fragments Spec)
The drawbacks to using mechanisms that manipulate the <video> tag, such as the <canvas> tag are:
- Accessing potentially DRM protected pixels within the <video> tag
- An inherent computational overhead is required even if the mechanism can be hardware accelerated.
- No mechanism to time sync the tags, which can lead to aliasing
- Cross-origin-restrictions can prevent <canvas> tags being accessed by JavaScript from other sources
Dependencies:
- Possibly Media Fragments
What needs to be standardized:
- A mechanism to define the horizontal and vertical offset of the View-Port in pixels within the <video> tag
- A method for defining the width and height of the View-Port in pixels within the <video> tag
- A switching mechanism that ensures the video pipeline is not affected