Video Playback

    Video Playback


    Article summary

    The X1 Platform WPE Browser supports MSE/EME for those interested in bringing a video playback solution to your X1 Application. The following open-source players have all been successfully deployed in X1 Apps:

    • HLS.js - https://github.com/video-dev/hls.js/

    • DASH.js - https://github.com/Dash-Industry-Forum/dash.js

    • Shaka - https://github.com/google/shaka-player

    Additionally, HLS and MPEG-DASH playback is available via the RDK's Advanced Adaptive Media Player, or AAMP. AAMP is an application which uses the GStreamer framework to present IP Video Streams.

    You can learn more on the RDK wiki.

    To access the AAMP player in your X1 App, you must replace the protocol of your content with aamp for http or aamps for https.

    Protocal

    AAMP Replacement

    http://

    aamp://

    https://

    aamps://

    Example usage of AAMP in an HTML5 video tag:

    <body>
    <video id="video"></video>
    <script type="text/javascript">
    var video = document.getElementById('video');
    video.src = 'aamp:/hostname.port/path/resource.m3u8'
    video.load();
    video.play();
    </script>
    </body>
    

    Troubleshooting

    When using HLS in the AAMP player, you must use the EXT-X-STREAM-INF tag.

    Without that tag AAMP will try to use the hardware demuxer, which is buggy in Intel chipsets. Adding the tag will force AAMP to use a software demuxer which avoids the Intel hardware bug.

    Video Player Sessions

    The system browser only supports a single playback stream, multi-track assets are not supported. Additionally, orphaned player session invoke DRM and other failures. To avoid playback issue, please follow the recommendations below:

    • Use single sessions for all playback

    • If multiple sessions are required, you must first destroy the previous player instance

    DRM

    The X1 Platform supports the following DRM:

    • Microsoft Playready 2.5

    • Widevine 1.14 Service level 1


    Was this article helpful?