HowTo: PS3 als VDR-Streamdev-Client unter Debian lenny

  • Hallo,


    dann teile ich euch also mal meine (Zwischen-)Ergebnisse mit! Denn dieses HowTo ist noch nicht vollständig! Es ist eben nur soweit geschrieben, wie ich selbst bin. Wie immer: Ich übernehme keine Garantie, dass euer VDR einwandfrei nach der Einrichtung wie hier beschrieben funktionieren wird, noch für eventuelle Schäden an eurer Hardware. Natürlich bemühe ich mich aber für eine möglichst übertragbare Anleitung auch auf eure PS3.


    Das (Zwischen-)Ergebnis:


    ... ist vielversprechend, aber noch nicht vom-Hocker-hauend ;):


    VDR läuft! Man kann mit der Tastatur problemlos durchs OSD navigieren. Allerdings werden manche Farben des OSDs (!) nicht korrekt angezeigt. Das Still-Image NO SIGNAL wird unverfälscht angezeigt! Das heißt, denke ich, dass auch Video unverfälscht angezeigt wird (zumindest werden keine Farben vertauscht!). Denn der eigentliche blaue Button im OSD ist grün! Und das graue Testbild ist nicht schwarz (grau)-weiß, sondern hellgelb-weiß! Aber ansonsten ist blau blau und gelb gelb. Das OSD flackert ab und an, wenn man dadurch navigiert, aber es beeinträchtigt nicht das Lesen des OSDs, denn tut man nichts, flackert auch nichts! Förderung von Epilepsie aber nicht ausgeschlossen! ;)


    Nun wird sich manch Pessimist fragen, warum ich dann schon so optimistisch bin: Ganz einfach:
    1.: Hatte ich immer nur gehört "Das kann nicht gehen, fehlende Grafikbeschleunigung". Stimmt ja auch, allerdings nutzt der in dieser Anleitung verwendete Treiber die SPUs für die Beschleunigung anstatt des Grafikchips (was ja bekanntlich nicht geht).
    2.: In Verbindung mit MythTV soll das schon ganz gut klappen! Sprich: MythTV läuft auf der PS3 mit demselben Treiber, warum sollte es dann VDR nicht auch tun?


    Ich hatte bislang noch keine Zeit gefunden, den VDR Streamdev-Server aufzusetzen, aber meines Wissens nach, ist hier nichts Besonderes zu beachten. Für den Streamdev-Server ist es letztendlich egal, zu was für einem VDR-Streamdev-Client er sein Signal streamt. Deswegen bezieht sich dieses HowTo nur auf den Client-Teil, sprich die Installation auf der PS3. Beachtet somit auch bitte, dass es nicht getestet ist, ob das Signal korrekt angezeigt wird (siehe oben). Sollte jemand schneller Neuigkeiten oder auch Fragen haben, einfach hier posten! In diesem Thread dürfen gerne auch die Erfahrungen anderer PS3- und VDR'ler gesammelt werden.


    So genug vom Vorgeplänkel, jetzt gehts los! ;) (Fortgeschrittene bitte nicht aufregen, das HowTo ist - zumindest versuchte ich das - anfängerfreundlich geschrieben! Und bis zur xorg.conf ist es darüber hinaus auch ziemlich simpel!)


    Inhalt dieses HowTos:


    0. Vorbereitung: Herunterladen der ISO-Images und brennen eben dieser auf CD
    1. Interne PS3-Festplatte einteilen und den OtherOS-Bootloader installieren
    2. Debian lenny auf der PS3 installieren, ps3-utils und kboot einrichten
    3. SPU-beschleunigter Xv-Treiber mit fertigen Debianpaketen installieren und einrichten
    4. VDR mit xineliboutput installieren und einrichten


    Benötigt werden:


    1 PS3 ;) mit 10 GB freiem Festplattenspeicher (oder bereits angelegtem 2. Festplattenbereich)
    1 PC (OS egal)
    2 CD-Rohlinge (und die Möglichkeit diese zu beschreiben ;))
    1 USB-Stick oder USB-Festplatte
    1 USB-Tastatur
    Internetverbindung am PC (zwingend) und auch an der PS3 (oder Kenntnisse einen NFS- oder Samba-Client in Eigenarbeit (kein Teil dieses HowTos) zu installieren)


    0. Bevor ihr euch an eure PS3 setzt, verweilt noch kurz am PC und ladet euch folgende ISO-Images herunter:
    a) Debian lenny Netinst-Image (powerpc) (Link aktualisiert; Installation mit squeeze nicht möglich!) und
    b) PS3 Linux Distributor's Starter Kit (PS3 LDSK) ISO-Image
    und brennt diese auf eure Rohlinge. (Ihr könnt natürlich auch mit Schritt 1 fortsetzen, wenn ihr eine langsame Verbindung habt!)


    1a) Nun geht es an die PS3:
    Zu Allererst empfiehlt sich ein Komplettbackup eures PS3-Systems auf eine USB-Festplatte (oder bei geringen Datenmengen auch -Stick), wenn ihr eure Spielstände, Audio/Video- und Bild-Dateien, Designs etc. nicht verlieren wollt, unabhängig ob dies im nächsten Schritt sogar erforderlich wird! Schaut ggf. hier nach, falls ihr nicht wisst, wie ihr das Backup durchführen könnt. Dort steht auch, was gesichert werden kann und was nicht.


    1b) Nun muss eine zweiter Festplattenbereich für euer Linux-System erstellt werden (dabei wird immer die gesamte Festplatte neu formatiert und alle Daten gehen verloren!). Wer so clever war und dies beim ersten Formatieren der Festplatte nach Kauf seiner PS3 schon berücksichtigt hat, springt zu 1c.
    Für PS3-Besitzer, die schon eine andere Linux-Distri außer Debian lenny auf dem Bereich installiert haben, können den Inhalt mit Hilfe der bootfähigen Debian-CD löschen, um nicht neu formatieren zu müssen. Ihr solltet dann in üblicher Manier am kboot-Prompt in der Lage sein, euer bestehendes System von Hand zu mounten und mittels rm -rf * leerzufegen, sofern diese Utilities auf eurem bestehenden System installiert sind. Ggf. lassen sich Teile des HowTos auch auf andere Distris übertragen, wenn ihr euer Nicht-Debian-System behalten wollt. In diesem Fall gehts dann direkt zu Schritt 3. Erwartet aber von mir keine allzu große Hilfe bei Nicht-Debian-Systemen! ;)


    Das eigentliche Prozedere zum Anlegen des 2. Festplattenbereichs: Geht im XMB auf System-Einstellungen -> Formatierungs-Dienstprogramm -> Festplatte formatieren -> (Wirklich?) - "Ja" -> Benuzerdefiniert -> Weisen Sie 10 GB dem anderen System zu -> Schnellformatierung -> (Wirklich?) - "Ja". Natürlich kann man hier auch 10 GB für das PS3-System auswählen, nur macht dies im Rahmen eines Streaming-Clients (also dieses HowTos) wenig Sinn. Mehr als 10 GB wird nämlich gar nicht benötigt! Genauso gut ist es euch überlassen, ob ihr die vollständige Formatierung wählt. Dies kann aber einige Zeit mehr in Anspruch nehmen! Je nachdem gibts einen kurzen Snack oder ein 3-Gänge-Menü! ;)


    1c) Nun muss der OtherOS-Bootloader installiert werden. Kopiert dazu den Unterordner PS3 mit Hilfe eures PCs von der gebrannten LDSK-CD auf euren USB-Stick (Ordnerstruktur beibehalten!). Diesen schließt ihr an eure PS3 an und wählt Folgendes aus: System-Einstellungen -> Anderes System installieren. Eure PS3 scannt dann nach Medien, auf der der Bootloader enthalten sein könnte. Ihr könntet genauso gut, meines Wissens nach, an dieser Stelle eine SD-/CF-/MS-Karte für diesen Vorgang benutzen. Die kopierten Dateien, also somit der Bootloader, sollte nun erkannt werden und wiederum auf eure PS3 kopiert werden.


    2.) Nun gehts so langsam zum schon etwas spannenderen Teil. ;) Kopiert den Kernel (/boot/vmlinux) von der LDSK-CD auf eueren USB-Stick (Den könnt ihr auf diesem hinkopieren wo ihr wollt, nur merken!). Schließt diesen an die PS3 an und legt auch die Debian-CD ein. Ihr seit nun bereit in die PS3-Linux-Welt einzutauchen. ;) Wählt im XMB System-Einstellungen -> Standardsystem -> Anderes System -> "Ja". Bald darauf seit ihr beim Prompt von kboot, dem Bootloader, den die PS3 zum Starten eures Linux-Systems nutzt. Da ihr eine bootfähige CD eingelegt habt, wird diese als Wurzeldateisystem (!) eingebunden. Der Befehl in Form von:


    Code
    sdx1:/boot/vmlinux initrd=/install/powerpc/initrd.gz

    sollte den Installer starten, wobei der Kernel vom USB-Stick (also gemerkten Pfad verwenden) und die Initrd von der CD geladen wird. Ein


    Code
    cat /proc/partitions

    kann euch dabei helfen, auch tatsächlich das richtige Device (den USB-Stick) anzusprechen.


    Wenn ihr nun hoffentlich im Installer seid, installiert ihr euer Debian-System (fast) wie sonst auch. Allerdings wird sich der Installer nicht sehr über fehlende Kernelunterstützung und den fehlenden Bootloader freuen, aber das sollte euch nicht stören. Fragen a la "Continue anyway?" immer mit "Yes" beantworten. Wenn ihr zum Punkt Partitionierung kommt, hatte ich ein weiteres kleines Problem: Ich wollte den erstellten Bereich nochmal manuell in Partitionen aufteilen (deswegen sprach ich bislang auch immer von dem "Bereich"). Das scheiterte jedes Mal beim Erstellen einer Partitionstabelle... Wenn man aber die geführte Installation nimmt und das ganze Laufwerk wählt, funktioniert es. Debian legt dann eine ca. 500 MB-Swap-Partition an und der Rest für das Wurzeldateisystem. Da die PS3 eh nur 10 GB Platz anbietet, finde ich, kann man damit auch ganz gut leben. Irgendwann hat man es dann doch trotz zahlreicher Fehlermeldungen des Installers geschafft und man sollte, wie sonst auch, die CD wieder entnehmen, um von der Festplatte starten zu können. Der USB-Stick bleibt aber eingestöpselt!


    Nun wird in euer Debian-System gebootet. Wohl gemerkt immer noch mit dem Kernel auf dem USB-Stick. Die Devicebezeichnung kann sich nun geändert haben! Findet sie also erneut (siehe oben) mit cat heraus.


    Der Befehl in Form von:


    Code
    sdx1:/boot/vmlinux root=/dev/ps3da1

    befördert euch in euer frisch installiertes System. Wenn alles klappt, loggt ihr euch als root an. (Tipp: Nun seit ihr an dem Punkt, an dem ihr entscheiden könnt, ob ihr nicht über SSH weitermacht. Eine SSH-Server-Installation ist nun möglich.) Als nächstes zieht ihr erstmal den fehlenden Kernel auf euer System. (Ihr könnt euch natürlich auch einen Kernel selbst kompilieren. Das Aufsetzen einer Cross-Compiling-Umgebung werde ich aber nicht auch noch beschreiben. Ich habe es auch so gemacht, erstmal diesen Kernel zu nehmen und später einen angepassten Kernel auf der PS3 zu kompilieren. Siehe dazu auch weiter unten!). Der vorgefertigte Kernel liegt als RPM-Paket auf der LDSK-CD vor. Ihr legt sie also ein und macht Folgendes:


    Code
    mount /media/cdrom0
    apt-get install rpm cpio
    cd /
    rpm2cpio /media/cdrom0/target/kernel-* | cpio -iv
    depmod -av


    Damit wird das RPM-Paket entpackt und die Abhängigkeiten für die Kernel-Module generiert. Nun muss dem Bootloader aber noch mitgeteilt werden, dass er diesen Kernel zu verwenden hat. Ihr erstellt dafür die Datei /etc/kboot.conf mit folgendem Inhalt:


    Code
    default=linux
    timeout=5
    # Timeout in Sekunden
    linux='/boot/vmlinux-2.6.25.4 root=/dev/ps3da1 video=ps3fb:mode:131'


    Die Struktur dieser Datei ähnelt also den von anderen bekannten Bootloadern, ist aber bei weitem nicht immer identisch! Die video-Option sorgt dafür, dass 720p als Auflösung verwendet wird, und zwar im ränderfreien Vollbildmodus. Dieser ist später für VDR sinnvoll, wollt ihr aber nicht, dass auf der Konsole etwas abgeschnitten wird, solltet ihr den Wert 3 statt 131 eintragen. Wenn ihr eine andere Auflösung verwenden wollt, schaut mal hier nach der passenden ID.


    Nun könntet ihr bereits in euer System booten, allerdings fehlen für den oben erwähnten Vollbildmodus noch die ps3-utils. Diese könnt ihr entweder über ein apt-Repository (das wir später für den Xv-Treiber eh nochmal brauchen werden) installieren, von der LDSK-CD (Unterverzeichnis target) als RPM-Paket entnehmen und umwandeln oder selbst kompilieren (http://www.kernel.org/pub/linu…ple/geoff/cell/ps3-utils/). Da es der bequemste Weg ist und nichts dagegen spricht (die Pakete sind genauso experimentell wie die Sourcen...), beschreibe ich hier die Installation über apt. Die Zeile für die sources.list lautet:


    Code
    deb http://people.debian.org/~seanius/ps3-experimental-packages sid main

    Ein


    Code
    apt-get update && apt-get install ps3-utils

    würde genügen. Wollt ihr aber den passenden öffentlichen Schüssel noch vorher installieren, schaut mal hier vorbei. Dort findet ihr ihn. Wenn ihr doch lieber die Quellen nehmen wollt, installiert ihr diese in üblicher configure-make-make install-Manier. U.u. könnt ihr aber Probleme mit den Sourcen bekommen (siehe cyrils Beitrag weiter unten).
    So, nun seit ihr endlich bereit, euer Debian-System zu booten. Ich drück euch die Daumen!


    3.) So, nun gehts ans Eingemachte. ;) Der SPU-beschleunigte Grafiktreiber ist an der Reihe. Diesen könnt ihr scheinbar gefahrlos (oder kommt das Farbproblem wie oben beschrieben womöglich hiervon, da es eigentlich ein Paket für sid ist??) über schon bereits oben erwähntes apt-Repository installieren. Ihr fügt es also, sofern nicht schon geschehen nun hinzu, mitsamt dem zugehörigen öffentlichen Schlüssel (siehe ebenfalls vorheriger Abschnitt).


    Nun führt


    Code
    aptitude update
    aptitude install xorg xserver-xorg-video-spu

    aus (und geht je nach Verbindung einen Kaffee oder Tee trinken).


    Nun wirds endlich mal ein wenig herausfordernd ;), denn meine Konfiguration ist - wie beschrieben - auch noch lange nicht perfekt. Um den richtigen Treiber auch zu laden, legt man dies in der /etc/X11/xorg.conf fest. Meine aus verschiedenen Konfigurationen, die man im Netz so findet, zusammengestückelte, sieht wie folgt aus:



    Wie gesagt: Zusammengestückelt! Eventuell ist nämlich einiges sogar überflüssig... Jedenfalls wird der richtige Treiber geladen, wir können 720p verwenden und der X-Server beschwert sich nicht, wenn weder Maus noch Tastatur angeschlossen sind.


    Für den Treiber ist auch das spufs-Dateisystem erforderlich:


    In /etc/fstab hinzufügen:

    Code
    none            /spu            spufs   defaults        0       0


    Code
    modprobe spufs
    mkdir /spu
    mount /spu


    4.) So, xineliboutput, streamdev und natürlich mitsamt unserem Ziel, dem VDR naht:


    Code
    aptitude update
    aptitude install vdr vdr-plugin-xineliboutput vdr-plugin-streamdev-client xineliboutput-sxfe libxine1-xvdr alsa-base alsa-utils

    Nun solltet ihr noch ein paar Konfigurationsdateien anpassen.


    /etc/vdr/plugins/plugin.xineliboutput.conf:

    Code
    --local=none
    --primary
    --remote=127.0.0.1:37890
    --audio=alsa
    --fullscreen

    Erläuterungen: Da wir uns später mit dem Client am Server anmelden, brauchen wir kein lokales Frontend. Das Primary-Frontend wird für die Ausgabe verwendet, dementsprechend muss dies Xineliboutput sein. Wir verbinden uns an localhost und benutzen Alsa zur Soundausgabe. "--fullscreen" ist selbsterklärend - es werden keine schwarzen Ränder zu sehen sein (sofern euer ps3videomode auch im Vollbildschirmmodus konfiguriert ist!).


    /var/lib/vdr/setup.conf (Auszug, relevantes für die Videoausgabe und das OSD):


    /var/lib/vdr/remote.conf:


    /etc/X11/xinit/xserverrc:

    Bash
    #!/bin/sh
    
    
    # $Id: xserverrc 189 2005-06-11 00:04:27Z branden $
    
    
    # exec /usr/bin/X11/X -nolisten tcp
    exec /usr/bin/X11/X


    ALSA-Installatation:


    Code
    aptitude install alsa-base alsa-utils alsa-oss oss-compat


    /etc/modprobe.d/aliases (Auszug):

    Code
    alias char-major-14 soundcore
    alias char-major-116 snd
    alias snd-card-0 snd-ps3
    alias sound-slot-0 snd-card-0
    alias sound-service-0-0 snd-mixer-oss
    alias sound-service-0-1 snd-seq-oss
    alias sound-service-0-3 snd-pcm-oss
    alias sound-service-0-8 snd-seq-midi


    /etc/modprobe.d/alsa-base.conf (Auszug):

    Code
    install sound-slot-0 /sbin/modprobe snd-card-0
    # install sound-slot-1-7 ggf. auskommentieren!


    Code
    touch /etc/asound.state


    Die Lautstäre sollte noch mit alsamixer z.B. angepasst werden.


    So, Zeit für den Start :]:


    Ändert den Eintrag in /etc/default/vdr auf ENABLED=1.


    Code
    /etc/init.d/vdr start
    xinit -e vdr-sxfe --video=xv --aspect=16:9 --fullscreen --width=1280 --height=720 --post=tvtime:method=Linear,cheap_mode=1,pulldown=0,use_progressive_frame_flag=1 xvdr+tcp://127.0.0.1


    Nun solltet ihr um einen Streaming-Client reicher sein ;). Zumindest rudimentär erstmal. Noch kurz die versprochene



    Kernel-Kompilierung (auf der PS3) (obsolet, Vanilla-Kernel nutzbar!)


    Aktuell ist derzeit 2.6.29. Aus irgendwelchen Gründen schlägt "make install" bei mir fehl, dies ist hier berücksichtigt.



    Bitte helft mir noch das Farbproblem zu beheben und gibt Feedback, ob es geklappt hat und auch was ich beim nächsten HowTo besser machen könnte, da dies mein erstes VDR-HowTo ist. Sicherheitstechnisch ist dieses HowTo sicherlich auch unterste Schiene, es ist eben erst quick&dirty. ;)


    ToDo:

    • OSD korrekt anzeigen lassen (überhaupt möglich?), dazu passenden Textausschnitt aus c't 11/07, S. 202: "Je nach Rechenleistung ruckelt das Bild womöglich und die Menüs sind grün verfärbt und nicht durchsichtig, wenn nur der vesa-Treiber aktiv ist." - Also ein Treiberproblem?
    • ALSA-Konfiguration beschreiben
    • Streamdev-Client-Konfiguration beschreiben
    • VDR-Ausgabe automatisch starten lassen
    • Fehlermeldungen ausmerzen


    Zum Schluss noch einige nützliche Links, die auch den wesentlichen Teil meiner Quellen ausmachten und mir als Ausgangspunkte zur weiterführenden Recherche dienten:


    PS3 Debian Install HowTo
    (experimental) ps3 packages for debian
    Building an updated kernel for the PS3
    How-to: Smooth playback with mythtv (or any other video app)
    Platform Specific Utilities


    Viele Grüße und viel Erfolg!
    George


    EDIT: setup.conf geringfügig angepasst, ToDo-Abschnitt hinzugefügt
    EDIT2 (04.04.09): Fehler, den cyril bzgl der Kernel-Installation ansprach, korrigiert
    EDIT3 ("): ps3-utils-Abschnitt angepasst, von den Sourcen wird nun abgeraten; Dank an cyril
    EDIT 4 (09.04.09): erneut ps3-utils-Abschnitt angepasst
    EDIT 5 (23.05.09): Debian-ISO-Image-URL aktualisiert; /etc/kboot.conf korrigiert


    UPDATE (23.05.2009): Weder der Kernel von der LDSK-CD als auch ein aktueller Vanilla-Kernel haben das ps3vram-Kernelmodul aktiviert. Dieses nutzt den Video-RAM z.B. als Swap-Space. Eventuell ist hiermit ein Performance-Gewinn zu erzielen. Ein aktueller Vanilla-Kernel (2.6.29.4) enthält zwar (fast) alles Notwendige, jedoch ist das Modul nicht in der Kernel-Konfiguration anwählbar. In der Zwischenzeit ist außerdem ein neuerer PS3VRAM-Treiber erschienen. Die Patches findet man unter http://git.kernel.org/?p=linux…3026b06dc3664279cfbf70155 (Patch 1) und http://git.kernel.org/?p=linux…73d4ed5f48d95af211b6fcc06 (Patch 2). Die Reihenfolge sollte beibehalten werden. Es sind bei beiden Patches nur de Anpassungen in drivers/mtd/devices für einen aktuellen Vanilla-Kernel erforderlich! Die Datei drivers/block/ps3vram.c ist der 'alte' Treiber, der auch von der Makefile im selben Verzeichnis aufgerufen wird, nicht aber durch die dazugehörige Kconfig. Ich bastel das grade zusammen und melde mich dann nochmal, ggf. auch mit einem .deb-Sourcen-Paket. (Kernel reiche ich nach, muckt noch ein bisschen beim Umschalten des videomodes beim Booten.)


    ps3vram mit geeignetem Kernel als Swap-Device nutzen:


    /etc/init.d/bootmisc.sh (Auszug):


    UPDATE 2: Mit vdr-fbfe funktioniert es nun, auch mit Ton! Allerdings ist die Bildqualität noch etwas bescheiden und vdr-fbfe frisst 130% (?) CPU laut top.


    Vdr-fbfe starte ich momentan folgendermaßen:


    /usr/bin/start_vdr-output.sh:

    Bash
    #!/bin/sh
    /bin/fuser -k /dev/dsp &>/dev/null
    /usr/bin/clear
    /usr/bin/vdr-fbfe --aspect=16:9 --fullscreen --width=1280 --height=720 --post=tvtime:method=Linear,cheap_mode=1,pulldown=0,use_progressive_frame_flag=1 xvdr+tcp://127.0.0.1

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

    14 Mal editiert, zuletzt von george ()

  • So, irgendwie scheitert es daran, dass mein LCD-TV immer nur bunte Streifen auf dem ganzen Screen anzeigt. Das aber nur, sobald sich der Streamdev-Client erfolgreich verbunden hat...


    Jemand ne Idee?

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Kleiner Fehler in deinem Howto:


    Wenn du den Kernel von der ps3-Starter cd installieren willst, musst du im / Verzeichnis und nicht wie beschrieben im /boot sein!


    Das rpm Paket erwartet / als Ursprung.


    Grüße

  • Oh, ja, stimmt natürlich. Ist korrigiert. Danke!


    Aber weiter bin ich immer noch nicht gekommen... Kann doch nicht sein das Ganze.

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Ich hab jetzt auch mein Debian lenny auf der PS3 und werd die Tage mal von meinem Server streamen und ein wenig spielen, vielleicht komme ich ein wenig weiter.

  • Das ist nett danke!


    Weil ich gar kein Plan mehr hatte (auch nach Recherche hier im Forum), hab ich mal alles durchprobiert, was mir so einfiel... Unabhängig davon, ob ich überzeugt davon war, es könne was ändern oder eben nicht. Einfach drauf los. ;)


    Also was ich schon probiert habe ist:

    • Andere Auflösung
    • Herumtüfteln an Deinterlacing und Software-Scaling (An / Aus / andere Methode)
    • Anderer Kommunikationsweg zum xineliboutput-Backend (TCP, UDP, Pipe)
    • local-frontend von xineliboutput
    • andere Streamdev-Server(!)-Einstellungen


    Was ich noch nicht ausprobiert habe:

    • Grafik-Treiber statt aus dem Debian-Paket selbst zu kompilieren (da hat mich dann die Motivation verlassen, werd ich aber noch machen)
    • Interlaced anstatt progressive-Ausgabe (überhaupt technisch möglich?), würde andere Modeline voraussetzen, denke ich - und diese habe ich nicht und bekam ich mit get-edid auch nicht heraus...


    EDIT: Könnte die Modeline daran Schuld sein? Die ist "gestohlen" aus einer anderen Konfiguration, aber das OSD wird ja bei nicht bestehender Streamdev-Verbindung (einigermaßen) korrekt angezeigt! Und Xorg produziert ja auch keine Fehlermeldung diesbezüglich! Der X-Sever stürzt dann ebenso auch nicht ab, er zeigt nur ein krudes Bild.
    EDIT2: Als Streamdev-Server nahm ich (erstmal) übrigens die derzeit "aktuelle" ctvdr 6.2, die noch auf etch aufbaut.

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

    2 Mal editiert, zuletzt von george ()

  • Sagmal wie bootest du ins XMB zurück?


    Das Tool: ps3-boot-game-os liefert bei mir folgenden Fehler:


    /usr/local/sbin/ps3-flash-util
    Error while loading shared libraries: libps3-utils.so.2 cannot open shared object file: no such file or directory.


    hattest du das problem?

  • Ja, ich hatte so einen netten, ähnlichen Fehler... Deswegen hatte ich mal die ps3-utils aus dem Debian-Paket genommen, und mal aus den Sourcen. Dachte ich hätte nur das Problem...


    Derzeit mach ich das ganz banal so: Debian mit shutdown -h now herunterfahren. Kurz warten und die PS3 mit einem langen Druck auf die Power-Taste wieder einschalten, bis zum ersten Piep. Und dann jedes Mal wieder die die Display-Einstellungen vornehmen...


    Ein wenig lästig und zeitaufwendig derzeit...

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Update:


    die sourcen von kernel.org sind ja mal mehr als daneben.


    Installier dir das Paket ps3-utils von dem obigen repo und führ das tool:


    boot-game-os aus.


    Obwohl "make clean" sind die libs und die bins immer noch drauf von den Sourcen.


    Das Paket und das tool von deinem Repo funktionieren.

  • Ok, gut zu wissen, ich hatte da kein Unterschied, zumindest im Ergebnis, dass es nicht funktionierte (wie die Fehlermeldung dann war, keine Ahnung...)


    Vielleicht liegt es dann bei mir daran, dass ich die alten Libs somit noch installiert habe? Und da ich die PS3 gerade nicht an habe, frage ich mich grad: Die Libs müssten doch identisch heißen?! Scheinbar nicht... Ich denke, ich krieg sie dann hoffentlich über das Dateidatum raus.


    Das HowTo pass ich gleich noch an.

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Nein, die alten libs und bins sind installiert auch bei mir weiterhin.
    Jedoch heissen sie anders.


    Die libs/bins von kernel.org fangen alle mit ps3* an.
    Die vom Paket nicht.


    Und das tool: boot-game-os war bei dem Paket dabei und startet problemlos mein XMB mit den normalen Einstellungen.

  • Hmm ok, ich versuch das gleich mal... Ich bin jetzt grad iwie verwirrt wie ich letzens vorgegangen bin: Erst aus dem Paket installiert und dann weils nicht geklappt hat, aus den Sourcen oder umgekehrt... Naja, ist ja auch mehr oder minder wurscht nun, sorry, für die Verwirrung. Bei mir hatte es aber auch noch nie funktioniert und ich habe es immer über "boot-game-os" (nicht ps3-...) versucht, kann sein, dass ich das dann fälschlicherweise mal am kboot-prompt eingegeben habe... Aber das müsste eigentlich theoretisch genauso klappen. Weil ich festgestellt habe sobald z.B. nano installiert ist, kannst du es auch beim kboot-Prompt eingeben...

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Ich werd mir jedenfalls in den nächsten Tagen mal nen VDR draufknallen und die Ergenisse posten.


    Sagmal welche Firmware hast du auf deiner ps3?


    Ich hab jeweils neueste.

  • Ich habe nun auch die neueste (2.7), allerdings war zum Zeitpunkt des Howtos noch 2.6(.x?) aktuell und da ich ja eh nicht weitergekommen bin, habe ich seit dem FW-Update nicht nochmal mein Debian lenny gebootet. Somit konnte ich logischerweise nicht testen, ob das FW-Update irgendeinen netten (positiven wie negativen) Nebeneffekt auf dieses HowTo hat. Aber wenn dann schon eher auf das boot-game-os-Verhalten - wobei ich da nun auch nicht mehr sicher bin, wie ich (siehe obiger Beitrag) letztes vorgegangen bin - als auf das deutlich überwiegende Videoausgabeproblem. Aber mal schaun...


    EDIT: Warum schreibst du "jeweils" neueste? Bist du so einer mit 2 PS3s ;) ?

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

    2 Mal editiert, zuletzt von george ()

  • Ja, du lachst. ;) Aber es soll tatsächlich Leute geben, die sich zwei PS3s angeschafft haben... Einer schrieb mal so in der Art (wörtlich krieg ichs nicht mehr hin ;)) "eine für Game-Content ausm PSN Store und zum gamen und eine für alles Andere"... Also das gibts. Aber was und ob es überhaupt was bringt, sei mal dahingestellt. :D


    Also meintest du das Modell: Das ist bei mir eine PS3 60GB. Meine erste hab ich im Juni 2007 gekauft. Dann folgten zwei Austauschmodelle (ersteres wegen ominösen Laufwerksdefekt nach Transport und zweiteres wegen mindestens genauso ominösen Netzteilschaden)... Btw hab ich meine jetzige PS3 nun schon zigmal transportiert und sie blieb heil, also nicht denken "Ne PS3 sollte man besser nicht transportieren", Quark. Mir konnte auch niemand was wirklich Präzises sagen, warum diese Fehler auftraten (die Geräte waren nicht sofort defekt!). Nur beides sind nicht gerade seltene Fehler. Das ganze Dilemma ist - mein Fall inklusive als nur einer von vielen - im offiziellen PlayStation.com-Forum nachzulesen (dort ist mein Nick GT-Schorsch, wie auch im PSN).


    EDIT: Mit neuestem Modell meinst du die 80GB-Variante?

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

    Einmal editiert, zuletzt von george ()

  • Also, es gibt eigentlich nichts Neues, außer, dass es bei mir mit den ps3-utils nun auch bestens klappt.


    Ich hab mir noch überlegt, vielleicht könnte es auch an dieser merkwürdigen ShadowFB-Einstellung in der xorg.conf liegen? Das wollte ich zumindest gleich mal ausprobieren. Und ich installier mir n neueren Kernel und n neueres kboot-Image (sofern es eins gibt, man solle eigentlich auf petitboot umsteigen (-> iieh, mit GUI ;) - brauch ich nicht wirklich für meinen VDR...). Ich glaub zwar auch nicht, dass es das ist, aber ausprobieren... Den Xv-Treiber hab ich bislang auch noch nicht mit dem durch die Sourcen ersetzt. Ich bleib aber dran!

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Aaalso, neue (aber leider nicht erfolgreiche) Zwischenergebnisse:


    Einen vanilla-Kernel (ja, direkt von kernel.org und nicht der git-geoff-Kernel!) zu kompilieren und zu verwenden klappt prima - hat mich aber auch nicht weitergebracht.


    Bevor man den Xv-Treiber installieren kann, muss man dies zuvor schon mit spumedialib getan haben. Die Sourcen sind auch wieder überaus bockig... Ich hörte beim Fehler:


    Code
    spu_yuv2argb_scaler.c:(.text+0x18a4): undefined reference to `__nldbl_printf'

    der sich bis auf die ID hinter "text+" noch einige Male wiederholte, dann auf, weil ich über diesen Fehler erstmal nichts Relevantes fand...


    Daraufhin benutzte ich wieder die Pakete libspu-medialib-dev und libspu-medialib0 aus dem Repository, womit ich dann erstmal auch den Xv-Treiber mit einiger Umbenennerei (siehe hier beschrieben) auch kompilieren konnte. Ich nutzte dazu übrigens diesen configure-Aufruf:


    Code
    ./configure --prefix /usr LIBSPE2_LIBS=/usr/lib LIBSPE2_CFLAGS=/usr/lib LIBSPEUTILS_LIBS=/usr/lib LIBSPEUTILS_CFLAGS=/usr/lib LDFLAGS="-L/usr/lib" LIBS="-L/usr/lib" CFLAGS="-I/usr/include" CXXFLAGS="-I/usr/include"


    Das hat dann aber auch wieder nichts gebracht. Es endete beim Xorg-Start mit:


    Code
    X: symbol lookup error: /usr/lib/xorg/modules/drivers//spufbdev_drv.so: undefined symbol: yuvscsc_init_yuv2argb_scaler

    Was haben die Doppel-Slashs (//) da zu suchen? Sollte da nicht nur einer sein?!


    Achja: Und zum Farbproblem hab ich noch was gefunden. Allerdings bin ich nicht ganz sicher, ob das selbe Problem gemeint ist:


    Zitat

    Color problem and flickering were due to wrong video scan mode in frontend. Default mode was "detect" which apparently used interlaced video scan while I have set up progressive (720p) mode, changing this to progressive did the trick.


    Quelle: PSUbuntuForums
    Also beim OSD kann das ja nochmal anders sein... Und wenn nicht, weiß ich nicht, was ich bei interlaced/progressive noch ändern soll, denn auch den Deinterlacer hatte ich mal an und aus gestellt als auch progressive und interlaced-Auflösungen genutzt...


    Fehler-Logs:
    spu-medialib config.log
    xf86-video-spu config.log
    Xorg.0.log

    System 1: Asus P5N7A-VM, Core2Duo 3 GHz, 4 GB RAM, 3x 640 GB WD6400AAKS, 2x DVB-T: Terratec Cinergy 1200, vdpau-Ausgabe über xineliboutput, Ubuntu 9.10 karmic mit aktuellem Kernel, VDR 1.6-Paket von Ubuntu
    System 2: Asus A7V, AMD Athlon ~ 1 GHz, 384 MB RAM, 500 GB HDD, DVB-S FF: Hauppauge Nexus-s Rev. 2.1, DH101 m. LCD, Debian lenny, Kernel 2.6.29.3, nvram-wakeup, VDR 1.6 (e-Tobi: experimental//multipatch)

  • Das Doppelslash kannst du meistens im configfile dass zum kompilieren verwendet wird ändern. Einfach dann den Pfad ohne slash oder wie auch immer anpassen.


    Sind schlampigkeitsfehler im Configure-Script. Ist mir schon oft untergekommen.
    Das Wochenende werde ich mal nen vdr aufsetzen und mich daran probieren.

Jetzt mitmachen!

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