Wir erstellen ein Addon (simples Tutorial von Anfang bis Ende)

  • Brauche Rückmeldung ob das zu viel Information für ein Thema ist oder nicht!


    Gruß Jan


    Eventuelle Fragen beantworte ich später!!

    Moin Jan,

    Schaue ich mir heute Nachmittag an. Melde mich dann bei Dir.

    Gruß Andy

    Meine Systeme
    Win7 PC mit Kodi 15.2 Isengard (PC Zimmer)
    Apple TV1 Betriebssystem OpenELEC, Kodi 15.1 Isengard (PC Zimmer)
    Apple TV1 Betriebssystem OpenELEC, Kodi 15.1 Isengard (Wohnzimer)
    Fire TV Stick mit Kodi 15.2 Isengard (Schlafzimmer)
    Ipad 3 IOS 9.0.2 mit Kodi 15.2 Isengard

  • @skatulskijean

    Du gibst dir hier echt voll super Mühe, vorbildlich!! :thumbup:

    Die heutige Lektion finde ich sehr informativ mit viel Hintergrundwissen und dennoch gut verständlich geschrieben.
    Ich werde da ich ja auch nicht mehr der Jüngste bin alles heut abend nochmals durchgehen.
    Zu viel Stoff ist es meiner Meinung nach nicht, nur sollte man schon ein wenig dabei konzentriert sein...

    Von mir nen Daumen hoch

  • Das ist jetzt alles noch Theorie ohne Praxis wo wir mitmachen können so ist das nicht zu viel wich ich finde.
    Nur bei den Modulen hoffe ich wird es noch viel mehr Infos geben.

    Welche Module meinst Du ?
    Die XBMC-Python-Module oder generell Python Module?


    Na ja das ist ein Einsteiger Kurs (obwohl Kurs)

    So das ich nur auf die Module eingehen werde die wir später auch wirklich zu der Erstellung eines Addons verwenden werden .

    Alle XBMC-Module oder integrierten Python Module anzusprechen würde den Rahmen sprengen und nicht mehr zur Verständlichkeit beitragen.

    Da dieses Thema eigentlich nie zum wirklichen Ende führen kann werden wir uns in einem weiteren Teil
    wie schon beschrieben um den Zugriff auf eine Api und sqlite DB Integration ,dem ansprechen der XBMC Datenbank mit Python usw kümmern und natürlich die jeweiligen Module in ihrer Funktionsweise beschreiben.

    Gruß Jan

  • @skatulskijean Hab erst die Hälfte gelesen, hab heute wenig Zeit, aber ist ein gutes Niveau, man kann dem folgen. Die Menge an Info ist auch nicht zuviel in meinen Augen. Interessant wird es später, wenn wir praktischer werden. Je nachdem wie du dir das vorstellst, wäre es für den Lerneffekt auch gut, wenn du das gundlegende zwar bereitstellst, aber vielleicht auch noch ein paar Zusatzaufgaben stellst (mit oder ohne ein paar Hinweisen wie man das vlt machen kann), die erst einmal nicht sofort gelöst serviert werden, sodass man nicht 1:1 kopiert, sondern sich selbst mal orientieren muss.

    Client 1: Raspi3, LibreElec, Kodi Krypton I Client 2: Intel i5 750, GeForce GTX 750, 8GB Ram, Win7, Kodi Krypton
    Display: Samsung UE40J6250
    Ego: Student aus Kiel, Kompetenzen in Lesen & Schreiben + Wirtschaft + Pädagogik I Alter Ego : Call me Mike

  • Hallo @skatulskijean

    Erstmal super das Du Dir so viel Mühe machst mir Leihen das so zu erklären. :thumbup:

    Das war jetzt nur Therorie, aber das gehört eben immer dazu. Jetzt bin ich ein wenig schlauer geworden, habe zwar nicht alles verstanden, aber ich glaube das kommt nach einer gewissen Zeit von selbst. Zu viel ist das nach meiner Meinung nicht.

    Gruß Andy

    Meine Systeme
    Win7 PC mit Kodi 15.2 Isengard (PC Zimmer)
    Apple TV1 Betriebssystem OpenELEC, Kodi 15.1 Isengard (PC Zimmer)
    Apple TV1 Betriebssystem OpenELEC, Kodi 15.1 Isengard (Wohnzimer)
    Fire TV Stick mit Kodi 15.2 Isengard (Schlafzimmer)
    Ipad 3 IOS 9.0.2 mit Kodi 15.2 Isengard

  • Hab die Theorielektion mal durchgearbeitet. Der erste Teil ist gut Verständlich. Ab dem Teil auf dem du auf die Unterschiede von Kodi & XBMC4XBOX eingehst wird es etwas undurchsichtig, da ich noch nicht einordnen kann warum mich diese Unterschiede überhaupt interressieren da ich nur Kodi/XBMC kenne. Auch die Codeschnipsel in Python sehen gut aus viel anfangen kann ich damit aber erstmal noch nicht.
    Auf die Praxisübungen bin ich mal gespannt, ich habe ein bisschen Erfahrung mit vbscript und Powershellskripten. Ich hoffe es scheitert hier nicht wieder für mich an grundlegenden Dingen wie bei der Javaprogrammierung. Hier habe ich dreimal einen Grundkurs gemacht und bin irgendwo zwischen den Grundlagen und dem Übergang zum richtigen Programmieren stecken geblieben. Ohne Hilfe war das dann sehr frustrierend. Wahrscheinlich hat es hier am Verständnis für die Objektorientierung gefehlt....

  • Hab mich gerade durch die letzten 4 Seiten Thread gewühlt, die ja vorwiegend aus persönlichen Gängelein bestanden.

    Den Informationsgehalt finde ich sehr gut und es ist nicht zu viel zum Einstieg. Man sollte meiner Meinung nach dennoch schonmal eine Programmier- Sprache gesehen haben. Für die wirklich blutigen Anfänger dürfte sonst der Code- Schnipsel aus dem 2. Thema schon zu viel sein. Variablen, if- Abfrage und Syntax (Klammern, Kommata und Anführungszeichen- viel mehr ihre Position) sagen nicht jedem was. Hierfür kann man sich aber parallel beinah jedes Tutorial zu einer Programmier- Sprache ansehen. Die ersten Kapitel befassen sich da ja fast immer mit dem grundlegendem Aufbau.

    Zum Thema der Bezahlung: Ich vertrete ja auch eher den Gedanken, dass so ein Forum von kostenlosem Wissensaustausch lebt. Andererseits finde ich es richtig für gute Arbeit eine Gegenleistung zu erhalten - Als AddonScriptors Amazon Addon rauskam und auf meinem Pi tadellos lief, bekam er auch sofort eine Spende von 5 €. Leider fand ich es dort zumindestens sehr enttäuschend, als er den Support einstellte und andere User das Addon für ihn fixen mussten.
    Da die Spende freiwillig war, hielt sich meiner Ärger absolut in Grenzen, zumal schon wenige Tage später durch die Community eine kostenlose Lösung angeboten wurde.
    Wenn du jetzt von vorneherein einen Lohn für deine Mühen möchtest, finde ich das absolut verständlich, es geht aber auch mit einer Verantwortung einher. Mir wäre das zu gezwungen, aber das liegt ja in deinem Ermessen.
    Die 5€ gehen trotzdem gleich raus, weil mein Notepad++ mich gerade mit "Hello World!" beglückt hat.

    lg fuenfzigccm

  • Hab die Theorielektion mal durchgearbeitet. Der erste Teil ist gut Verständlich. Ab dem Teil auf dem du auf die Unterschiede von Kodi & XBMC4XBOX eingehst wird es etwas undurchsichtig, da ich noch nicht einordnen kann warum mich diese Unterschiede überhaupt interressieren da ich nur Kodi/XBMC kenne. Auch die Codeschnipsel in Python sehen gut aus viel anfangen kann ich damit aber erstmal noch nicht.
    Auf die Praxisübungen bin ich mal gespannt, ich habe ein bisschen Erfahrung mit vbscript und Powershellskripten. Ich hoffe es scheitert hier nicht wieder für mich an grundlegenden Dingen wie bei der Javaprogrammierung. Hier habe ich dreimal einen Grundkurs gemacht und bin irgendwo zwischen den Grundlagen und dem Übergang zum richtigen Programmieren stecken geblieben. Ohne Hilfe war das dann sehr frustrierend. Wahrscheinlich hat es hier am Verständnis für die Objektorientierung gefehlt...

    Ja , ich verstehe gut das man im Moment nicht versteht worum es dort geht.
    Da ich aber möchte das Ihr später auch in der Lage seit .
    Addons zu schreiben die auch auf den Wurzeln von Xbmc (xbmc4xbox ) laufbar sind.
    Also unter Kodi und Xbmc4xbox laufen.
    War es dort nach meiner Meinung genau die richtige Stelle .
    So könnt ihr wenn wir weiter im Thema sind den geposteten Code auch verstehen und selbständig
    anwenden.
    Wenn man später nochmal zurückblickt erinnert man sich daran .
    Ruft den ersten Post des Threads auf und geht auf den link zum 2 Thema.
    Wir packen das.

    Den Informationsgehalt finde ich sehr gut und es ist nicht zu viel zum Einstieg. Man sollte meiner Meinung nach dennoch schonmal eine Programmier- Sprache gesehen haben. Für die wirklich blutigen Anfänger dürfte sonst der Code- Schnipsel aus dem 2. Thema schon zu viel sein. Variablen, if- Abfrage und Syntax (Klammern, Kommata und Anführungszeichen- viel mehr ihre Position) sagen nicht jedem was. Hierfür kann man sich aber parallel beinah jedes Tutorial zu einer Programmier- Sprache ansehen. Die ersten Kapitel befassen sich da ja fast immer mit dem grundlegendem Aufbau.

    Na ja die Grundlegenden Sachen sind hier noch spezieller und ihr werdet es leichter haben wenn ihr generell versteht wie Kodi (XBMC) so funktionieren und wo und was vorhanden ist.
    Mit den Code Auszug ist es so wie Du es schreibst im Moment unverständlich aber das kommt noch.-
    So brauch ich nicht unterbrechen und kann ich Aufgaben stellen.

    Und auch Danke an Dich

  • xbmcplugin: Bietet Klassen und Funktionen...Plugins haben nicht die gleiche Flexibilität wie Skripte aber sie bieten eine deutlich schnellere Entwicklungszeit und eine konsistente Benutzererfahrung.

    Kannst Du mal näher erläutern, was Du damit meinst?

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960
    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • @skatulskijean So gerade mal zuende gelesen, macht Lust auf mehr! :) Die 5€ als Spende sind hier auch besser aufgehoben als in der Schachtel Kippen. Bei der Print-Aufgabe bin ich gleich aufs erste Problem gestoßen - wollte nämlich rebellisch und entgegen des Vorschlags ausgeben: "Das Leben ist schön" und Notepad++ fing an zu meckern wegen des Umlauts. Das erinnert mich an meine html-Zeiten^^

    Wollte noch als Option in Erinnerung rufen, dass es ja auch noch Youtube gibt. Sofern du ein halbwegs funktionierendes Mikrofon und ne Stimme wie der Synchonsprecher von Bruce Willis hast, bietet sich die Sache später möglicherweise ja für das ein oder andere Kapitel auch (zusätzlich oder ganzheitlich) an. Also je nachdem, um was es geht, sind Videos ja manchmal eingänglicher für den Rezipienten als reine Texte und für den Dozenten sogar weniger aufwendig zu erstellen (Desktop+Stimme reicht ja). Nur als Idee im Hinterkopf, wenn es mal sinnvoll sein könnte ;)

    Ansonsten finde ich die Sache mit den Kapiteln toll, das gibt wirklich Übersichtlichkeit! Vielleicht wäre es auch noch gut, wenn du deine Beiträge (sofern themenbezogen, Antwort auf ne Teilnehmer-Frage) in Schwarz oder Grün hältst.

    @BJ1 Auch schön zu sehen, dass du hier etwas in die opositionelle Kontrollposition rückst :D Soweit das nicht subjektiv und im Geflame mündet, ist das nur gut für das Projekt!

    Gruß Mike

    Client 1: Raspi3, LibreElec, Kodi Krypton I Client 2: Intel i5 750, GeForce GTX 750, 8GB Ram, Win7, Kodi Krypton
    Display: Samsung UE40J6250
    Ego: Student aus Kiel, Kompetenzen in Lesen & Schreiben + Wirtschaft + Pädagogik I Alter Ego : Call me Mike

  • Kannst Du mal näher erläutern, was Du damit meinst?

    Das xbmc Python Modul xbmcplugin wird innerhalb eines Addons früher Plugins (daher noch der Name : z.B
    plugin.video.youtube) genutzt

    Durch dieses Python-Module ist es unter anderen möglich die Einstellungen eines Addons abzufragen . Directorys zu erstellen (So wie ihr die Struktur z.B unter einen Video -Addon kennt.) und einiges mehr .

    Der Unterschied vom Plugin zum Script (XBMC-Script) ist das man die Oberfläche unter einen Plugin nicht selbst durch einen Skin , wie es in den Scripten war und ist ,gestalten muß.
    Dadurch geben Plugins ein einheitlicheres Bild ab und der Aufwand für die Gestaltung eines Skins für das zu erstellende Programm fällt weg.

    Vielleicht ist der Begriff Skin hier etwas verwirrend

    Heute denkt man wenn man in Kodi von einen Skin spricht immer an die Skins die die komplette Oberfäche von Kodi bestimmen wie z.B den Confluence Skin.


    Damals war der Begriff Skin auch für alle Die ein Programm für XBMC erstellten ein Begriff.
    Da man sich auch um die grafische Gestaltung seines Programmes kümmern mußte .
    So wie ihr es Heute von den Skins wie Confluence kennt.
    Das heißt der Zugriff auf Buttons Listen ,views , die Gesamten verwendeten Grafiken mußten für jedes Programm separat erstellt werden.

    Genau das war dann ab Einführung des Plugin -Systems in XBMC nicht mehr nötig.


    Gruß Jan


    Ps Ich hoffe das hat Deine Frage beantwortet

  • Wie ist das mit dem zweiten Code Bsp.
    Kann man damit addons die nur für Kodi gemacht wurden Xbox kombatibel machen?
    Mehr oder weniger? Denke aber gehört bestimmt noch viel mehr dazu?

    Zu der Zeit als ich mein Jan'sxbmc4xbox bereitgestellt hatte.
    War es so das ich den komplettem Code von python 2.4 nach python 2.7 anpassen mußte.
    Desweiteren war die Unterschiedliche Struktur von xbmc4xbox zu damals noch xbmc zu beachten und natürlich das es dort nicht unter einen OS im klassischen Sinn läuft.
    Klar ist der Kernel unter xbox im Prinzip WIN-NT aber eben nicht ein komplettes OS.
    Da wir inzwischen auch auf xbmc4xbox unter python 2.7 laufen.
    Ist die heutige Anpassung von Addons nach xbmc4xbox bei weitem nicht mehr so aufwendig wie sie für mich zu der Zeit noch war(Auch weil ich die Unterschiedliche Arbeitsweise und Struktur selbst rausbekommen mußte)

    Aber es gibt doch noch genug was beachtet werden müssen oder einfach auf der xbox anders gemacht werden muß oder nicht funktionieren kann.

    Auf all Diese Sachen werde ich innerhalb dieses Kurses natürlich auch eingehen und Lösungsansätze bieten.

    Ein oft sehr großes Problem von Addons ,Skins von main xbmc ist das sie nicht so erstellt oder programmiert sind das sie die Resourcen schonen.
    (Ram verbrauch ,Prozessorauslastung) das fängt schon damit an das einige Addons Hilfsmittel benutzen
    wie Beautiful Soup um den Inhalt von Webseiten anzusprechen.
    Das mag auf Systemen mit Genug Prozessor Power und Ram keinen so großen Unterschied machen aber auf kleinen wie den unseren schon.
    Da beste Beispiel dafür war mal ein Addon das sich zum damaligen Zeitpunkt in der Xbmc Repo befunden hat und auf die Videos einer französischen Game Site zugegriffen hat.
    Ich wollte es auf User -Request eigentlich nur anpassen .
    Aber dann war dieses Addon so unsagbar langsam.
    Also hatte ich es komplett neu geschrieben und der Geschwindigkeitsgewinn war enorm ca 80 % schneller als das Original.

    Ein weiteres Problem ist das die festen Grafiken in addons wie Icons und Fanarts nicht runtergerechnet werden.
    TinyPNG wirkt dort wunder und macht ein Grafik bei anähernd gleiche Qualität um bis zu 90% kleiner,
    Im durchschnitt so 78% und das kann schon ne Menge Sein .

    Aber ich bin gerade etwas abgedriftet.

    Den 2 Programm Code wirst Du nach Durcharbeitung des heutigen Themas verstehen.

    Gruß Jan

  • Ps Ich hoffe das hat Deine Frage beantwortet

    Ja, mehr oder weniger :D . Was xbmcplugin als Klasse macht, ist mir schon klar, nur konnte ich mit den von Dir geprägten Begrifflichkeiten 'deutlich schnellere Entwicklungszeit und konsistente Benutzererfahrung' nichts anfangen. Daher die Nachfrage.

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960
    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

  • Das heutige Thema dauert noch etwas , habe gestern nur 2 Stunden schlafen können.

    Und wird nochmal ein grundsätzliches Thema sein es geht um Begriffserklärungen und Beispiele.
    Import, Variablen,if else, die Funktion,try except ,und die for Schleife.

    Es hat wie bei allen Themen die ich Anspreche nicht den Anspruch ein vollwertiges Python Tutorial zu sein.
    Das geht auch nicht denn wir wollen ja schon mit den nächsten Themen zum Kern des Thread kommen.
    Der Erstellung eines Addons .

    Aber alles Python Code spezifische muß vorher wenigsten an gesprochen werden.
    Für die schon Python erfahrenen ist das natürlich nicht relevant aber für all die anderen schon.

    Deswegen Bitte verinnerlichen und die Beispiele dann auch Durchspielen und mit eigenen Ideen füllen.
    Also probieren.

    Gruß Jan

  • Ja, mehr oder weniger :D . Was xbmcplugin als Klasse macht, ist mir schon klar, nur konnte ich mit den von Dir geprägten Begrifflichkeiten 'deutlich schnellere Entwicklungszeit und konsistente Benutzererfahrung' nichts anfangen. Daher die Nachfrage.

    Mir war klar das Dir das klar ist und so war es nicht meine Absicht so zu tun als ob ich Dir das erklären müßte.
    Aber für jemanden der nicht die Erfahrungen wie Du hat und eigentlich die selbe Frage hat mußte ich es so beantworten.


    Gruß Jan

  • Alles Ok.

    AZi (DEV): Nexus auf LibreElec | Asrock J4205 | 4 GB RAM | 128 GB Sandisk| Rii mini
    DEV: PC Ubuntu 20.04 | Matrix
    AZi: Tanix TX3 | Android/CoreElec Dualboot (EMMC), Nexus
    WoZi: Nexus auf LibreElec | Asrock J4205 | 4GB RAM | 128 GB Sandisk SSD | Atric IR | URC7960
    NAS: unRaid, 3x6TB, 2x12TB | TV-Server: Futro S550 mit Hauppauge QuadHD DVB-C
    PayPal: paypal.me/pvdbj1

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!