Friends

Kick start developing your Own IPTV system - Part III

In this final post, here are the remaining steps described as follows
4.Streaming live broadcast video
                The first thing to simulate on your IPTV system is live TV that can be tuned into, and this can be done in two ways. The first is easy, the second is either painful or expensive. Live broadcast IPTV needs to be multicasted 24-7 over the IP network, as unicast is too inefficient. We will be streaming live TV from our video server.
               For each channel, we need to broadcast a 5 minute looping pre-captured video clip to a multicast IP address. For this, we can use the free VLC player, or the industry standard WinSend, created by Pixstream. The clip itself ideally needs to be previously encoded in MPEG-4 H.264 AVC, and formatted into an MPEG-2 transport stream. However, VLC being the Swiss army knife it is means we can convert open virtually any video file and encode it on the fly as we are broadcasting. Open your video file, and use the advanced options in VLC to stream the output onto the network as UDP, using a multicast address such as 235.5.5.5 to a random port (such as 10201).To validate the stream open the same network stream on other computer of VLC. Once they are broadcasting, the set-top box will be able to tune into the multicast stream just as VLC does.
5. Prepare VoD content
               Get the video files into the right format, and set them up to stream from a video server.Your video material will need to be pre-encoded in the same way the live multicast video is. Video is very temperamental and requires state control, unlike typical web protocols such as HTTP. RTP (real-time protocol) and RTSP (real-time streaming protocol) were designed to provide VCR-like controls for IP networks, and most, if not all commercial VoD servers use these technologies for delivering quality-assured video. A lot of set-top box manufacturers have adapted their hardware to be able to simulate VCR-like features using HTTP so video can be streamed directly from a web server like Apache. Once the video files have been pre-encoded, they need to be placed in the directory on the video server that has been allocated as the storage folder, as well as mirrored in the Apache web directory allocated on the web server.Almost all the RTSP servers have a web-based configuration panel and will need to index/identify each file for streaming. Once these are in place, test the RTSP capacity of the server by opening a network stream to them in VLC, and once any problems are corrected, your IP set-top box will play them using its in-built API.
6. Creating screens and menus
               Menus for the TV screen are created in HTML, CSS and Javascript, just as normal web pages are, using the same standard tools.The software on the device is an ordinary web browser like IE, Firefox, Opera or Safari, and overlays the web pages you create on the screen through the scart cable (OSD).
When the IP set-top box starts up and gains an IP address via DHCP, it will also request a “starting” URL of a web page from a web server, in the same way a PC web browser (e.g. IE, Firefox) will request a default home page.
              Producing screens for IPTV is almost the same as building an intranet site, with the only difference being that the HTML and Javascript contains set-top box-specific code that only the set-top box understands and executes.Each set-top box's hardware is different, so there is a different Javascript API for each device model that must be obtained from the manufacturer. Video can be displayed and scaled as any kind of image on the page, and manipulated by normal Javascript functions. The set-IP will not come with any software applications pre-installed (or even commands on the remote to go back or refresh the screen), so the very first application you need to create is an electronic programme guide (EPG) to navigate around your service and watch video streams.
               When mocking up screens in Photoshop, it is important to know that a standard definition PAL TV screen is 720 pixels wide by 576 pixels wide, before the so-called “safe area” is taken into account. Colour is considerably more primitive and much more sensitive to variance than on a desktop browser. The only input device available is a remote control with key codes similar to a desktop keyboard.
Using HTML for menu and screen displays means content can be dynamically generated using a server-side process just like any web page. The TV screen displays whatever you send it, meaning you can integrate any type of web-based system into your new IPTV network such as the Asterisk VoIP PBX, the Jabber IM server, multiplayer game servers, your own web application or an external XML API.
7. Publish
              The production procedure is exactly the same as it is for a website, only with TV-specific functionality and usability issues.

That's all. Once you have your network set up, its up to you to get creating menus and screens, and adding video content onto your video server that can be played back through the TV.



0 comments:

Twitter Delicious Facebook Digg Stumbleupon Favorites More