Raspberry Media Center – Teil 15: MPEG-2 Lizenz Schlüssel

Live-TVEin Raspberry Pi ist in der Lage MPEG-2 (und auch VC-1) Datenströme per Hardware zu dekodieren. Allerdings ist diese Möglichkeit bei einem neuen Raspberry erst einmal deaktiviert und muss durch den Kauf von Lizenzschlüsseln freigeschaltet werden. Brauchen wir für unser Raspberry Media Center derartige Lizenzschlüssel? Wo bekommen wir die her? Und wie werden sie installiert? Dieser Artikel gibt die Antworten.

Was hat es mit diesen Lizenzschlüsseln auf sich?

Video Dateien und auch Video Datenströme sind codiert, was unter anderem der Datenkomprimierung dient. Dabei gibt es verschiedene Standards, wie zum Beispiel:

H.264 wird universell eingesetzt z.B. bei DVB-S2, QuickTime und bei DigiCams Hardwaredekodierung ist im RasPi bereits ab Werk aktiv
MPEG-2 gebräuchlich bei Video DVD, DVB-S, DVB-C und DVB-T Hardwaredekodierung braucht Freischaltung
VC-1 ein Microsoft Media Video Format, gebräuchlich bei Blue-ray Disc und HD DVD Hardwaredekodierung braucht Freischaltung

Beim Abspielen eines Videos muss der Datenstrom dekodiert werden, was durchaus eine CPU-intensive Sache sein kann. Deshalb wird diese Aufgabe gerne dem Video-Chip übertragen, der das in Hardware ausführen kann und so die CPU weniger belastet ist. So auch beim Raspberry Pi – der ist in der Lage zahlreiche Videodekodierungen per Hardware vorzunehmen. Allerdings sind nicht alle Codecs ab Werk aktiviert.

Warum kostet das extra?

Einige dieser Codecs sind oft durch Patente belastet. Und die Raspberry Foundation hat sich dazu entschlossen, lieber die Preise für die Raspberries niedrig zu halten und nicht generell MPEG-2 und VC-1 zu lizenzieren. Verständlich, da ja nicht jeder Raspberry zum Abspielen von Videos eingesetzt wird. Wer dennoch MPEG-2 und VC-1 freischalten möchte, kann sich über den Raspberry Pi Store Lizenzschlüssel für seinen individuellen Raspberry Pi nachkaufen.

Brauche ich diese Lizenzschlüssel?

Wer hierzu nach Informationen im Internet sucht, trifft auf allerlei Halbwahrheiten und Falschinformationen. Vieles bezieht sich dabei auf den alten Raspberry Pi 1, der aufgrund seiner Leistungsschwäche Schwierigkeiten hatte, MPEG-2-Streams per Software zu dekodieren. Aber Aussagen, wie „ohne MPEG-2 Lizenz bleibt der Bildschirm schwarz“ sind völliger Unfug. Fakt ist, dass die Dekodierung von MPEG-2 und VC-1 auch per Software erfolgen kann, wenn keine Hardwareunterstützung dafür bereit steht. Schauen wir uns in der folgenden Tabelle einmal an, was es für die Belastung der CPU jeweils bedeutet, wenn unterschiedlich kodierte Videos abgespielt werden.

SW-HW-Decodierung

Wie man sieht kann die CPU-Last erheblich sein, wenn die Video-Dekodierung per Software erfolgen muss. Wenn das die Hardware erledigen kann, entlastet es die CPU wesentlich. Wobei normale Videos, wie sie per DVB-T gestreamt werden hier nicht so ins Gewicht fallen, bei Full-HD-Videos mit einer Auflösung von 1920×1080 Pixel schaut das schon anders aus. Da kann die Last selbst für einen Raspberry Pi 2 so groß sein, dass Tonaussetzer oder Bildbeeinträchtigungen vorkommen.

Noch eine Anmerkung zu der Tabelle oben: Die Hardwaredekodierung von H.264 und MPEG-4 Videos ist ohne den Kauf von Lizenzkeys von Haus aus mit dem Raspberry Pi möglich. Lediglich zu Testzwecken hab ich sie für die Softwareversuche von Hand abgedreht. Es geht also nur um MPEG-2. Für VC-1 hatte ich leider kein Testvideo zur Verfügung.

Was bedeutet das jetzt in der Praxis?

Wer mit seinem Raspberry Pi überwiegend normale SD-Videos schaut, also zum Beispiel Live-TV per Tvheadend oder VDR, wer DVB-T aufzeichnet und wiedergibt, der braucht keinen MPEG-2 Lizenzschlüssel zu kaufen. Der Raspberry Pi 2 ist leistungsstark genug, um SD-Videos per Software zu dekodieren. Allerdings muss für Live-TV in Kodi die Hardwarebeschleunigung abgeschaltet werden. Wie das geht, erkläre ich weiter unten.

Wer allerdings Full-HD-Videos schauen will, der wird wohl mit der Softwaredekodierung nicht glücklich werden. In diesem Fall sollte in einen Lizenz Key investiert werden.

Was kosten die Lizenzschlüssel und wie kann ich sie kaufen?

Das sind die aktuellen Preise in Britischen Pfund:

  • MPEG-2: £2.40
  • VC-1: £1.20

Wichtig ist es zu wissen, dass diese Lizenzschlüssel immer individuell für einen einzelnen Raspberry Pi verkauft werden. Das bedeutet, dass jeder Lizenzkey an die Seriennummer eines speziellen RasPi gebunden ist und in einem anderen Gerät nicht funktioniert. Bei der Bestellung muss deshalb die Seriennummer des Raspberry Pi angegeben werden.

Die Seriennummer wird in Kodi über die Menüpunkte Optionen, Systeminfo, Hardware ausgelesen.

Seriennummer

Die Seriennummer steht dann unter Serial.

Alternativ dazu kann die Seriennummer eines Raspberry Pi auch per SSH auf der Kommandozeilenebene ermittelt werden. Dazu geben wir nach dem erfolgten SSH-Login folgenden Befehl ein:

cat /proc/cpuinfo

Und wir erhalten eine Ausgabe, die der folgenden gleichen wird:

processor        : 0
model name       : ARMv7 Processor rev 5 (v7l)
BogoMIPS         : 38.00
Features         : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm 
CPU implementer  : 0x41
CPU architecture : 7
CPU variant      : 0x0
CPU part         : 0xc07
CPU revision     : 5

processor 1-3 hier gekürzt

Hardware         : BCM2709
Revision         : a01041
Serial           : 0000000036193cb3

Die Seriennummer steht ganz unten unter Serial.

Als nächstes besuchen wir den Raspberry Pi Store unter http://www.raspberrypi.com/license-keys/. Hier können wir online die Lizenzschlüssel bestellen. Dazu müssen wir die vorher ermittelte Seriennummer eingeben. Die Bezahlung erfolgt ausschließlich per Paypal. Die Schlüssel bekommen wir dann innerhalb weniger Stunden per E-Mail zugeschickt.

Wie aktiviere ich die Lizenzschlüssel?

hier unterscheidet sich die Vorgehensweise wieder zwischen den drei Kodi-Distributionen. Generell gehören die Lizenzschlüssel in die Datei config.txt. Bei XBian und OSMC lässt sich die Eintragung aber auch über die Kodi-Oberfläche vornehmen.

Lizenzschlüssel in OpenELEC eintragen

Unter OpenELEC müssen die Lizenzschlüssel direkt in die Datei /flash/config.txt eingetragen werden. Dazu kann man die SD-Karte aus dem Raspberry Pi nehmen und mit einem USB-Adapter an einen PC anschließen. Dann kann die Datei mit einem Texteditor bearbeitet werden. Bei der zweiten Methode verbleibt die SD-Karte im RasPi und die config.txt wird per SSH-Zugang bearbeitet. Dazu melden wir uns zuerst per SSH am Raspberry Pi an:

ssh root@OpenELEC

Das Passwort ist openelec.

Da bei OpenELEC auch die /flash Partition generell schreibgeschützt ist, müssen wir zuerst den Schreibschutz aufheben, in dem wir sie schreibend neu mounten. Dann können wir die config.txt Datei mit dem Editor Nano bearbeiten:

mount -o remount,rw /flash
nano /flash/config.txt

In der Datei blättern wir fast ganz nach unten bis zum Bereich „License keys“. Hier finden wir bereits leere Einträge für vier Lizenzschlüssel. Hinter MPG2 und WVC1 ergänzen wir unsere eigenen Keys anstelle der Nullen und nehmen die voranstehenden Rauten (#) weg, um die Zeilen zu aktivieren. Das sieht dann in etwa so aus:

decode_MPG2=0xa7fc033d
decode_WVC1=0x6d1f1e7c
# decode_DTS=0x00000000
# decode_DDP=0x00000000

Den Editor verlassen wir mit Strg-X und bestätigen das Speichern der Datei. Danach müssen wir den Raspberry Pi neu starten mit:

reboot

Wenn wir uns dann neu per SSH anmelden, können wir überprüfen, ob die Lizenzen aktiviert wurden:

vcgencmd codec_enabled MPG2
vcgencmd codec_enabled WVC1

Lizenzschlüssel in XBian eintragen

XBian ist hier nutzerfreundlicher. Die Lizenzschlüssel können bereits bei der initialen Systemkonfiguration eingegeben werden, oder später über die Kodi-Bedienoberfläche. In letzterem Fall gehen wir in Kodi auf Optionen – Einstellungen – XBian und dann auf den ersten Menüpunkt System. Jetzt können wir rechts unter Licenses die beiden Schlüssel eingeben:

Codec License

Danach muss das System rebootet werden. Alternativ können die Lizenzen auch unter XBian per SSH eingegeben werden. Dazu muss nicht mal eine Datei editiert werden, im XBian-Config Menü gibt es unter 2-Settings und dann 4-Licenses eine Eingabemöglichkeit. Bei dieser Variante ist ebenfalls ein abschließender Reboot erforderlich.

Lizenzschlüssel in OSMC eintragen

Auch unter OSMC können die Lizenzschlüssel direkt in Kodi eingegeben werden. Dazu gehen wir in Kodi auf My OSMC, dann links auf die Beere für Pi Config und dann auf den zweiten Menüpunkt GPU Mem & Codec. Jetzt können wir rechts die Lizenzschlüssel eingeben. Wichtig ist es mit 0x zu beginnen.

Codec License

Danach muss gebootet werden und wenn wir daraufhin zu diesem Menüpunkt zurückkehren, können wir unter Codec status überprüfen, ob die Lizenzen auch aktiv sind.

Ohne Lizenzschlüssel fernsehen

Abschließend komme ich zurück auf die Frage, ob denn nun wirklich diese Lizenzschlüssel benötigt werden. Zumindest für denjenigen, der über einen DVB-T-Stick normales SD-TV schauen und aufzeichnen möchte, kann diese Frage verneint werden. Sofern kein Full-HD dekodiert werden muss, reicht die Leistungsfähigkeit eines Raspberry Pi 2 vollkommen aus, um diese Aufgabe softwaregesteuert über die CPU zu erledigen. Damit aber beim Live-TV-Schauen per Tvheadend oder VDR wirklich nicht der Bildschirm dunkel bleibt und nur Ton zu hören ist, muss Kodi auf Softwaredekodierung umgestellt werden. Dazu gehen wir auf Optionen – Einstellungen – Video und achten darauf, dass die Einstellungsebene links unten zumindest auf Fortgeschritten steht. Nur in diesem Fall gibt es einen Menüpunkt Beschleunigung. Und hier stellen wie die Dekodiermethode von Hardwarebeschleunigt auf Software um:

softkodierung

Dazu noch zwei Hinweise:

  • Die reine Wiedergabe von aufgezeichneten MPEG-2-Videos funktioniert auch ohne diese Umstellung. Kodi macht das von sich aus per Software, wenn keine Lizenzschlüssel eingetragen sind. Lediglich bei Live-TV funktioniert dieser Automatismus nicht. Das erkennt man daran, dass zwar der Ton abgespielt wird, aber kein Bild. Nur in diesem Fall muss auf Software als Dekodiermethode umgestellt werden.
  • Die Rückstufung der Dekodiermethode von Hardwarebeschleunigt auf Software betrifft nicht nur MPEG-2 und VC-1. Auch H.264 und MPEG-4 Formate, für die kein Lizenzschlüssel erforderlich ist, werden dann per Software dekodiert.

Wünschenswert wäre es, wenn Kodi auch bei Live-TV die Softwaredekodierung automatisch aktivieren würde, wenn es per Hardware nicht möglich ist. Das würde diese Umschalterei ersparen.


Weitere Artikel in dieser Kategorie:

23 Kommentare

  1. Wolfgang

    Hallo,
    ich möchte einen Rapsberry einsetzen als „dummen“ Videoplayer für MPEG4 mit Datenquelle USB-Stick mit nur EINEM Video dort gespeichert.

    Mein TV-Gerät kann das nicht direkt wiedergeben, hat aber einen HDMI-Anschluß.

    Idee/Wunsch Rapsberry ( inkl.KODI ) mit MPEG-4-USB anstecken, einschalten und Film läuft ohne anmelden, bedienen, keine Tastatur, keine Maus, kein Vorlauf. Evtl. 1 oder 2 I/O-Pin des rapsberry für „halt“ und „weiter“.

    Antworten
    1. Helmut (Beitrag Autor)

      Das klingt ja nicht abwegig und lässt sich mit ein wenig Scripting vielleicht machen. Per Kodi-Send zum Beispiel. Das Halt und Weiter könnte auch per Fernseher-Fernbedienung erfolgen oder per Smartphone App.

      Antworten
  2. Ulrich Orth

    Also ich hab vor 2 Wochen via Paypal diese Lizenzen bezahlt, und bis Dato nicht erhalten. Das mit den wenigen Stunden scheint nur Glücksfall zu sein. Auch habe ich dieses bei Paypal gemeldet – juckt die nicht.

    Antworten
  3. Paul

    Danke für die Arbeit!

    Antworten
  4. sascha

    Hast die direkt angeschrieben bei Rasp store? store@raspberrypi.org Hast auch dein Spam im Postfach geprüfte?

    Antworten
  5. Miau

    H.264 nicht H265

    Antworten
    1. Helmut (Beitrag Autor)

      Richtig – Danke, werd ich gleich ändern.

      Antworten
  6. chem

    Auf welchen Raspberry Pi beziehen sich die Auslastungen der CPU?
    Ich überlege gerade, einen Pi1 via LibreElec + VDR an einen im Netzwerk befindlichen SAT IP Server anzuschließen, und bin mir nicht sicher, ob ich dafür die MPEG2 License erwerben sollte oder nicht.

    Antworten
    1. Helmut (Beitrag Autor)

      Das bezieht sich auf einen Raspberry Pi 2. Bei einem Pi 1 hätte ich Zweifel, ob er das per Software packt, aber Du kannst es ja probieren und wenn es nicht klappt, dann immer noch den Key bestellen.

      Antworten
  7. libregr

    Hallo, das mit der Lizenz habe ich auch erst heute erfahren und würde gerne wissen ob es für mich auch interessant wäre, ich schaue hauptsächlich iptv über PVR IPTV Simple Client (raspberry pi 3 LibreELEC)
    Und mit dem USB-Stick, ab und zu mal Filme!
    Soll ich mir einen Lizenz Schlüssel kaufen und welchen?

    Antworten
    1. Helmut (Beitrag Autor)

      Das kommt darauf an, wie die Inhalte, die Du schaust intern kodiert sind und wie hoch die Auflösung und damit der Rechenaufwand ist. Wenn Du keine Probleme bei der Wiedergabe hast, dann brauchst Du auch die Codec-Lizenzen auch nicht zu kaufen.

      Antworten
  8. Schwarzbert

    Hallo,
    ich habe mir nach der ausführlichen Anleitung die beiden Lizenzen gekauft und eingetragen. Ich verwende Libre Elec mit Kofi 17.6
    Nach einem reboot steht der richtige Schlüssel in der config, wenn ich aber mit vcgencmd codec_enabled MPG2 und
    vcgencmd codec_enabled WVC1 teste erscheint: MPG2=disabled und WVC1=disabled
    Gibt es da eine Lösung für, oder unter Libre Elec einen anderen Weg?

    Antworten
    1. Helmut (Beitrag Autor)

      Mit LibreElec hat das an sich nicht viel zu tun, das würde mit Raspbian auch funktionieren.
      Hast Du nach dem Eintrag in die config.txt einen Reboot vorgenommen?
      Und bist Du sicher, dass der Eintrag stimmt? Nicht dass der Schlüssel auskommentiert ist.
      Passt der Schlüssel auch zur Seriennummer Deines Raspberry Pi?

      Antworten
  9. Schwarzbert

    Ja ich habe die config gespeichert, einen reboot vorgenommen und in der config kontrolliert, ob die Einträge stimmen.
    Bin sicher, denn ich habe kopiert und eingefügt.
    Und Ichhabe behauch kontrolliert, ob ich die richtige Seriennummer bei der Bestellung angegeben habe.
    Stimmt irgendwie alles.
    Und ich habe vor dem Schlüssel die Leerstelle und die # entfernt

    Antworten
    1. Helmut (Beitrag Autor)

      Das klingt alles sehr gut. Wenn Deine config Datei diese hier ist: /flash/config.txt
      und in der Datei weiter unten nicht noch ein Eintrag kommt, der das ganze wieder zunichte macht, dann fällt mir auch nicht mehr viel ein.
      Ich würde als nächstes versuchen, in die config.txt irgenetwas anderes einzutragen (Overclocking, gpu_mem, oder so) nur um zu sehen, ob andere Einträge in der config.txt funktionieren.

      Antworten
  10. LibreElecUser

    Guten Abend Helmut,

    vielen Dank für Deine wirklich guten Block.
    Ich bin in Sachen LibreElec & Kodi noch absoluter noob.
    Daher ist Dein Blog wirklich sehr hilfreich.
    Ich bin froh, diesen ohne lange Suche gleich gefunden zu haben.

    Antworten
  11. Ulrich

    Hallo,
    ich habe die Lizenzen gekauft und auch erfolgreich aktiviert. Leider finde ich den Menüpunkt Einstellungen – Videos – Beschleunigung – Dekodiermethode nicht. Wo ist das denn versteckt???

    Antworten
    1. Helmut (Beitrag Autor)

      Wenn ich mich recht entsinne, dann gibt es diesen Menüpunkt in neueren Versionen nicht mehr. Das funktioniert jetzt automatisch.

      Antworten
  12. RPi-Libreelec-Kodi-User

    Hallo Herr Karger, vielen Dank erstmal für die Anleitungen, nach denen ich mir hier einen RPi 3 mit Libreelec + Kodi17.6 aufgesetzt habe. Eigenlich funktioniert alles… bis auf die Wiedergabe der ÖR im Simple-IPTV-client, z.B.
    #EXTM3U
    #EXTINF:-1,Das Erste
    http://daserste_live-lh.akamaihd.net/i/daserste_de@91204/master.m3u8
    Hardwareencoding an/aus -da kommt nichts… Selbe Playlist mit Kodi 17.6 und auch VLC auf Ubuntu 14.04 tut’s aber… Liegt’s an einem Codec oder dem Format mit „@“?
    Viele Grüße

    Antworten
    1. Helmut (Beitrag Autor)

      Dazu kann ich wenig sagen da werden Sie sich den Stream näher ansehen müssen. Der braucht ja dann wohl etwas, was Kodi unter Ubuntu hat, aber gleiches Kodi unter LibreElec auf einen RasPi nicht.

      Antworten
  13. RPi-Libreelec-Kodi-User

    Hallo Herr Karger, ich glaub, ich komme der Sache näher: Habe mir mal die o.g. m3u8 mit wget runtergeladen, letzer Eintrag ist: #EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2691000,RESOLUTION=960×540,CODECS=“avc1.77.30, mp4a.40.2″
    http://daserstelive-lh.akamaihd.net/i/daserste_de@38086/index_2692_av-b.m3u8?sd=10&rebase=on, wohl für „HD“. Das statt der o.g. eingetragen, Bild und Ton kommt; möglicherweise hat da der „Simple IPTV“ client ein Problem bei der doppelten Auflösung der m3u8-Liste auf dem Raspi. Es scheint mir jedenfalls kein Hardwareproblem zu sein. Aber bin ich denn der einzige mit diesem Problem?
    Viele Grüße

    Antworten
    1. Helmut (Beitrag Autor)

      Simple IPTV wird aber reichlich genutzt, so scheint es mir. Gibts da kein Hilfeforum, oder was ähnliches, wo Sie eine Frage platzieren könnten?

      Antworten
  14. Hans

    Die MPEG-2-Patente sollen ja nun großteils erloschen sein. Aber den Lizenzschlüssel benötige ich immer noch, oder?

    Antworten

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert