SDK IPTV lib

SDK IPTV lib is a highly customizable platform for a number of STB applications: IPTV players, media players, DVB tuners. Platform comprises hardware reference design based on STi7105 system-on-chip and some optional external periphery, depending on the required functionality.

Platform ships with SDK, allowing integrator to modify or implement wide set of additional features. SDK already includes reference design of the typical STB device. Operator can use that implementation as a starting point for his own design.

Key characteristics of SDK IPTV lib

  • All middleware routines are written in JavaScript which significantly simplifies development of the custom high level functionality, such as video on demand (VOD), subscription management, payment services
  • All graphics design are done using HTML, CSS, JS and can be easily modified
  • Reference design already includes stable implementation of the mainstream STB functions:
    • Media player. Plays various types of media files from internal or external storage. Supports all mainstream video/audio codecs, stream containers and subtitle formats
    • TV/DVB player. Turns STB into full featured TV set. Depending on the type of RF receiver, can receive digital DVB-T/C/S or analog TV broadcasting
    • IPTV Player. Capable of receiving all major streams over conventional transports: RTP, RTSP, UDP. Supports M3U/XML playlists
    • Timeshift. Implements pause and fast forward features while watching live broadcasting
    • PVR (personal or digital video recorder). Allows instant or on schedule recording of selected TV program
    • EPG (electronic program guide). Supports receiving EPG data over either HTTP (EPG-XMLTV) or TS stream (EPG-DVB)
    • Firmware upgrade. New firmware can be received using various methods: from USB flash drive, from remote server over HTTPS or OTA (over-the-air)
    • CAS. Allows reception of the encrypted broadcasting using CI or smart cards
  • Middleware provides clean and mature JavaScript and C++ API allowing integrator to rapidly integrate, configure and customize arbitrary set of desired applications, as well as develop new applications from the scratch
  • Hardware design allows choosing a most suitable STMicroelectronics SoC, depending on the required performance, compression codecs, network and CPU throughput and other features:
    • STi71xx for low-to-middle performance general purpose STB
    • STiH25xx for cost sensitive STB with integrated DVB demodulator
    • STi52x for low cost SD general purpose STB
 

Software development kit

SDK IPTV lib is a set of Linux based tools allowing the end user to seamlessly configure, customize and build the final version of firmware containing only desired functionality.

SDK IPTV lib ships with comprehensive documentation that guides the developer through the every stage of development process.

SDK IPTV lib firmware layers

SDK IPTV lib firmware includes the following components:
  • STLINUX, a Linux distribution from ST. Provides conventional Linux environment with full set of development tools. All hardware cores in SoC are accessible through STAPI, a framework supplied by STMicroelectronics
  • System tools and services. Provide various system functions: firmware upgrade, network interfaces configuration, persistent storage and so on
  • Program wrappers around STAPI functions. Provide high level abstraction layer suitable for direct calling from the middleware. They also implement a part of high level logic which is not desirable to run within JavaScript applications
  • System message bus. Isolates middleware from the system and STAPI routines
  • Middleware. A set of JavaScript and HTML routines that run on top of Qt/Webkit application. Middleware implements a wide range of STB related features (media player, TV player, EPG and many more) and provides convenient API for developing simple and rich UI applications. As well as JavaScript API, middleware also provides C++ API which has full access to low level internals of the firmware
  • User apps. A set of user applications for demonstration of Middleware capabilities. Basic SDK includes Media Player, Youtube, Picture Viewer, IPTV, PVR and EPG applications. Detailed description of available applications can be provided upon request

Basic version of middleware provides the following classes for the user applications:

  • Class SDKProgramme. Provides methods for querying an info of the channel (e.g. EPG info)
  • Class STB_AudioVideo. Configuration of the audio/video subsystem (refresh ratio, resolution, volume, luminance, etc.)
  • Class STB_AVMedia. Player related functions
  • Class STB_Browser. Provides methods for dealing with local file system (get list of files, open specific file, etc.)
  • Class STB_Channel. Functions for dealing with list of channels, EPG related functions
  • Class STB_Configuration. Functions for saving/querying of the system settings
  • Class STB_Generic. Common system functions (get power state, turn leds on/off, etc.)
  • Class STB_Network. Network configuration
  • Class STB_PVR. Time-shift and PVR specific functions
  • Class STB_DVB. Tuner and DVB-T/T2/C/C2/S/S2 specific functions
  • Class STB_System. System functions and utilities (get fw version, set timezone, fw upgrade, etc.)
  • Class STB_Usb. Dealing with USB mass storage devices (register callback on USB device insertion, get list of devices, etc.)

Upon request this set of classes can be expanded with additional functional groups.

 

Key technical features of SDK IPTV lib

Hardware
SoC
STMicroelectronics STi71xx, STiH25xx, STi52x
Minimum RAM
256 Mb
Minimum Flash memory
256 Mb
Network interfaces
100 Mbit Ethernet, Wi-Fi Module (optional)
Video outputs
HDMI 1.3, CVBS
Audio outputs
Analog Stereo, Digital S/PDIF, Analog 5.1 (with optional Audio Codec)
RF input
Depending on the type of installed tuner and DVB demodulator can be either of DVB-T/T2, DVB-C/C2, DVB-S/S2
Optional interfaces
USB 2.0 OTG, SATA, CI, Smart Card, CD-ROM
Video/Audio Capabilities
Video resolutions
1080i, 1080p, 720p, 576i, 576p, PAL, SECAM
Video codecs
MPEG1/2, H.264, MPEG4, video VC1, XviD
Audio codecs
MPEG-1 layer I/II, MPEG-2 layer II, MPEG-2 layer III (MP3), MPEG-4 AAC, Dolby Digital (AC3), DTS-HD
Media containers
Video: MKV, MPEG-TS, MPEG-PS, M2TS, VOB, AVI, MOV, MP4, ASF, WMV
Audio: MP3, MPA, M4A, Ogg, WAV, AC3, AAC, WMA
Media streams
RTSP, RTP, UDP, HLS, Smooth Streaming
Software
Operating system
STLINUX 2.4
File systems
FAT, NTFS, Ext2, Ext3
Middleware
Based on Qt/Webkit, JavaScript, HTML5, CSS
 

 

Do you want to use SDK IPTV lib for your project?
Contact us! We will be glad to answer your questions.