Yes using the same trick for dvbnamespace_mask I have no OverflowError but the channel for DVB-T ref is empty
So is searchReference the problem?
Should I use a different dvbnamespace_mask?
Thanks
DM920: Picon display infobar dvb-t
-
-
Now you have gained some understanding - and it should be clearer why -1 is an FFFFFFFF mask equivalent
But now that you have some not failing code you have to make working code out of it
-
Ok. The right mask is FFFF0000 because te last 4 chars are different in rytech files.
So using this channelFilter the epgimport for DVB-T(2) is ok:Code
Alles anzeigendef channelFilter(ref): strref=str(ref) # channel = ServiceReference(strref).getServiceName() ssid = strref.split(":") if int(ssid[0]) == 1 and (int(ssid[6], 16) & 0xFFFF0000) == 0xEEEE0000: # convert hex stuff to integer sid=int(ssid[3],16) tsid=int(ssid[4],16) onid=int(ssid[5],16) dvbnamespace=int(ssid[6],16) if dvbnamespace > 2147483647: dvbnamespace -= 4294967296 dvbnamespace_mask = int('FFFF0000', 16) if dvbnamespace_mask > 2147483647: dvbnamespace_mask -= 4294967296 searchedserv=eDVBDB.getInstance().searchReference(tsid, onid, sid, dvbnamespace, dvbnamespace_mask) channel = ServiceReference(searchedserv).getServiceName() else: channel = ServiceReference(strref).getServiceName() if len(channel) > 0: print "[EPGimport] found channel %s %s" % (channel, strref) return True return False
Thanks @gutemine
PS: pay attention that you have to change the import in plugin.py:
from enigma import cachestate, eEPGCache, eDVBDB
-
well, if you have a working solution and tested it sufficently, feel free to post the new files in OoZooN's board at the origonal EPGImporter for DreamOS Thread, then I could create a new deb file for you and the others looking for a solution.
But you have to thank Ghost ... I just added ... a lttle understanding ...
-
Here is a easier Version .. untested but should work:
Python
Alles anzeigendef channelFilter(ref): sref = ServiceReference(ref) if (sref.ref.getUnsignedData(4) & 0xFFFF0000) == 0xEEEE0000: from ctypes import c_int searchedserv=eDVBDB.getInstance().searchReference(sref.ref, c_int(0xFFFF0000)) channel = ServiceReference(searchedserv).getServiceName() else: channel = sref.getServiceName() if len(channel) > 0: print "[EPGimport] found channel %s %s" % (channel, strref) return True return False
cya
-
-
I uploaded an r36.4 of the EPGImporter Plugin with the enhanced channelFilter routine from Ghost for the DVB-T Service references at OoZooN's board where the EPGImport Plugin for DreamOS has its kit and support thread.
Please use this one for testing and report ...
-
-
well, this is what testing is about ...
I created a r36.5 containing our "ugly" code, please try this one until we find the bug.
-
Hi !
Nachdem Ghost so nett war den Fix für den Picon Resolver für die DVB-T(2) Picons einzuchecken, wollte ich bitten ob man nicht auch den aus dem Anhang einchecken konnte, da wird z.B nur aus C00001 wieder C00000 in der servicereference gemacht.
Ich benutze solche Fake Servicereferences um dem e2 aufzuzwingen, dass es wenn es mit 2 Modulen entschlüsselt dann auch 2 Tuner dafür verwendet, selbst wenn die 2 Sender auf dem gleichen Transponder sind.
Das funktioniert eigentlich prima, aber dadurch findet das e2 dann ganz ähnlich wie bei den speziellen DVB-T(2) servicereferencen nicht mehr seine picons.
Mit dem Fix im Anhang funktioniert das dann auch wieder wie es sollte.
BITTE, BITTE, BITTE
LG
gutemine -
Nachdem ich nicht warten wollte habe ich halt zähneknirschend in der Version 5.0 vom Service Relation Plugin den ganzen Picon Resolver überschrieben, damit kann das Service Relation Plugin wenn man 2 gleiche Module mit 2 Karten hat dann auch 2 Sender auf dem gleichen Transponder entschlüsseln - für PiP und Live TV oder LiveTV und eine Aufnahme.
Falls es wer Testen will - kit und Support Thread sind bei OoZooN im Board zu finden.
LG
gutemine -
-
for testing you need something producing such fake servicereferences, therefore you can test it only with the transponder setting of my service relation plugin if you do a recording and viewing with channel on same transponder, then the viewing is done with fake service reference but picon will still be shown correctly.