Ich suche eine Formatbeschreibung (Enigma services) in dieser Art.
Das hier was ich gefunden habe ist etwas alt.
Idee wo ich sowas finden kann?
Danke an alle!
Formatbeschreibung: Enigma services
Dateien
Datei Inhalt
/var/tuxbox/config/enigma/services Transponderliste und Services mit Providern
/var/tuxbox/config/enigma/bouquets Bouquets mit Serviceverknüpfungen
/var/tuxbox/config/enigma/favourite.n.epl Favoriten für TV (n=0), Radio (n=1) und Dateien (n=2)
Erklärung der Bezeichnungen
Kürzel Beschreibung Anmerkungen
TSID Transponder Stream ID 4-Stelliger HEX-Wert
ONID Original Network Identifier 4-Stelliger HEX-Wert
PType Provider Type s = Satellit, c = Kabelnetz
Freq Frequency Dezimalwert in Hz
SymRate Symbol Rate Dezimalwert
Polar Polarisation 0 = horizontal ,1 = vertikal
FEC Forward Error Correction 2=2/3, 3=3/4, 4=4/5, 5=5/6
SatPos Orbitalposition des Satelliten Dezimalwert in Grad*10, z.B. bei Astra 19,2E: 192
inv Inversion ???
mod Modulation ??? nur bei Kabel-Providern
SID Service ID 4-Stelliger HEX-Wert
SType Service Type Dezimalwert: 1=TV, 2=Radio, 4=NVod, andere=Daten
SNr Service Number Programmplatz in der Serviceliste (ab 200)
Servicename Name des Services wird als UTF-8 String gespeichert
Enthält einen Lang- und einen Kurznamen.
Der Kurzname wird aus Teilen des Langnamens gebildet.
Diese Teile sind durch 0xC2,0x86 und 0xC2,0x87 eingeklammert.
Ich verwende zur einfacheren Beschreibung die Zeichen { und }.
Beispiele:
{P}remiere{ Serie} ergibt Premiere Serie und P Serie
{STUDIO U}NIVERSAL ergibt Studio Universal und Studio U
SFlags Flags (optional) Dezimalwert (Bitfeld, Werte können addiert werden)
1 = NameFixed (Der Servicename wird nicht mehr dynamisch an den aktuellen DVB-Stream angepasst)
2 = Hide (Versteckter Sender, sowas wie Löschen)
3 = NoDVB (ServicePIDs werden aus dem Cache genommen anstatt aus aktuellem Stream)
SPidCache PID Caches (optional) 2-Stellig Dezimal (CacheID) + 4-Stellig HEX (PID)
Cache IDs können sein:
00=Video, 01=Audio, 02=Teletext, 03=PCR, 04=AC3
Beispiel für Audio-PID 0c3f: 020c3f
Provider Anbietername des Services wird als UTF-8 String gespeichert
die Datei 'services'
enthält die Transponderliste und die Serviceliste
Beschreibung Beispieldaten
Dateikennung
Beginn der Transponderliste
TSID:ONID 2
PType Freq:SymRate:Polar:FEC:SatPos:inv
/
TSID:ONID 2
PType Freq:SymRate:Polar:FEC:SatPos:inv
/
TSID:ONID 2
PType Freq:SymRate:inv:mod
/
Ende der Transponderliste
Beginn der Serviceliste
SID:TSID:ONID:SType:SNr
Servicename
[f:SFlags,][c:SPidCache,]p:Provider
SID:TSID:ONID:SType:Nr
Servicename
[f:SFlags,][c:SPidCache,]p:Provider
SID:TSID:ONID:SType:Nr
Servicename
[f:SFlags,][c:SPidCache,]p:Provider
SID:TSID:ONID:SType:Nr
Servicename
[f:SFlags,][c:SPidCache,]p:Provider
Ende der Serviceliste
Ende der Datei eDVB services /1/
transponders
0001:0085 2
s 12070500:27500000:0:3:192:0
/
0002:0085 2
s 11797500:27500000:0:3:192:0
/
2713:F001 2
c 442000:6900000:0:6
/
end
services
0024:0001:0085:1:444
†STUDIO U‡NIVERSAL
p:PREMIERE
000d:0001:0085:1:790
PLANET
f:0,c:0006ff,c:010700,c:0306ff,p:PREMIERE
0096:0002:0085:2:220
HITLISTE
p:PREMIERE
6D67:0437:0001:1:212
3sat
f:4,c:0000D2,c:0100DC,c:0200E6,c:0300D2,p:ZDFvision
end
Have a lot of fun!
die Datei 'bouquets'
enthält die Bouquets mit Serviceverweisen
Beschreibung Beispieldaten
Dateikennung
Beginn der Bouquetliste
Bouquet-Nr
Bouquet-Name
SID:TSID:ONID:SType
SID:TSID:ONID:SType
/
Bouquet-Nr
Bouquet-Name
SID:TSID:ONID:SType
SID:TSID:ONID:SType
/
Ende der Bouquetliste
Ende der Datei eDVB bouquets - do not modify...
bouquets
1
BOUQUET1
0024:0001:0085:1
000d:0001:0085:1
/
2
BOUQUET2
0096:0002:0085:2
6D67:0437:0001:1
/
end
Have some fun!
die Datei(en) 'favourite.n.epl'
enthält die Favoritenlisten(0.epl=TV, 1.epl=Radio, 2.epl=Files)
Beschreibung Beispieldaten
Favoriten-Name
Je Eintrag eine #SERVICE: Zeile
FavoritenTyp: (1=DBV-Service, 2=File)
Flags: (Erklärung siehe unten)
SType:SID:TSID:ONID:
als Besonderheit werden in diesen Dateien
keine führenden Nullen den einzelnen
Werten vorangestellt! #NAME Favourites (TV)
#SERVICE: 1:0:1:24:1:85:
#SERVICE: 1:0:1:d:1:85:
#SERVICE: 1:0:1:6D67:437:1:
#NAME Favourites (Radio)
#SERVICE: 1:0:2:96:2:85:
Erläuterungen zu den Flags
Das Feld 'Flags' ist ein Integer-Wert, der aus einzelnen Bits besteht.
1.Bit(01): Es handelt sich um ein Verzeichnis
2.Bit(02): In das Verzeichnis muss man reinwechseln
3.Bit(04): Man kann in das Verzeichnis reinwechseln
(die Bits 1-3 machen eigentlich nur zusammen Sinn)
4.Bit(08): der Inhalt des Verzeichnisses soll automatisch sortiert werden
5.Bit(16): der Service hat (enigma-intern) einen sortier-Schlüssel.
wenn nicht gesetzt, wird alphabetisch sortiert.
here's a good link:
http://home.t-online.de/home/a…igma-services_format.html
please note the additional changes:
right now as a quick info:
what changed on 2003/02/10:
- each transponder field in "services" has an additional field
example:
old:
03f0:0001 2
new:
00c00000:03f0:0001
the '2' (the "state") was removed.
- each service has an additional field:
old:
07df:0449:0035:1:1511
new:
07df:00c00000:0449:0035:1:1511
- favorite-entries now have 8 fields instead of 4. fyi, the 5th in dvb-services are the new "namespace"-field.
the new field specifies the "namespace" of the service. Look into BuggyDVB for further explaination (in german, sorry.) if you don't want to do something special with it, just leave it "as it". it forms together with onid+tsid an REALLY unique id of the transponder.
version ist now /2/.
bouquets changed, too.
OK, auf deutsch: (sorry)
ZUM MITDISKUTIEREN. edit button ist unten. einfach gedanken dazuschreiben oder fehler fixen. danke.
leider ist die ONID nicht so eindeutig, wie man sich das wünscht.
kurz:
es kann mehrere transponder mit der gleichen ONID/TSID und SIDs geben. beispiel: ex-kopernikus. dort sind pw transponder zu finden. sinnvollerweise gibts dort die gleichen IDs. der inhalt ist ja auch "derselbe". und die ORIGINATING network id (also die ONID) gibt ja an aus welchem NETZWERK der service kommt. und das ist nunmal 0085. onid+sid spezifiziert auch hier eindeutig einen service. nur onid+tsid halt nicht eindeutig einen transponder. das interessiert den benutzer allerdings nicht.
nun könnte man zu die transponder unique machen, in dem man "spezielle" TSIDs einführt. dann allerdings hat man probleme, wenn man mal eine onid+tsid+sid (wobei die tsid hier rein informativ ist. ONID+SID ist weiterhin unique, die TSID spielt da keine rolle. allerdings will man nicht alle SDTs durchsuchen müssen um zu ermitteln auf welchen transponder man muss.) kombination bekommt (sei es durch NVOD oder Linkage oder MHP). dann muss man die eigene tsid ermitteln, ohne hinweise WELCHE man meint. hier müsste dann die "heuristik" kommen (die zwar unvermeidbar ist, aber möglichst reduziert werden sollte).
heuristik: hiermit meine ich eine logik die ermittelt, was alles nun WIRKLICH ein unique-netzwerk ist.
anders betrachtet: man geht davon aus, dass netzwerke in sich(!, und damit meine ich die NIDs, nicht die ONIDs - anders: 0085 auf astra für sich allein betrachtet, 0085 auf ex-kopernikus für sich alleine, ...) erstmal funktionieren. NVOD, Linkage etc. führt nie dazu, dass ein gewisser "Bereich" verlassen wird.
--> man führt "Namespaces" ein, in denen alles "funktioniert". Astra 19.2 wäre komplett ein namespace. Hierdrin geht alles gut. auf der anderen seite ist ex-kopernikus ein eigener namespace. ein 0085er hierdrin ist für sich alleine und stört das astra-0085 nicht.
erstmaleinmal ist also jedes satellitensystem ein "namespace". der namespace+onid+sid bzw. namespace+onid+tsid ist dann WIRKLICH unique. Ein Linkage/NVOD/... in einem namespace kann NICHT auf einen anderen referenzieren. Also sollten die namespaces so groß wie möglich gehalten werden. Im Idealfall die ganze Welt, da dies alleine schon bei 0085 nicht klappt sollte man es auf einen satellitensystem eingrenzen.
nun: auf hotbird gibts einige, auf anderen satelliten viele problemzonen. Beispiel wären zich netzwerke die aller der überzeugung sind, sie hätten services aus der ONID 0001. das ist natürlich klar gelogen, denn 0001:0001 gibt es nicht. 0001 ist astra, und dort gibts keinen service 0001. also verfrachtet man diese netzwerke in namespaces. hier greift die heuristik:
heuristik (verfeinert): alles mit onid != 0000, 0001, ffff (etc., also alles was valid klingt..) kriegt pro orbital_position einen namespace. damit ist mosaik (wenns das denn mal nach dvb norm gibt) möglich (NVOD und Linkage gibts momentan ja eh nur in einem netzwerk), und alle andere kriegt pro transponder einen namespace.
die namespace-id ist im grund egal, muss nur unique sein. dem channeleditor ist es überlassen, diese festzulegen, ebenso die einteilung in namespaces allgemein. bei nvod etc. wird halt die namespace id vom ursprungsservice übernommen.
enigma machts folgendermaßen:
namespace_id=orbital_position<<16;
if (!onid_is_valid)
namespace_id|=hash(frequenz);
damit man einfach nach allen services auf einer orbital_position suchen kann sollte das mit der orbital_position<<16 beibehalten werden.
das SettingsFormat ändert sich entsprechend dass es vor der tsid noch die namespace id gibt. im normalfall muss man die einfach mitführen. in Servicereferenzen gibts nun 8 felder. why not.