maigais какой рендер используешь piconsat?если тот что я выкладывал дляиспользовния с конвертером ServiceName2 а именно его OrbitalPos то допиши вот это себе в ServiceName2 должно тебе помочь..проверить не могу у меня нет двт но по логике должно выводить тебе пикон двт а имеено с названием пикона DVB-T на твоих каналах.я ж говорил тебе-просто все можно сделать...
@cached
def getText(self):
sname2 = ""
sname3 = ""
sname = ""
service = self.source.service
if service:
feinfo = service.frontendInfo()
if feinfo is not None:
frontendData = feinfo and feinfo.getAll(True)
if frontendData is not None and frontendData.get('tuner_type') == 'DVB-T':
sname3 = 'DVB-T'
if isinstance(service, iPlayableServicePtr):
info = service and service.info()
ref = None
else: # reference
info = service and self.source.info
ref = service
if info is None: return ""
sname = ref and ref.toString() or info.getInfoString(iServiceInformation.sServiceref)
if 'tvshka' in sname:
sname2 = "SCHURA"
elif 'vsadmin' in sname:
sname2 = "Vsadmin"
if 'http' in sname:
sname3 = "Iptv"
if self.type == self.NAME:
name = ref and (info.getName(ref) or 'N/A') or (info.getName() or 'N/A')
return name.replace('\xc2\x86', '').replace('\xc2\x87', '')
elif self.type == self.NUMBER:
num, bouq = self.getServiceNumber(ref or eServiceReference(info.getInfoString(iServiceInformation.sServiceref)))
return num and str(num) or ''
elif self.type == self.BOUQUET:
num, bouq = self.getServiceNumber(ref or eServiceReference(info.getInfoString(iServiceInformation.sServiceref)))
return bouq
elif self.type == self.PROVIDER:
return ref and self.getProviderName(ref) or info.getInfoString(iServiceInformation.sProvider) or sname2
elif self.type == self.REFERENCE:
return ref and ref.toString() or info.getInfoString(iServiceInformation.sServiceref)
elif self.type == self.ORBPOS:
if sname3 == "Iptv":
orbp = "0.0В°E"
elif sname3 == "DVB-T":
orbp = "DVB-T"
else:
orbp = self.getTransponderInfo(info, ref, '%O')
return orbp
или еще проще вот так
elif f == 'O': # %O - orbital_position (dvb-s/s2)
if type == 'DVB-S':
x = self.tpdata.get('orbital_position', 0)
result += x > 1800 and "%d.%d°W"%((3600-x)/10, (3600-x)%10) or "%d.%d°E"%(x/10, x%10)
elif type == 'DVB-T':
result += "DVB-T"
смотри какой вариант тебе нравитса...думаю последний самый простой))