Professional Documents
Culture Documents
IPTV networks are basically intranets, only the web browser isn’t on a
PC, it is on a set-top box. If you’ve set up an intranet or public
website, you can set up your own IPTV network and do what you want
with it. You don’t need massive and expensive servers, specialised
set-top boxes or overly large development teams working with
complex software. With the right hardware and software, it should
take you less than a few hours.
A TV
An IP set-top box
A multicast-capable router
A web server
A video server
2 x PLC Adaptors
Sample video material
In this guide, we’re going to be cheap and cheerful, using free open
source software (FOSS) where we can. We’ll also be adhering to
open standards wherever possible. Our HTML screens and menus
will be housed on an Apache web server running PHP, Perl, Python &
MySQL, and our video will be encoded in MPEG-4 H.264 AVC,
packaged in a simple MPEG-2 transport stream. We’ll stream out our
video with VLC and Helix Server.
Naturally you can exchange any of those for something else that does
the same thing, for example, WM9/IIS/.Net/SQL Server instead of
MPEG-4/Apache/PHP/MySQL.
There are a lot of OEM vendors of IP set-top boxes to choose from all
across the world. Some examples include Complete Media Systems,
Amino, Kreatel (now Motorola), Vidanti, Tilgin (formely i3 Micro), ADB
Global and Netgem. Most are open to the idea of directly selling 1-10
units at a time, although in many instances it is better to go through a
central distributor like Garland Partners. The cost varies, but you
should be paying in the range of £100-250 GBP for each set-top box,
including a remote control and/or keyboard.
In this guide, we will be using the CMS 1080 (from Complete Media
Systems), running Ant Galio 2.0. The box itself supports video
delivered in H.264 AVC or Windows Media. We will be using the
former.
If you’re running all the screens and video from one server (for
example, a portable laptop demo), you can even just use a simple
crossover cable. Don’t try and run video over a wireless connection,
no matter how good the reception is. HTML screens and menus will
work fine, but processor-hungry compressed video is another story.
Your video material will need to be pre-encoded in the same way the
live multicast video is. Software encoders from vendors like Elecard,
MainConcept Cyberlink and Nero will easily compress video from
most formats (MPG, AVI, MOV etc) into MPEG 4 H.264 AVC, but they
will additionally need to be encapsulated in an MPEG-2 transport
stream for delivery over the network. The free open-source Media
Coder program produces excellent results.
The main choices for serving video on-demand over our IPTV network
are the open-source Helix Server and Darwin Streaming Server, both
of which come in Windows flavour, but can also run on Linux. We also
have a trial of the Elecard RTSP server that can also be run on either
OS. If your own network is set up to use Windows Media, you can
happily and easily unicast and/or multicast video from a Windows
Server PC running the free Windows Media Server.
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.
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 (e.g. for tuning into multicast streams
or issuing RTSP commands).
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. Showtime!
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. The production procedure is
exactly the same as it is for a website, only with TV-specific
functionality and usability issues. Over a few days or weeks, you
suddenly have an entire TV network to yourself that you can do
anything to, just as when you have your own website that you can do
anything with.
Once you’re happy with what you’ve put together, its time to sit down
the boss, colleague, wife, girlfriend, boyfriend or fellow interested nerd
and beam with pride as you press buttons on that remote and surf
around.
If you would like more information, call Alex on 07986 37317, email
iptvworkshop@digitaltx.tv or visit www.iptvworkshop.co.uk. Readers
who quote this publication as their source will receive a 10% discount
on the course fees.
http://www.iptvworkshop.co.uk