Howto & Erfahrungsthread : Sony PS3 als Ausgabedevice

  • nochmal etwas gebastelt da mich ein paar dinge doch etwas genervt haben. transcoding von .vdr funktioniert zwar aber die videoliste wird durch die gefühlten 17 million einträge mit vielsagenden namen wie 001.vdr dann doch unbenutzbar. mal ganz davon abgesehn das nicht jede aufnahme auch überall im haus verfügbar sein muss/soll ;).
    live tv über streamdev mit externremux geht zwar aber das externremux wollte ich für andere sachen benutzen von daher war auch auch eher unglücklich.


    "zweckentfremdet" man die transcoding funktion des svn mediatomb kann man da einige lustige dinge machen die das handling wesentlich verbessern und die lösung fast wohnzimmertauglich machen.


    momentan hab ich folgendes gebastelt:
    live tv mit transcoding in mediatomb, die art der verarbeitung ist für jeden kanal einzeln einstellbar
    aufzeichnungen als ein item in der videoliste, ebenfalls mit einstellbarer verarbeitung
    aufzeichnungen werden im vdr "freigegeben", es ist nur das streambar war auch freigegeben ist


    wie man einen mediatomb aus dem svn aufsetzt ist unter http://www.deadlock.dhs.org/jin/mt-tr-howto.txt beschreiben, keine grosse sache.


    bestehende konfiguration und datenbank wirft man am besten weg und startet mit einer sauberen neuen, beim ersten start wird eine neue erzeugt die angepasst werden muss. meine config liegt als spickzettel bei.


    zunächst erstmal den "dlna/ps3 modus" aktivieren, danach sollte mediatomb im dash der ps3 auftauchen und mp3´s,... wiedergeben


    Code
    1. <config>
    2. <server>
    3. ...
    4. <protocolInfo extend="yes"/>
    5. ...
    6. </server>
    7. ...
    8. </config>


    für die tv streams und aufzeichnungen benutzte ich dateien welche die quelle und verarbeitung parameter angeben. der verwendeten datei erweiterung weise ich im mt dann dummy mime types zu und bestimmte für die mime types die weiterverarbeitung


    die dateien sehen dann zB so aus:


    Premiere 1.sdtv-stream

    Shell-Script
    1. #!/bin/bash
    2. url=http://127.0.0.1:3000/TS/S19.2E-133-2-10
    3. opts=" -ovc copy -oac copy "


    Basic_Instinct.vdr-recording

    Shell-Script
    1. #!/bin/bash
    2. files="/var/lib/video.00/Basic_Instinct/2007-12-28.20.05.50.99.rec/0*.vdr"
    3. opts=" -ovc copy -oac copy "


    die erweiterungen werden in der config.xml auf mime types gemappt


    für die mime types wird dann ein transcoding verfahren festgelegt, für die verfahren ein skript, der ziel mime type und die bufferstettings, was die einzelnen tag genau machen steht unter http://www.deadlock.dhs.org/jin/mt/transcoding.txt



    zusammengefasst macht die konfiguration das folgende: wenn ein client eine datei mit der erweiterung .sdtv-stream sehen will dann starte mt-mencoder-stream-mpeg.sh und übergebe den namen der gewünschten datei an das skript. bei der erweiterung .vdr-recording mach das gleiche aber nimm mt-mencoder-recording-mpeg.sh.
    als zweiten parameter wird der name eines fifos übergeben der in den buffer läuft und dann zum client gestreamt wird.


    die beiden skripte sind relativ langweilig


    mt-mencoder-stream-mpeg.sh

    Shell-Script
    1. #!/bin/bash
    2. #
    3. . "$1"
    4. exec /usr/local/bin/mencoder $url $opts -of mpeg -o $2


    und
    mt-mencoder-recording-mpeg.sh

    Shell-Script
    1. #!/bin/bash
    2. #
    3. . "$1"
    4. exec cat $files | /usr/local/bin/mencoder $opts -of mpeg -mpegopts format=dvd -o "$2" -


    die datei die übergeben wird (siehe oben) ist ebenfalls ein bash skript das ausgeführt wird und die variablen $file/url und $opts setzt, abschliessend wird mencoder mit den entsprechenden optionen gestartet


    die dateien für die sender habe ich von hand erstellt, die files für die aufnahmen erzeuge ich über ein skript das über die reccmds des vdr (rote taste in den aufnahmen) gestartet wird


    die einträge für die reccmds

    Code
    1. Fuer PS3 bereitstellen : /usr/local/bin/addtomt streamcopy
    2. Fuer PS3 bereitstellen (Umwandeln) : /usr/local/bin/addtomt transcode


    und das skript (für anregungen wie ich den aufzeichnungsnamen rausbekomme wär ich dankbar)


    das verzeichniss in dem die datein landen wird durch mediatomb überwacht und neue dateien importiert so das diese mit kurzer verzögerung dort auftauchen und abspielbar sind


    bei aufnahmen die durch remuxen nicht abspielbar sind (z.B. bei schlechtem wetter, vdr neustart oder vollmond aufgenommen) gibt der zweite punkt an das nicht geremuxt werden soll sondern neu codiert. die ps3 ist etwas kleinig was die vdr aufzeichnung anbelangt, einige recording brechen reproduzierbar an einer stelle ab, jeder andere mir verfügbare hard/software player ruckelt an der stelle nicht mal, besonders ulkig wirds wenn man den das live bild streamed, alles funktioniert und die aufnahme der sendung nicht abspielbar will, falls da jemand weitere infos hat immer her damit, solang helf ich mir mit dem transcoding der aufnahmen die nicht so wollen wie ich


    falls jemand rausfindet wie man aus dem ts stream eines hdtv kanals etwa baut das die ps3 wiedergibt ist das mit relativ wenig aufwand eingebaut


    fragen und anregungen wie immer jederzeit gerne

    Dateien

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • hi
    erstmal danke fuers zusammen schreiben.. gute arbeit ..


    aber .. wie siehts dabei mit DolbyDigital aus?


    mfg mentox

  • bisher noch nicht drauf geachtet, grad mal geschaut, live ja, recordings nein, wobei das glaub ich an meinem vdr liegt, totem zeigt in den .vdr´s keinen ac3 stream

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe


  • danke,


    ja, leider das gleiche, replex hat da ja einiges an optionen, helfen tut leider keine oder ich hab die richtige kombination noch nicht gefunden. passiert bei den dateien auch wenn ich sie erst remuxe dann streame,... so wirklich schlau bin ich daraus nicht geworden, an der stelle ist meines erachtens nichts besondere, weder kommt ein audiostream dazu noch fällt einer weg, das seitenverhältniss ändert sich auch nicht

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • Hallo zusammen,


    ich habe heute den ganzen Nachmittag/Abend damit verbracht, das Zeug von dunar in meinen mediatomb einzubauen, damit ich auf der PS3 endlich auch fernsehen kann. Leider klappt es bei mir nicht so ganz und ich hoffe irgendjemand kann mir da auf die Sprünge helfen.


    Media Tomb und VDR laufen auf dem gleichen Rechner. Das Stream Dev Plugin funzt, da ich über den Browser eines anderen Rechners mit :3000/TS/blabla den Stream empfangen kann. Ich würde diesbezüglich gerne etwas Debug output posten, aber leider taucht weder im /var/log/messages noch im mediatomb.log etwas auch (übrigens auch nicht wenn ich einen normalen Film abspiele. Er zeigt im mediatomb.log lediglich Filme die er aus rechtetechnischen Gründen nicht in die DB hinzufügen kann an).


    Ich habe die Dateien aus dem Tarball genommen, da es beim ändern meiner config.xml nicht funktioniert hat und lediglich die DB an meine MySQL Datenbank angepasst und den Tag IP hinzugefügt, da er ansonsten auf einer falschen IP meines Servers gehorcht hätte. Die mt-mencoder Skripte habe ich in das /etc/mediatomb/ Verzeichnis kopiert, welches von MediaTomb als Konfig Verzeichnis verwendet wird. Die Skripte sind ausführbar.


    In meinem /video Ordner, welcher als Root Verzeichnis für MediaTomb dient habe ich einen unterordner namens VDR angelegt, in dem mal 3 Beispiels Sender Dateien (mit Endung .sdtv-strem) liegen. Diese Dateien sind ebenfalls ausführbar. Rufe ich eine dieser Dateien von der PS3 auf, kommt die Standardmeldung "Dateiformat wird nicht unterstüzt" oder so ähnlich (habe sie jetzt leider nicht im Kopf).


    Deshalb habe ich versucht, in der .sdtv-stream, welche ja eine einfache Skript Datei ist, ein simples Echo in eine Datei schreiben zu lassen. Deshalb vermute ich, er diese Datei irgendwie falsch interpretiert. Wie gesagt, die config.xml ist aus dem Tarball. Das ganze läuft auf Gentoo und MediaTomb in der Version 0.10.0 über emerge. Auf der PS3 habe ich FW 2.10
    Ich hoffe irgend jemand kann mir zumindest verraten, wie ich da vernünftige Debug Info bekomme.


    Zitat

    und das skript (für anregungen wie ich den aufzeichnungsnamen rausbekomme wär ich dankbar)


    Da der vollständige Pfad der Aufnahme als Parameter bei reccmd an das aufgerufene Skript übergeben wird, solltest Du diesen Pfad herausbekommen. Mit einem sed sollte sich dieser Pfad auf den Namen der Aufzeichnung reduzieren lassen. Leider sind aber Regular Expressions ein Fremdwort für mich und ich kann Dir nicht die Syntax dafür geben.



    Bezüglich HDTV habe ich hier im Forum ein Script namens ps3_transcode.sh gefunden, allerdings finde ich den zugehörigen Thread im Moment nicht, mit dem ich erfolgreich eine SDTV VDR Datei in MP4 umgewandelt habe, die ich auf der PS3 abspielen konnte. Allerdings funzt das Skript nicht mit H264PES Dateien. Diesbezüglich habe ich den mplayer um den Demuxer h264pes nach diesem Patch erweitert.


    Shell-Script
    1. #!/bin/sh
    2. mencoder $1 -demuxer h264pes -vfm ffmpeg -lavdopts threads=2 \
    3. -quiet -ovc x264 -oac faac \
    4. -x264encopts subq=6:pass=1:bitrate=4000:bframes=3:\
    5. partitions=p8x8,b8x8,i4x4:weight_b:threads=auto:nopsnr:nossim:\
    6. frameref=3:mixed_refs:bime:brdo:level_idc=41:direct_pred=auto:\
    7. trellis=1 \
    8. -faacopts br=128:mpeg=4 \
    9. -of lavf -o "$1.mp4"


    Mit diesem Aufruf bekomme ich aus einer HD VDR Aufnahme ein MP4 File raus, das zumindest mal am PC abspielbar ist. Dieser Aufruf stammt ebenfalls nicht von mir, aber ich finde auch hierzugehörigen Thread leider im Moment nicht. Ich vermute, dass durch das schrauben an ein paar Parametern dieses Aufrufes, das Ergebnis auch auf der PS3 laufen sollte, was ich allerdings noch nicht geschafft habe. An eine Echtzeit konvertierung ist zumindest auf meinem AMD64 X2 3800 nicht zu denken. Aber in diesem Fall würde es mir persönlich schon reichen, die aufgezeichneten Filme in MP4 abzulegen und dann auf diesem Weg anzusehen.


    Vorab schon mal Danke!

  • Hi,


    ein Transcoding mittels ffmpeg lief schon mal mit SD-Material...:


    das stammt aus:
    Mein neuer LCD-TV hat Hunger auf HD - womit fütter ich ihn ?
    und lief zumindest mit der FW 1.93 auf der PS3.


    Grüße
    Funzt

  • marioais


    Die Skripte müssen in den Path (z.B. /usr/local/bin), sorry hatte ich vergessen zu erwähnen.


    Kann es sein das die Gentoo "Paket" kein Transcoding unterstützt? Der Entwickler verweist immer auf die SVN Version welche sich mit 0.11.0-pre meldet, könnte sein das die Version zu alt ist und/oder --enable-external-transcoding nicht gesetzt ist.


    Schau bei den HD Aufnamen mal auf die Auflösung 1920x1088 mag die Konsole nicht, 720 und 1080 sollten laufen, wobei ich bisher nur 720 ans laufen gebracht habe.

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • dunar


    Danke! jetzt funktionierts. Dass die Skripte im Pfad liegen müssen, darauf hätte ich selbst auch kommen können, aber man sieht ja oft den Wald vor lauter Bäumen nicht. Im Endeffekt ist es aber doch an der falschen Version gelegen.


    Die konvertierten Filme mag die PS3 auch mit 720 nicht. Aber das ist ja wieder eine andere Geschichte.

  • Hallo dunar,


    also ich hab dein Paket mal bei mir installiert und es funktioniert mal und mal
    nicht. Hier aber ein paar Anregungen für die Skripte:


    Um alle vdr Files zu erwischen kann mal den Pfad auch so aufrufen:


    Code
    1. /var/lib/video/ZDF-History/2008-02-17.23.30.50.99.rec/???.vdr


    Linux sortiert das ergebniss autoatisch numerisch und man erwischt alle 255 Files.


    Da Mencoder auf Pipes alergisch reagiert würde ich dir folgendes empfehlen:


    Code
    1. mencoder $opts -o test.mpg $pfad/???.vdr


    Wegen dem Aufnahmeverzeichnis:

    Code
    1. vdr:/var/lib/video/ZDF-History/Meine_teure_Geliebte/2008-02-17.23.30.50.99.rec# dirname `pwd`
    2. /var/lib/video/ZDF-History/Meine_teure_Geliebte
    3. vdr:/var/lib/video/ZDF-History/Meine_teure_Geliebte/2008-02-17.23.30.50.99.rec# PFAD=`dirname /var/lib/video/ZDF-History/Meine_teure_Geliebte/2008-02-17.23.30.50.99.rec`; dirname $PFAD
    4. /var/lib/video/ZDF-History
    5. vdr:/var/lib/video/ZDF-History/Meine_teure_Geliebte/2008-02-17.23.30.50.99.rec#
  • danke für die anregungen.
    die pipes habe ich eingebaut da ich mich erinnere probleme bei der wiedergabe von mehr als einem segement gehabt zu haben, evtl täusch ich mich da aber auch, ich überprüf das nochmal und pass das ganze dann ggf an.



    hat eigentlich jemand schonmal mit spu-libmedia und dem spu-fbdev für X gespielt und hat da erfahrungen? das retail os ist zwar ganz nett aber so wirklich gut für die medienwiedergabe ja nun nicht geeignet. im psubuntu forum gibt es einen thread bzgl mythtv wiedergabe (sd material) über die ps3 unter ubuntu bei zuhilfenahme von spu-fbdev, das klang an sich recht vernünftig, zumal es angeblich auch unter 2.10 funktioniert

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • Hallo zusammen,


    ich bin noch immer dabei die HD Aufzeichnungen vom VDR so herzurichten, dass ich diese auf der Ps3 als mp4 wiedergeben kann. Bis auf die Synchronität zwischen Bild und Ton funktioniert das auch schon mit dem Script von http://gentoo-wiki.com/TIP_Encode_Video_for_PS3, dem gepatchten MPlayer für h264pes. Das Skript habe ich um folgende Optionen erweitert:


    Code
    1. -demuxer h264pes -vf crop=1920:1080


    Bei dem avi File, dass nach dem Mencoder Aufruf erzeugt wird, ist Bild und Ton noch synchron. Der Fehler passiert also irgendwo bei den MP4Box Aufrufen, aber ich Blicke da einfach nicht ganz durch, wie man das synchron bringen könnte. Die Information vom zeitlichen Versatz zwischen Bild und Ton muss noch vorhanden sein, da mir MPlayer beim abspielen der mp4 Datei einen Unterschied bei den Bild und Ton Zeitstempeln anzeigt (was beim avi nicht der Fall ist)


    Code
    1. A: 90.3 V: 87.0 A-V: 3.245 ct: 0.045 554/554 100% 6% 4.3% 540 0


    Ich hoffe irgend jemand kann mich auf die richtige Fährte bringen.

  • den patch der den demuxer für mplayer mitbringt hats hier
    http://vdr-portal.de/board/thr…?postid=685981#post685981


    der xp 1800 der in meinem vdr werkelt kommt so auf 0,3 fps ;)

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • Hallo ich habe alles so wie in der anleitung von duna gemacht , mediatomp läuft ich kann auch über die PS3 auf die freigegebenen ordner zugreifen im ordner /var/lib/video.00/TV/ sehe ich aber leider nicht genaus so wie in den eingentlichen aufzeichnungs verzeichnissen der Filme. die PS3 schreibt immer nur "keine Daten vorhanden"


    jemand eine idee was ich falsch mache ich habe FW 2.10 auf der ps3


    thx moonwalker


    edit:
    Habe ganz vergessen reinzuschreiben dass ich die Debian version einfach mit apt-get installiert habe kann es sein dass da das transcoden nicht funkt. Ich werde heute mal nachsehen welche version ich habe. in der cinfig.xml habe ich den punkt transcoding auf yes gesetzt !!!

  • das etch package tut so weit ich mich entsinnen kann nicht.


    starte den mt am besten mal in einer shell und schau was der so spricht. falsche oder unbekannte configeinträge werden direkt beim start moniert.


    im zweifelsfalle mal die version aus dem svn probieren.



    zur überarbeitung des guides komm ich irgendwie nicht, davon mich näher mit linux auf der ps3 auseinanderzusetzten mal ganz zu schweigen

    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: live, text2skin, epgsearch, xineliboutput cvs, streamdev-server - 2x tt s2-3200 - xine-vdpau 284 + df v9 patches - output vdr-sxfe
    p5n7a-vm - debian lenny - vdr 1.7.9 - plugins: text2skin, xineliboutput cvs, streamdev-client - xine-vdpau 284 + df v9 patches - output vdr-sxfe

  • wieviel leistung kann die ps3 unter linux denn bringen, wenn man das zbsp mit ner amd/intel cpu vergleichen möchte?


    hintergrund ist der, dass wenn genug leistung vorhanden ist man die ps3 ja auch als ausgabe für hd material nutzen könnte..

    kuifje
    asus m2n-vm | Athlon 5600 | Nvidia 9300GE | TT S2-3200
    yaVDR 0.4 | 1.7.21
    haddock
    asus p4pe | 2ghz | 3x DVB-S Budget | 2x500gb
    debian lenny 2.6.29.3 | e-tobi 1.7.0 | streamdev cvs | live


    <30.12.07 <igel>sid fuer den gewissen kick>
    <01.04.08 <igel>ich kann eh nix ausser debian pakete installiern>
    <15.12.09 igel hasst linux>
    <23.02.10 <igel> easyvdr is nur easy wenn es easy is>