Saturday, 4 November 2017

Supporting Behold TV devices in DVBStreamExplorer

Work is in progress to support Behold TV devices in DVBStreamExplorer.  These devices seem interesting offering features not found in most other BDA compatible devices. Unfortunately Behold TV devices don't work with DVBStreamExplorer out of the box. Interaction with proprietary API is required. This is the work currently in progress.
At this point it should be possible to tune on a MUX manually. And then invoke DVB PSI/SI scanning -> Current MUX.
Still pending are the features involving unattended tuning of multiple frequencies.
This includes features such as DVB-T/C MUX finder to create list of MUXes.
It also includes multiple DVB PSI/SI scanning -> DVB-C/T MUX scanning. This feature itself depends on list of MUXes.

You can download Behold TV versions from here if you want to give it a try and
Some Behold TV devices support multiple antenna inputs. Make sure to select the correct one where applicable.

After launching DVBStreamExplorer the first time open Source -> settings.
Set 'Tuning lock delay' value to 1000 (ms).
If your Behold TV device supports multiple antenna inputs select the applicable one here.

Please provide feedback how it's working out for you. Either as comment to this post or mail to

Friday, 5 May 2017

Exporting EIT XML from unattended SI scanning

The option to export EIT (event information table) data to XML from DVB TS Monitor has existed in DVBStreamExplorer for some time.
In DVBStreamExplorer V4.2.0 a new feature has been introduced that allows for a similar export from unattended SI scan.

To enable EIT export follow steps below.

In Options / preferences SI scan tab enable 'Auto export EIT to XML' and specify an existing folder where XML files will be saved.

In SI tables configuration enable the four EIT options.
Note that enabling these will very likely extend total scan time substantially. Up to 30 seconds can be spent scanning for EIT on each MUX.

Invoke multible DVB MUX scan of your choice (satellite, cable, terrestrial).
Once scanning is complete you should find the specified folder populated with XML files containing EIT info.A GUID string will be used for naming each file.
Example of EIT XML file below.

The XML root node has onid (original_network_id), nid (network_id) and tsid (transport_stream_id) attributes referring to the MUX where EIT data was acquired. It also contain timestamp attribute specifying time in UTC when MUX was scanned.
Each child node of root contains data for one event. It contains EIT section key data as attributes. It also contain data from short event and extended event descriptors. That would be the text that i.e. an STB would show in EPG.  

Note that you will likely not get all available EIT information from each MUX.  This is because each MUX will only be scanned for a maximum of 30 seconds which is usually not enough time. If you need more EIT data you should use EIT export feature in DVB TS Monitor.
Also if you scan MUX'es from the same network you will likely get duplicate EIT information.
On the other hand if you are scanning MUX'es from multiple networks (i.e. satellite) you should be able to collect a substantial amount of EIT data in just one scan session.

You can view the exported EIT XML files in DVBStreamExplorer Service View. More information here.
Or you can write your own software that make use of the XML files.

Sunday, 5 February 2017

DVB TS Monitor ECM stream list.


DVB TS Monitor in latest DVBStreamExplorer (v4.0.25) now includes a list of all ECM streams found in TS.

This has been added as a convenience to have all ECM streams in TS listed in one place. Each ECM stream item includes basic information such as CA_system_ID and PID. It also includes information about which program(s) referenced the ECM stream.
Without this list one would have to walk through each service and its elementary streams to get information about ECM stream usage.

Set tuner from DVB TS Monitor

Another new feature is the option to set tuner directly from TS Monitor. No more switching back to main window, set tuner and then open TS Monitor again.
Even better, for certain relevant tree items in TS Monitor it's now possible to right-click on item to show a popup menu from where tuner dialog can be opened. Tuner dialog will be preset with parameters relevant in the context of selected item.
This should make it more convenient to quickly switch to a TS of interest. 
Currently context menu can be activated from following tree items:
  • Other MUX Services items.
  • Other MUX Network items.
  • EIT service items under Present/Following and Schedule.
Note that for all tuner operations TS Monitor scanning must be in stopped state.

Sunday, 21 August 2016

DVBStreamExplorer Community Preview

A DVBStreamExplorer Community Preview including Python integration has been made public available. This is in a very early stage but will allow you to try out Python integration feature now.

At this point only x64 is available. You need a valid DVBStreamExplorer license or you can try it out for time limited period. You also need to have Python 3 x64 version installed.
Download from here:

This version is almost identical to the recent DVBSE 4.0.21 except for the Python integration.
To integrate Python launch DVBStreamExplorer. Open options / preferences. You should notice a new tab 'Python integration'.

Here you can enable Python integration. You can open the the folder where user Python scripts should be stored. The folder path is fixed and cannot be changed.

Currently only Multiple DVB MUX scanning (S/C/T) integrates Python.

Download following script and use it as a starting point, This basically just defines simple stubs for the methods that will be invoked by DVBStreamExplorer.
The print statements do not have any effect when invoked from DVBStreamExplorer since these is no active console for output. They were used when invoking script from a small Python test application. Each method increments a member variable, This is just to demonstrate that state is kept in between calls.
Now you can modify the sample script for your own need. The general rule is if you want DVBStreamExplorer to continue it's current task return 0. If you want DVBStreamExplorer to abort it's current task return 1. In the sample script this is demonstrated for DVB-S scanning that will skip scanning for vertical transponders.

This is work in progress and likely to change before final release. It is strongly recommended not to make any custom solution for production usage. Things can break in furure preview and final releases.

Feel free to provide feedback, either as comment to post or directly to