Escolar Documentos
Profissional Documentos
Cultura Documentos
There's a secret many people in the IPTV/VoD industry don't want you to know. Setting
up an IPTV network is actually incredibly easy. In fact, almost anyone can do it. But if
you knew that, you'd build your own and no-one would make any money by selling you
proprietary products with huge mark-ups.
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.
The most popular choice of software is an embedded web browser, which for all intents
and purposes does the same thing as a PC web browser like IE, Firefox, Opera or Safari.
The developer interface tends to be a mark-up language, usually HTML/Javascript. The
main embedded client software programs in use on IP set-top boxes today are
Fresco/Galio (from Ant Plc), Opera, Escape/Evo (from Espial) and Myrio (based on
Espial). You can think of them of little web browser units.
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.
You can use any router or switch at all, as long as it supports multicast. Any £50-200
product from the high street or online retailer will do. Check the side of the packaging or
the manufacturer's documentation to see if the product you choose supports multicast
natively (IGMP etc). Normal 100Mbit Ethernet is fine, although use Gigabit Ethernet if at
all possible.
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.
An IP set-top box is just another network client device. When it is connected to the IP
network, it is assigned an IP address by DHCP just as a desktop PC would be (this can
also be static). If your router doesn't act as a DHCP server, you don't have a network
gateway or are experiencing problems with a crossover cable, simply download and
install a free DHCP server from the internet onto your web server PC.
Your PLC (powerline communication) adaptors create an Ethernet network over existing
electricity cabling, which avoids the need to have wiring everywhere when you can't use
wireless. They generally come in pairs, and cost £100-200 from the high street, your ISP
or online retailers. The first should be plugged into an AC plug near the router, and the
second should be plugged in next to the set-top box. Both then have Ethernet sockets
which you plug normal cat-5 cable into.
You can test if the stream is being correctly outputted by opening the same network
stream with another copy of VLC on another computer on the network. Do this for as
many channels as you require. Once they are broadcasting, the set-top box will be able to
tune into the multicast stream just as VLC does.
The more advanced way to provide live broadcast TV (such as Freeview) over an IP
network is to convert MPEG-2 video received from a DVB receiver (a TV tuner card, for
example those made by Hauppage) into multicast format, which is known as IP
encapsulation. The painful way is to code your own encapsulation program using the
vendor's SDK, and the expensive way is to buy industrial hardware that does it for you
(for example, Exterity, Anevia etc).
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.
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. We will
use a combination of both to stream files ending in .mpg.
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).
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.
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.
Digital TX is now offering a great value one-day workshop course on IPTV and
Video On-Demand (VoD) specifically for web and media professionals. It can
help you get up to speed on the latest technologies, content deals, operators and
applications across the world, and offer immense value in identifying both new
opportunities and threats for your business and personal career.
If you would like more information, call Alex on 07986 37317, email
iptvworkshop@digitaltx.tv or visit www.iptvworkshop.co.uk. Readers who
quote TVON2006 will receive a 10% discount on the course fees.