There are several approaches allowing to use Dune HD STB as a simple IPTV
channel zapper w/o the need to use a complicated server-side middleware.
These approaches are described below.
Related documentation:
http://files.dune-hd.com/sdk/doc/html/dune_media_playback_howto.html
http://files.dune-hd.com/sdk/doc/html/media_url.html
Installing IPTV channels from M3U file
In this approach, you put URLs of your IPTV channels into a simple M3U
playlist file and install this file into the flash memory of the STB.
Additionally you can configure the STB to automatically launch this
playlist on STB boot. Details are below.
NOTE: This requires Dune firmware version *_b5 or higher.
Put the URLs of all IPTV channels into a standard M3U text file (one URL
per line). The file should have ".M3U" extension.
Copy the M3U file into the flash memory of Dune:
- Put the M3U file on to a USB flash drive (or any other suitable
media that can be connected to Dune).
- Boot into native Dune UI.
- Attach the USB flash drive with the M3U file.
- Choose the M3U file in Dune's file browser.
- Press "POP UP MENU" RC button, choose "Add to Favorites".
- Optionally: in the appeared dialog, edit the name of the item that
will be added to Favorites menu.
- Choose "Add Copy".
After that, the playlist will be copied in the flash memory of the STB and
will become available via the created item in the "Favorites" menu. Select
this item and press "ENTER" RC button to start the playback.
Hint: You can also select this item and press "0" RC button to see the list
the of URLs in the playlist directly in Dune file's browser.
During playback, use the following RC buttons to switch between URLs in the
playlist:
- "NEXT": switch to the next URL.
- "PREV": switch to the previous URL.
- "ENTER": show OSD with the list of URLs.
- "STOP": stop the playback and return to the main menu.
You can also configure Dune to automatically launch the installed playlist
on STB boot:
- Choose the installed playlist in the "Favorites" menu.
- Press "POP UP MENU" RC button, choose "Launch on Power-on".
After that, when STB boots, it will automatically launch this playlist
(just as if it was launched manually from the "Favorites" menu).
Creating a TV plugin
In this approach, you create so called "PHP plugin" which is installed into
the flash memory of the STB and provides the simple IPTV channel navigation
and switching functionality.
More information about PHP plugins is available here:
http://files.dune-hd.com/sdk/doc/html/plugins.html
The list of IPTV channels could be hard-coded into the plugin, or the
plugin can be configured to download the list of IPTV channels from an HTTP
URL. The provided UI is the standard "TV" UI of Dune HD STB, there are
limited possibilities to customize it and add additional features (although
there are some possibilities for this).
Qualification required: you should be able to pack/unpack ZIP files and
edit text files in XML and PHP formats. Understanding of XML, PHP and HTTP
is desired.
The easiest way to create such a plugin is to use an existing demo/template
plugin and modify it as needed. See here:
http://files.dune-hd.com/sdk/doc/html/plugins.html
=> "dune_plugin_demo2" plugin
This "demo2" plugin provides the following possibilities:
- You can configure the plugin to download the list of IPTV channels (in
an extended format or in a simple M3U format) from the given HTTP URL.
- You can also hard-code the M3U file containing the list of IPTV
channel URLs directly into the plugin.
- Additionally, the plugin supports retrieval of EPG information from
the server (if you need it).
- Additionally, the plugins supports simple VOD functionality (if you
need it).
More details about how "demo2" plugin can be customized and used:
- Download the ZIP file with the plugin.
- Create a folder named "dune_plugin_demo2".
- Extra the ZIP file into this folder.
- Edit the "demo_config.php" file as needed, e.g. alter the following
configuration parameters:
- USE_M3U_FILE
- *_URL
- *_SUPPORTED
- Edit the "dune_plugin.xml" file as needed, e.g.:
- Alter the value of "media_url" element depending on whether you
want to use M3U.
- Remove VOD and Setup entry points if you do not need them.
- Put the modified content of the folder back into dune_plugin*.zip
file.
- Install the plugin into Dune as described in the PHP Plugins SDK
documentation (put the ZIP file onto a USB flash drive, choose the ZIP
file in Dune's file browser, press "ENTER" Rc button. An item to
launch the plugin will appear in the "TV" menu (or in the menu you
configured).
Creating an HTML application
In this approach, you create an HTML application (using HTML and JavaScript
languages) which is installed into the flash memory of the STB and provides
the simple IPTV channel navigation and switching functionality.
The list of IPTV channels could be hard-coded into such an application, or
application can be designed to download the list of IPTV channels from an
HTTP URL. The HTML application can be designed to completely reside
(including all graphic resources etc) in the flash memory of the STB w/o
the need to host any web application on the server-side (unless you need to
add have functionality on the server-side). This is the most flexible
approach, any functionality and any UI can be potentially implemented.
More information about SDK for creating HTML applications is available
here:
http://files.dune-hd.com/sdk/doc/html/sdk.html
"JS STB SDK"
Qualification required: you should be able to create HTML applications from
the scratch. Knowledge of HTML, JavaScript, CSS (and most probably AJAX,
HTTP, XML, JSON) is required. An experience in designing and optimizing
HTML+JS applications for embedded devices and TV screens is desired.
HTML application example
A simple example of HTML application providing simple IPTV channel
navigation and switching functionality is available here:
http://files.dune-hd.com/sdk/plugins/dune_plugin_iptv_demo.2013_09_03.zip
Features of this HTML application:
- The list of IPTV channels can be hard-coded in the application (by
default, the application uses a hard-coded list for the demo
purposes), or loaded from an HTTP URL.
- Simple EPG display is optionally supported.
- RC buttons:
- UP, DOWN, P+, P-: Switch channels.
- ENTER: Show an OSD listing all channels (and EPG, if enabled).