Userbouquet files

Op verzoek van Romeo_ :slightly_smiling_face:

Ik heb even uitgezocht hoe de bouquet files werken…

Er zijn 3 files die belangrijk zijn :slightly_smiling_face:

userbouquets.epl, userbouquest.*****.tv en services

Deze files worden als volgt opgebouwd:

userbouquets.epl:

NAME-USER-BOUQUETS

SERVICE 4097:7:0:<CODE USERBOUQUET>:0:0:0:0:0:0

TYPE 16385

<locatie van userbouquet.*****.tv

SERVICE 4097:7:0:<CODE USERBOUQUET>:0:0:0:0:0:0

TYPE 16385

<locatie van userbouquet.*****.tv

userbouquet.*****.tv

NAME

SERVICE 1:0:tv/radio(1 of 0):SID:TranspID:NetworkID:Namespace:0:0:0

SERVICE 1:0:tv/radio(1 of 0):SID:TranspID:NetworkID:Namespace:0:0:0

services

SID:namespace:Transportid:networkid:tv/radio:volgnr

NAME

(c:00****,c:01****,c02****,c03****,)p=PROVIDER

c:00 = video id

c:01 = audio id

c:02 = text id

c:03 = onbekend

Hopelijk is deze uitleg nuttig voor mensen die bijv. willen kijken of het mogelijk is om snel (en misschien automatisch) feeds toe te voegen. Ik ga daar zelf binnenkort ook even naar kijken.

patch-request 1

Verander alle aanroepen van system("wget…) de $ipdreambox naar localhost en het zal ook via het internet werken..

NB : alleen die paar die door een system("… beginnen.. die andere kunnen niet/moet anders aangepakt worden…

patch-request 2 : Datum/tijd check

bovenaan bij de $_POST…

…

…

$uur=$_POST[‘uur’]; $minuut=$_POST[‘minuut’];

$dag=$_POST[‘dag’]; $maand=$_POST[‘maand’]; $jaar=$_POST[‘jaar’];

$euur=$_POST[‘euur’]; $eminuut=$_POST[‘eminuut’];

$edag=$_POST[‘edag’]; $emaand=$_POST[‘emaand’]; $ejaar=$_POST[‘ejaar’];

// Romeo_

$tbegin = mktime ( $uur, $minuut, 0, $maand, $dag, $jaar );

$teinde = mktime ($euur, $eminuut, 0, $emaand, $edag, $ejaar);

…

…

…

$datumok = ($datumcheck==“y” && ($teinde > $tbegin)) ? “1” : “0”;

$datumok = ($datumcheck!=“y”) ? “1” : $datumok;

if ($datumok==“1”)

…

…

…

$lengte=$teinde-$tbegin;

if ($lengte>0)

…

…

Even een uitbreiding op het eerste bericht:

Boven aan in de service files staan transponders genoemd.

Deze worden alsvolgt weergegeven

transponders

<namespace>:<transport-id>:<netwerk-id>

s <frequentie>:<SR>:<hori of vert=0 of 1>:<FEC>:<positie sat>:<LNB>

/

<namespace>:<transport-id>:<netwerk-id>

s <frequentie>:<SR>:<hori of vert=0 of 1>:<FEC>:<positie sat>:<LNB>

/

end

Daarna komen de services zoals boven aangegeven

Ik heb er even naar gekeken, maar loop tegen het volgende probleem aan.

Als je een zender toe wil voegen moet je ook een service ID en een namespace invullen.

Weet misschien iemand hoe de namespace berekend wordt ?

Is bij feeds de service ID (bijna) altijd 1 ?

Ik zat te denken. Is de namespace gelijk aan:

655360 * sat.position ?

De namespace is voor 1 satelliet (positie ??) gelijk.

Hoe de berekening precies is : is weer lang geleden.

Maar kan je niet kijken of een feed bij 1 satelliet(positie) dezelfde namespace heeft ?

Namespace:

Op zich zou een transponder id / netwerk id uniek moeten zijn over alle satellieten.

In de praktijk is dat echter niet zo. Als oplossing is in de tweede versie van de dreambox settings de namespace bedacht: 2 bytes satelliet positie en 2 bytes frequentie. Maar die frequentie dan alleen voor ‘ongeldige’ transponder id / netwerk id combinaties.

Ik gebruik de volgende coding om geldig/ongeldig te bepalen en volgens mij komt die nu 100% overeen met hoe de dreambox het zelf ook doet:

Code:

function isValidONIDTSID(onid,tsid: integer): boolean; begin case onid of $0000,$FFFF,$1111: result := false; $0001: result := boolean(tsid > $0001); $00B1: result := boolean(tsid <> $00B0); $0002: result := boolean(tsid <> $07E8); else result := true; end; end;

Dus:

namespace is totaal 4 bytes:

  • 2 bytes satelliet positie (in tienden, dus -1800 tot +1800)

  • 2 bytes frequentie als het bovenstaande op false uitkomt (anders 0)

Adriaan

Er treed bij het scannen naar nieuwe zenders ondanks de 2 herkenningen nog een fout op als ze beide dezelfde naam en zenderindentificatie hebben.

BV bij het scannen op Turksat 42° Oost

Op 12.633 GHz (V), symbolrate: 4.800 en FEC: 5/6, is het Turkse TV-station ATV Avrupa te ontvangen. (V-PID: 308 / A-PID: 256)

Op 12.527 GHz (H), symbolrate: 4.800 en FEC: 5/6, is het Turkse TV-station ATV Avrupa te ontvangen. (V-PID: 308 / A-PID: 256)

Ze zijn beide met de dreambox te ontvangen echter blijft de laatst gescande in het geheugen en ben je de vorige weer kwijt.

Hetzelfde probleem kom ik ook vaak bij verschillende feeds tegen. Als hier een oplossing voor komt kunnen we nog meer kanalen zien op de dreambox.

Is er geen mogelijkheid deze beide te kunnen opslaan op dezelfde satelliet?

Hans Surfer

Ik denk dat het wel lukt als je DreamEdit gebruikt. Misschien kun je ze dan wel zelf toevoegen. Ik ben bezig om te onderzoeken hoe die bouquet files precies werken.

Als ik die nu namelijk aanpas (met de hand iets invul) kom ik ze nergens meer tegen. Ook niet na een reload.

Misschien is er toch (onderwater) nog een commando dat gegeven moet worden.

Alhoewel, als ik een lijst van via Dreamedit erin zet, word ook alles (na een reload) meteen herkend.

Misschien dat iemand iets weet. Het moet toch mogelijk zijn, om 1 item toe te voegen in de servicefile en dan een reload te geven, zodat mijn nieuw ingebrachte zender te voorschijn komt.