Superb quality and spec AB-Com PULSe 4K SE. Crazy offer! Only £99! FREE UK DELIVERY! 4K UHD, Enigma 2, Multiboot 4 images & more!...
Superb quality and spec AB-Com PULSe 4K Rev II Twin Satellite tuner only £149! FREE UK DELIVERY! 4K UHD, Enigma 2, SATA HDD facility, Multiboot 4 images & more!...

Where can I find information about EPG related details?

birdman

Moderator
Joined
Sep 7, 2014
Messages
8,593
Reaction score
117
Points
63
Location
Hitchin, UK
One thing that seems to be missing for OpenVIX/Enigma2 is documentation on how to configure things when various plugins don't do what you need.
Perhaps I'm just looking in the wrong place, so does anyone know any documentation/hints on this lot:


  1. How to configure the XMLTV download so that it will work for UK Freeview.
    Where are the config files, and how can you program it do get the data you want, and associate it with the relevant channels?
  2. What is the format of the epg.dat file?
  3. Given that the actual EPG data is apparently stored in memory, how can you update the running enigma2 process with additional EPG data?
    Is there an API somewhere to do this?
  4. Is there any documentation of the format of bouquet files?
    Is there any significance to the filenames (beyond, presumably, bouquets.radio and bouquets.tv)?
    What options are there to "ORDER BY" other than "bouquet"?
    Is there any significance to the 10 :-separated numbers in a #SERVICE line?
  5. Is the format of the lamedb file documented anywhere?
    And what significance do the options which eventually may end up on the p: lines have?
 
Unfortunately, from the very beginning there has never been any real documentation to accompany Enigma 2, every one, our selves included pretty much just picked things up as they went on, which is why it's so damned difficult to find any concrete information for most things related to Enigma 2.

The closest your going to get to documentation at this moment in time is the ViX Manual in our download section at www.openvix.co.uk
 
How to configure the XMLTV download so that it will work for UK Freeview.
Why using a web based server for epg data? Its available on the stream.

Enigma2 just "absorbs" the data when on a channel that has the EPG data. Freeview is like freesat in this regard. So in essence all you have to do is be on a chanenl for a while and the data will be downloaded. HAve a look ath thsi post regrading epg refresh plugin. http://www.world-of-satellite.com/s...off-the-stream&p=311199&viewfull=1#post311199 You obviously dont have to enable the Virgin EPG, trest of process is the same.


Where are the config files, and how can you program it do get the data you want, and associate it with the relevant channels?
Not applicable for Freeview/Freesat/Virgin and several other providers abroad. Answered in part above

And what significance do the options which eventually may end up on the p: lines have?
P: = provider, Arqiva, BBC, etc. No harm if blank.
 
The closest your going to get to documentation at this moment in time is the ViX Manual in our download section at www.openvix.co.uk
Thanks. I've read that, but it's (unsurprisingly) geared towards satellite setups, and tells you how to use what is provided rather than how to change/extend this when you need something else similar, but different.

Why using a web based server for epg data? Its available on the stream.
It is, and that's working fine. But XMLTV (and/or similar feeds) provides 14-day data, and more detailed info as well. So it would be nice if I could set this up as I have it on my old (SD) PVR.

And what significance do the options which eventually may end up on the p: lines have?
P: = provider, Arqiva, BBC, etc. No harm if blank.
There are others which crop up, such as:
Code:
p:,c:000065,c:030065,c:050001,c:120066

p:,f:40
 
Why not submit the xmltv details you use and they could be included?
On my old PVR I don't actually use xmltv directly - just the data they have, so I don't know any configuration details for it.
If I knew (==had some hints) how to configure xmltv on OpenVIX/Enigma2 then I could set about working out was is needed.
 
[*]Is there any documentation of the format of bouquet files?
Is there any significance to the filenames (beyond, presumably, bouquets.radio and bouquets.tv)?
What options are there to "ORDER BY" other than "bouquet"?
Is there any significance to the 10 :-separated numbers in a #SERVICE line?
[*]Is the format of the lamedb file documented anywhere?
And what significance do the options which eventually may end up on the p: lines have?
[/LIST]
About lamedb. This is what I found somewhere on the big internet:
Code:
Lamedb format explained
Lamedb format
File format of lamedb explained.
Taken from /lib/dvb/db.cpp and Tools/Transponder.py.
File is basically a fixed format file where some fields contain multiple values separated by commas of colons. Lines may not exceed 256 characters.
It contains two sections.

Transponders started by a line transponders. Contains transponder frequencies, symbol rates, polarization and satellite position.
Services started by a line services. Contains SSID, Card ID for channels on a particular transponder.

Header Line
The file starts with a line eDVB services /%d/, where %d is format version.
eDVB services /4/
Transponders section
Section starts with a line transponders.
Followed by a DVB line and transponder data line tuples. The DVB data line starts at col 0, the transponder data line immediatly follows and starts with a <TAB>.
Lines starting at col0 contains three fields encoded in hexadecimal:
DVB namespace
Transport stream id
Original network id

Lines starting with a <TAB> character and contain DVB transponder data such as frequency and symbol rate. Three types of DVB transponders can be encoded here:

Satellite DVB
Terestrial DVB
Cable DVB
Satellite lines start with <TAB>s like: s 10773250:22000000:0:2:192:2:0:1:2:0:2 fields for version 3 and 4. All fields are separated by colons, values in decimal.

Frequency in Hertz.
Symbol rate in bits per second.
Polarization: 0=Horizontal, 1=Vertical, 2=Circular Left, 3=Circular right.
Forward Error Control (FEC): 0=None , 1=Auto, 2=1/2, 3=2/3, 4=3/4 5=5/6, 6=7/8, 7=3/5, 8=4/5, 9=8/9, 10=9/10.
Orbital Position: in degrees East: 130 is 13.0E, 192 is 19.2E. Negative values are West -123 is 12.3West.
Inversion: 0=Auto, 1=On, 2=Off
Flags (Only in version 4): Field is absent in version 3.
System: 0=DVB-S 1=DVB-S2.
Modulation: 0=Auto, 1=QPSK, 2=QAM16, 3=8PSK.
Rolloff (Only used in DVB-S2): 0=0.35, 1=0.25, 3=0.20
Pilot (Only used in DVB-S2): 0=Auto, 1=Off, 1=On.

Terrestrial lines start with <TAB>t:

values found in frontendparms.h (github openvix)
/* WARNING: do not change the order of these values, they are used to parse lamedb and terrestrial.xml FEC fields.
The values are NOT the same as those in eDVBFrontendParametersSatellite/eDVBFrontendParametersCable
(and it's too late to fix this now, we would break backward compatibility)
*/
frequency in Hertz.													*--
Bandwidth: 0=Auto, 1=8Mhz, 2=7Mhz, 3=6Mhz.							*Bandwidth_8MHz, Bandwidth_7MHz, Bandwidth_6MHz, Bandwidth_Auto, Bandwidth_5MHz, Bandwidth_1_712MHz, Bandwidth_10MHz
Code rate High Pass FEC: 0=Auto, 1=1/2, 2=2/3, 3=3/4, 4=5/6, 5=7/8.	*FEC_1_2=0, FEC_2_3=1, FEC_3_4=2, FEC_5_6=3, FEC_7_8=4, FEC_Auto=5, FEC_6_7=6, FEC_8_9=7
Code rate Low Pass FEC: 0=Auto, 1=1/2, 2=2/3, 3=3/4, 4=5/6, 5=7/8.	*FEC_1_2=0, FEC_2_3=1, FEC_3_4=2, FEC_5_6=3, FEC_7_8=4, FEC_Auto=5, FEC_6_7=6, FEC_8_9=7
Modulation: 0=Auto, 1=QPSK, 2=QAM16, 3=QAM64.						*Modulation_QPSK, Modulation_QAM16, Modulation_QAM64, Modulation_Auto, Modulation_QAM256
Transmission mode: 0=Auto, 1=2k, 3=8k								*TransmissionMode_2k, TransmissionMode_8k, TransmissionMode_Auto, TransmissionMode_4k, TransmissionMode_1k, TransmissionMode_16k, TransmissionMode_32k
Guard Interval: 0=Auto, 1=1/32, 2=1/16, 3=1/8, 4=1/4				*GuardInterval_1_32, GuardInterval_1_16, GuardInterval_1_8, GuardInterval_1_4, GuardInterval_Auto, GuardInterval_1_128, GuardInterval_19_128, GuardInterval_19_256
Hierarchy: 0=Auto, 1=None, 2=1, 3=2, 4=4							*Hierarchy_None, Hierarchy_1, Hierarchy_2, Hierarchy_4, Hierarchy_Auto
Inversion: 0=Auto, 1=On, 2=Off.										*Inversion_Off, Inversion_On, Inversion_Unknown
Flags: (dp.cpp :always 0?)
system:(dp.cpp :int system = eDVBFrontendParametersTerrestrial::System_DVB_T =0? DVB_T2 =1?)
plpid: (dp.cpp :always 0?)

Cable lines start with <TAB>c:

Frequency in Hertz.
Symbol rate.
Inversion: 0=Auto, 1=On, 2=Off.
Modulation: 0=Auto, 1=QAM16, 2=QAM32, 3=QAM64, 4=QAM128, 5=QAM256.
Forward Error Control innert (FEC_inner): 0=None, 1=Auto, 2=1/2, 3=2/3, 4=3/4, 5=5/6, 6=7/8, 7=8/9.
Flags

services section
The section starts with the word services on a line by itself.
Followed by a three line tuple: DVB stream data, Channel name, Provider data line.
The DVB stream data line contains six fields:

Service id (SSID value from stream) in Hex
DVB namespace in Hex.
Transport stream id in Hex
Original network id in Hex
Service type in Decimal: 1=TV, 2=Radio
Service number in Decimal.

The Channel name is on a line by itself in some character encoding (to be investigated)
The last line contains Provider Service data. Variable number of fields, separated by commas. Fields formed like <tag>:value. For example p:Sky Digital,c:000202,c:010282,c:020242,c:030202,c:0500 01,C:0963,C:0961,C:0960.

Provider name field. Field tag p: Name of provider.
Cached data. Field tag c: followed by two decimal digits and four hexadecimal digits. For example c:010282 is composed of 01 decimal cache id, 0282 hexadecimal value to cache.
Card ID (CIAD). Field tag C: follwed by four hexadecimal digits: Card ID. For example C:0100.
Flag data: Field tag f: followed by hexadecimal digits.

Maybe this will help you.
No, there is not a "the Big Enigma2 developers manual".
Most of us are learning from reading others code.
For bouquets I advice to read the code of the plugin "AutoBouquetsMaker" and the scripts of Lraizer.
 
Setting up the XMLTV importer on ViX is pretty straight forward;
1- Set it to a daily import (after 08.00 GMT as only then all data will be up to date, and make sure the time doesn't coincide with Cross if you also use Cross),
2- set the number of days (I never got more the 7 days, so not sure where you got 14 days from) and
3- use the blue button to choose the source-packages.

IMHO it can't go wrong following the screen.
 
About lamedb. This is what I found somewhere on the big internet:
[...cut...]
No, there is not a "the Big Enigma2 developers manual".
Most of us are learning from reading others code.
For bouquets I advice to read the code of the plugin "AutoBouquetsMaker" and the scripts of Lraizer.

Thanks. I was unable to find anything much....

I may write something up based on what I found, if it seems that it might be useful to others.
 
Setting up the XMLTV importer on ViX is pretty straight forward;
[...cut...]
IMHO it can't go wrong following the screen.
Except that the only options for setting it up seem to be Satelllite-based, and I'm using Terrestrial broadcasts.
I've tried "Rytec UK XMLTV", but that produces 0 events.
Which is why I wish to know how it is configured, so I can make UK a Freeview HD config file for it.
 
The originator of the data is Doglover and he lives on
Code:
http://forums.openpli.org/forum/52-en-rytec-xmltv-and-epg-support/
Best is to ask him for support.
First thing you should do is to read his tutorial on
Code:
http://forums.openpli.org/topic/12274-request-for-adding-epg-for-channels/
 
That looks interesting.
I already have a Web server running at home (with 3 mirrors, also all at home - gives the little systems something to do...)

What are you actually trying to do? You seem to be over complicating things for your actual needs?
 
What are you actually trying to do? You seem to be over complicating things for your actual needs?
From the first post:

  1. How to configure the XMLTV download so that it will work for UK Freeview.
    Where are the config files, and how can you program it do get the data you want, and associate it with the relevant channels?
 
But, as has been posted earlier, Freeview data for 7 days is available in the EIT stream automatically. It also has a dynamic element to it, certainly for the BBC and ITV/CH4 channels in that EPG data is updated in real-time to reflect urgent changes to schedules. This is something you wouldn't get from a daily update over the internet. I know you posted that you could get a 14 day EPG from XMLTV, but I think Rob was having issues getting any more than 7 days fromX MLTV.
 
From the first post:

  1. How to configure the XMLTV download so that it will work for UK Freeview.
    Where are the config files, and how can you program it do get the data you want, and associate it with the relevant channels?

As fat-tony points about so, no need for an XMLTV download for UK Freeview, tune to a channel for a minute or 2 & issue sorted. :confused:
 
But, as has been posted earlier, Freeview data for 7 days is available in the EIT stream automatically. It also has a dynamic element to it, certainly for the BBC and ITV/CH4 channels in that EPG data is updated in real-time to reflect urgent changes to schedules. This is something you wouldn't get from a daily update over the internet. I know you posted that you could get a 14 day EPG from XMLTV, but I think Rob was having issues getting any more than 7 days fromX MLTV.
My old PVR actually had a way of combining the Radio Times (XMLTV-derived) data feed (14-days - from http://xmltv.radiotimes.com/xmltv) with that from the EIT stream: dynamically. This meant that I could get the fuller descriptions from XMLTV, but also got dynamic updates from the EIT if programmes overran (live sport, or extended news).

So I'm trying to figure out how to download XMLTV data, and what the format of epg.dat is (look at the first post in the thread).
 
I too was interested in the format of epg.dat, but none of the normal db handling tools seem to be able to parse it. Probably you are going to have to delve into enigma code to work it out - it's not THAT interesting to me such that I would try to work it out from the code.
 
I fail to see the relation with the epg.dat file. That is only a kind of hibernation file: it stores all EPG data from RAM when E2 shuts down, and the same data is laoded into RAM again when E2 starts.

E2 will add all data it gets to the existing data. So if it gets e.g. EIT-data from the transponder this data is in RAM. As soon as other data becomes available, no matter what the source is, it will be added to the data that's already in RAM.
So you should focus on getting data in RAM, not look at epg.dat.

The above mentioned system also has an inherent danger: if the sources have conflicts, you'll end up with multiple entries.
If say source 1 states that show a is from xxx-yyy and source b has either a different name (ab) and/or a (slightly) different time, you'll have 2 entries:
a xxx-yyy and ab xxy-yyz.

And when you provider supports EIT for a week, you can consider yourself a happy man. Why want more?
 

OpenViX Feeds Status

Back
Top