3.10 Raspberry Pi Besonderheiten

RebelSDL kann auf dem Raspberry Pi wegen seiner vergleichsweise schlechten CPU sehr nützlich sein, denn die in Hollywood integrierte CPU-Wiedergabe ist darauf sehr langsam. Mit RebelSDL erhalten Sie hardwarebeschleunigtes Zeichnen und Skalieren, was die Leistung Ihres Skripts erheblich steigern kann. Es gibt jedoch einige Dinge, die Sie beachten müssen. Für den Raspberry Pi stehen zunächst zwei völlig unterschiedliche Treiber zur Verfügung:

  1. VideoCore 4 OpenGL driver (KMS/DRM): Seit 2017 wird Raspbian Jessie mit einem experimentellen vc4 KMS/DRM OpenGL Treiber ausgeliefert. Um diesen Treiber zu aktivieren, müssen Sie den sudo raspi-config ausführen, indem Sie zu den Advanced Options Einstellungen gehen und dann GL (Full KMS) und anschließend GL Driver im Menü auswählen. Sobald Sie Ihr System neu gestartet haben, wird X11 dann diesen neuen vc4-Treiber verwenden und RebelSDL wird ihn auch benutzen können. Sie müssen aber sicherstellen, dass Sie eine aktuelle Version von Raspbian Jessie (2017 oder neuer) oder Raspbian Stretch verwenden. Ältere Versionen von Jessie haben diesen Treiber noch nicht. Beachten Sie auch, dass die Aktivierung des neuen vc4-Treibers ab September 2017 die HDMI-Audioausgabe von Jessie unterbricht (nicht bei Stretch). Ab September 2017 können Sie nur dann Audio über den Kopfhörerausgang von Jessie erhalten, wenn der vc4-Treiber aktiviert ist.

  2. Raspberry Pi native driver: Dies ist ein alternativer Treiber, der direkt auf die Grafikhardware des Pi unter vollständiger Umgehung von OpenGL und X11 zugreift. Dies bedeutet, dass Sie Ihre Skripte auch außerhalb von X11 ausführen können. Dieser Treiber funktioniert auch mit älteren Versionen von Raspbian Jessie, aber nur wenn der experimentelle OpenGL-Treiber (siehe oben) deaktiviert ist. Um den nativen Raspberry-Pi-Wiedergabe zu aktivieren, müssen Sie rpi an den RenderDriver-Tag übergeben, wenn Sie @REQUIRE "rebelsdl" aufrufen:

     
    @REQUIRE "rebelsdl", {RenderDriver = "rpi"}
    

    RebelSDL verwendet dann die native Raspberry Pi-Wiedergabe. Beachten Sie, dass die native Pi-Wiedergabe außerhalb von X11 immer den gesamten Bildschirm übernimmt. Es ist nicht möglich, die native Pi-Wiedergabe im Fenstermodus auszuführen. Es wird immer der gesamte Bildschirm ausgefüllt. Alle Hollywood-Funktionen, die ein Fenster benötigen, funktionieren auch nicht mit der nativen Pi-Wiedergabe.

Standardmäßig verwendet RebelSDL den vc4 OpenGL-Treiber und wenn dieser nicht vorhanden ist, greift er auf den OpenGL-Modus zurück, der natürlich sehr langsam ist. Die native Pi-Wiedergabe wird nur aktiviert, wenn Sie ihn explizit wie oben beschrieben anfordern.


Navigation zeigen