Moviesearch Plugin (Proof of concept)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Das "myCover" kommt genau 2x im Code vor

      im init

      Quellcode

      1. self["myCover"] = Pixmap()

      und in der Funktion, die das Image laden soll


      Python-Quellcode

      1. def loadImage(self, p):
      2. try:
      3. self.colorprint("path: " + p)
      4. if fileExists(p):
      5. ptr = loadJPG(p)
      6. self["myCover"].instance.setPixmap(ptr)
      7. return True
      8. else:
      9. self.colorprint("Image not exist")
      10. return False
      11. except Exception, ex:
      12. self.colorprint("error: " + str(ex))
      Alles anzeigen
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.
    • evtl vorher prüfen, dass p != None bzw. if p:

      edit:
      eigentlich wird ja gemeldet, das self["myCover"].instance None wäre?
      dann hier prüfen ob existiert
      ============================================================================================

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von shadowrider ()

    • Das p kann nicht None sein, da steht immer ein String zu einem Bild drin. Entweder EPGImage oder Platzhalter- Das ist die Logausgabe drüber. Außerdem ist ja ein try um alles herum, was aber bei fileExists nicht anschlägt. s.u.

      Die instance sollte doch vom Constructor im init erstellt werden. Selbst wenn ich den Constructor Pixmap() genau vor dem Image setzen nochmal ausführe, gibt es die instance nicht. Braucht Pixmap() noch andere Prerequisiten außer dem eigenen import?

      Python-Quellcode

      1. def loadImage(self, p):
      2. try:
      3. self.colorprint("path: " + p)
      4. if fileExists(p):
      5. ptr = loadJPG(p)
      6. self["myCover"] = Pixmap()
      7. self["myCover"].instance.setPixmap(ptr)
      8. return True
      9. else:
      10. self.colorprint("Image not exist")
      11. return False
      12. except Exception, ex:
      13. self.colorprint("error: " + str(ex))
      Alles anzeigen


      gleiche Meldung:

      Quellcode

      1. 20:51:38.572 [e2-python] [Moviesearch] path: /media/usb1/EPGImages/03.11.18/107478634.jpg
      2. 20:51:38.594 [e2-python] [Moviesearch] error: 'NoneType' object has no attribute 'setPixmap'
      Ist eventuell im XML was falsch, was den Constructor ohne ex zu gehen scheitern lässt?


      XML-Quellcode

      1. <widget
      2. name="myCover"
      3. position="850,40"
      4. size="800,640"
      5. transparent="0"
      6. alphatest="on" />
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.
    • du darfst loadImage natürlich nicht im __init__ des Screens aufrufen

      erst im onLayoutFinish

      also im init am Ende ein self.onLayoutFinish.append(self.doWork)


      und

      def doWork(self):
      blabla
      self.loadImage()


      wenn du versuchst loadImage aufzurufen bevor der init durch ist, dann ist die instance halt None
      VMC
      EPG Share
      VU Alexa Skill
      Fluid Next
      Global Search

      Spenden sind immer herzlich willkommen... einfach hier klicken und das ganze an sbeatz76@googlemail.com schicken
    • @hmmmdada: DAS wars! Ich habe am Ende von Init das sel_changed() angesprungen, um die extended Description vom ersten Listitem anzuzeigen. Darüber wurde natürlich auch das loadImage aufgerufen.

      Nun habe ich es so und es löppt :) Danke für die Hilfe!

      Python-Quellcode

      1. "key_right": self.key_right_handler,
      2. "key_channel_up": self.key_channel_up_handler,
      3. "key_channel_down": self.key_channel_down_handler
      4. }, -1)
      5. self.onLayoutFinish.append(self.afterInit)
      6. def afterInit(self):
      7. self.sel_changed()
      8. def key_left_handler(self):
      9. self["myList"].pageUp()
      Dateien
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.
    • Moviesearch Plugin (Proof of concept)

      Heute gibt’s nix mehr - Der aktuelle Stand ist schon Optimum. Das Script von schomi bringt zusätzlich noch einen Fix rein, falls VMC nicht installiert ist. Alles was jetzt kommt kann es nur wieder langsamer machen. Das Bilder laden funzt, ich deaktiviere das aber erstmal wieder, bis ich einen Platz dafür gefunden habe. Wenn jemand eine Gestaltungsidee hat - XML zu mir. Ich habe kein Händchen für Design, dass macht auf Arbeit mein Kollege immer ;). Die XML habt ihr ja im ZIP. Für das Cover muss nur ein zusätzliches Widget rein mit Name „myCover“ (s. Snippet weiter oben)
      @schomi: Andere Sender (! IsSky) bringen Probleme, weil der Filteraufwand immens wird, nur um 3 Filme aus Bsp. RTL rauszupopeln. Wenn mehr Sender, dann nur Filmsender. Eventuell könnte man noch einen Genre Filter reinbauen um Animationsfilme usw. nicht anzuzeigen. Großartige Settings Konstruktionen wollte ich eigentlich vermeiden. Wahrscheinlich werde ich eine kleine Datenbank anhängen und die Settings da mit reinspeichern.


      Gesendet von iPhone mit Tapatalk
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.
    • Moviesearch Plugin (Proof of concept)

      Zudem ist mein geiler 200MBit Kabelanschluss seit 22:06 mal wieder down. Meine Familie fand die Idee mit „lest ein Buch“ irgendwie uncool :P


      Gesendet von iPhone mit Tapatalk
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.
    • Bei mir werden keine Picons angezeigt , nutze das Kraven FHD Skin , so kann man nicht erkennen um welche Sender es sich handelt . Geht das nur mit bestimmten Skin's . Da Ich nur von HD Sender aufnehme ist das nicht so einfach diese zu erkennen ohne Picons oder Sendebezeichnung .
    • Neue Version:

      - Bild aus Extradaten wird angezeigt, alternativ Platzhalter "ph.jpg" im Pluginpfad
      - Das Bild sollte anhand der Widgetgröße skaliert werden. Vergrößern endet aber immer matschig, wenn man es übertreibt
      - Der untere Teil der erweiterten Beschreibung wird nun abgeschnitten und mit kleinerem Font im Widget "myAdds" angezeigt
      - Services können aus einer Datei sref.txt geladen werden (Beispiel unten)
      - bei nicht-Cinema Sendern wird versucht anhand der Extradaten versucht Filme zu identifizieren. Wenn keine Extradaten vorliegen, schreibe ich das erstmal ins Genre und zeige die Sendung an, weil es false positives gibt


      @texaner54 Es werden serviceref picons aus dem standard piconpfad genommen. Die müssen so aussehen 1_0_19_6B_C_85_C00000_0_0_0.png

      Beispiel für die sref.txt, die im Pluginpfad liegen muß. Wenn sie nicht dort ist, werden die 3 eingebauten Sender genommen, wie gehabt. Wenn sie da ist, werden nur die Sender genommen, die dort drinstehen. Bitte wirklich nur die services dort rein, keine Kommentare o.ä., das geht schief. Jede Zeile ein Service.

      Quellcode

      1. 1:0:19:6B:C:85:C00000:0:0:0:
      2. 1:0:19:74:B:85:C00000:0:0:0:
      3. 1:0:19:83:6:85:C00000:0:0:0:
      Dateien
      • moviesearch.zip

        (14,94 kB, 18 mal heruntergeladen, zuletzt: )
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Waldmensch ()

    • Du brauchst diese 3 (Doppelpunkte durch Unterstrich ersetzt)

      Quellcode

      1. 1:0:19:6B:C:85:C00000:0:0:0:
      2. 1:0:19:74:B:85:C00000:0:0:0:
      3. 1:0:19:83:6:85:C00000:0:0:0:


      und sie müssen in dem Pfad liegen, der in der settingsdatei /etc/enigma2/settings unter config.usage.picon_dir angegeben ist. Das ist der VTI Piconpfad.
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Waldmensch ()

    • Hier mal ein Beispiel, wo es schiefgeht. Ihr seht bei den Einträgen von ARD und ZDF, dass über sRef und eit kein Extradaten Datensatz gefunden wurde. Zum filtern auf "nur Filme" brauche ich aber das Feld "categoryName" aus dem Extradaten Datensatz um nur die mit Inhalt "Spielfilm" anzeigen zu lassen. Wenn ich jetzt pauschal alle Sendungen weglasse, die keine Extradaten habe, könnten uns auch Filme durch die Lappen gehen.
      Dateien
      VU+ Solo2 LAN
      VU+ Uno4k LAN
      VU+ Uno4k WLAN 5GHZ
      VU+ Zero LAN
      Inverto Unicable JESS LNB (32) + Inverto Power Inserter.