Dune HD STB - PIP SUPPORT



Overview

Dune HD STB provides support for PIP (picture-in-picture), including the
possibilities to play two streams simultaneously, configure the window for
each stream, configure z-order for streams, configure alpha-level of PIP
window.

NOTE: Currently supported for SMP867x platforms only, not currently
supported for SMP875x platforms.

For documentation, see:
   js_stb_sdk-*/doc/dune_js_stb_api.txt, "PIP" section
   dune_native_gui_sdk*/include/dune_stb_api/dune_stb_api.h

For API usage example, see:
   js_stb_sdk-*/test/pip.html

Firmware versions and features

For all new developments which require PIP, it is highly recommended to use
"_b9"+ firmware versions, which have more complete and debugged PIP
implementation.

PIP support was first introduced in "_b8" firmware versions. These firwmare
versions have a partial PIP implementation, with the following features and
limitations:
   - Features:
      - PIP playback can be dynamically started/stopped.
      - PIP window can be dynamically (re)configured.
      - PIP playback states are tracked the same way as main playback
        states.
      - PIP playback can work simultaneously with any kind of main playback
        (any container, any codec, any streaming protocol).
      - PIP playback and main playback can be dynamically
        started/stopped/restarted with other content independently from
        each other.
      - PIP playback always works w/o audio (even if main playback is
        stopped).
      - PIP playback can be Live HLS stream or Live multicast stream (other
        kinds of streams are not supported for PIP playback).
      - Verimatrix DRM is supported for PIP playback (the same Verimatrix
        configuration as for main playback is applied).
      - It is possible to enable/disable showing of PiP video when PiP
        video playback is running.
      - Alpha level of PiP video can be adjusted.
      - Z-order of PiP video can be adjusted.
   - Limitations:
      - Only Verimatrix Web DRM (for HLS streams) is supported for PIP
        playback; Verimatrix IPTV DRM (for multicast streams) is not
        supported for PIP playback.
      - Only SD resolution is supported for PIP playback, on both SMP8670
        and SMP8674/SMP8672 platforms.
      - setPipWindowRect called immediately after playPip may not work;
        instead, it is recommended to use the following sequence of calls:
        stopPip, setPipWindowRect, playPip.
      - PIP in Ekioh is not supported.
      - For PIP playback, only video is supported, audio is not supported.

"_b9"+ firmware versions have the following additional features and changes
for PIP in comparison with "_b8" firmware versions:
   - Verimatrix IPTV DRM (for multicast streams) is supported for PIP
     playback.
   - PIP in Ekioh is supported according to Ekioh API specification.
   - On SMP8674/SMP8672 platforms, PIP playback can support HD resolution,
     but, depending on a particular scenario (main video resolution, PIP
     video resolution, video output resolution, OSD resolution), hardware
     resources may not be enough to handle it and some picture degration
     may take place or it may not work at all; testing of particular
     required scenarious is recommended.
   - PIP stability and functionality improvements and fixes.