Client / Server Problem

  • Hallo,


    ich betreibe schon längere Zeit eine Client / Server VDR Konfiguration.
    Client mit easyvdr 0.5beta3; Server mit Mahlzeit 3.2.
    Beide Versionen gefallen mir sehr gut - wobei beide ihre Stärken und "Schwächen" haben. Beide VDRs sind über Samba miteinander verbunden; die relevanten Verzeichnisse (video, mplayer, mp3 und bilder) sind gegenseitig freigegeben. Der Server läuft 24/7 damit er jederzeit über Web programmiert, als streaming-server und als Backup für mein Heimnetzwerk genutzt werden kann. Weniger wichtige Aufnahmen machen wir spontan auf dem client. Ach ja beide Rechner haben jeweils eine FF und eine Budgetkarte (war am einfachsten so). Auf dem Client kann ich auch DVDs für die Kids und die Nachbarn brennen. Soweit funktioniert alles prima und stabil. Was mir nicht gefällt und wofür ich noch keine Lösung gefunden habe, ist folgendes:


    1.
    Ich kann vom client aus keine Aufnahmen auf dem Client schneiden. Wenn ich die Schnittmarken entsprechend setze und mit 2 den Schnitt starte, so läuft dieser Schnitt auf dem client. Funktioniert - dauert aber "ewig" da der Schnitt übers Netz geht. Nutze ich das remoteosd-plugin, so kann ich nicht auf die 2 drücken, da ja nur die menus und nicht das Bild übertragen wird. Das Problem wurde hier schon öfters - allerdings ohne wirkliche Lösung - besprochen. Ich war schon fast soweit, mich mit meinem Desktop PC unter Windows und Vmware Player und irgeneiner Linux-Appliance als Vdr beim client anzumelden und so zu schneiden. Geht mit xineliboutput aber auch nicht soooo einfach.


    2.
    Ich möchte gerne, dass Aufnahmen auf dem "stärkeren" Rechner (Server) nach DIVX konvertiert werden - hier habe ich genau das gleiche Problem:
    Wählt man mit dem remoteosd-plugin aus "PDA-Export sofort starten" passiert nix, da ja erst noch eine Meldung auf dem Bildschirm ausgegeben werden"will.


    Als Lösung stelle ich mir eigentlich eine Erweiterung der commands.conf oder reccmd.conf vor, wo ich auswählen kann, ob ich auf dem Server oder client die Aktion ausführen möchte.


    Dazu müsste ich aber wissen, welches script gestartet wird, wenn man "2" drückt, bzw. wie man einen Befehl auf einem anderen Rechner ausführt. Ich möchte dann aber gerne alle Funktionalitäten, die im PDA-Export Script drin sind weiter benutzen können (Dateiauswahl etc..)


    Ich denke, dass sind recht "allgemeine" Wünsche, die wirklich wichtig im client/server Betrieb sind - Gibt es Lösungen Eurerseits?


    Gruß, Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • Zu 2.
    Wenn du in der commands.conf und in der reccmds.conf in den betreffenden Zeilen das ? entfernst, wird nicht gefragt. Merke ! Kein Fragezeichen, kein Frage!


    also z.B.
    PDA-Direktexport?: /usr/bin/pdaexportstart.sh
    nach
    PDA-Direktexport: /usr/bin/pdaexportstart.sh
    ändern.



    Zum Drücken der "2" (Schnitt starten):
    da wird kein Script gestartet, sondern hierbei wird ein interne Funktion des VDR aufgerufen. :(
    Es gibt die Möglichkeit mit dem VDRAdmin-AM den Schnitt zu starten, ist aber auch nicht so toll. :(
    Oder über den SVDRP Befehl help <Filmnummer>, ist aber auch sch... da du über das OSD (reccmds.cond) keine Filmnummer übergeben kannst, sonder nur den Pfad zum Aufnhame. :( (vielleicht bastel jemand ein Script).



    Probier es mal mit dem:
    http://www.vdr-wiki.de/wiki/index.php/Streamdev-plugin

  • Zu 1


    wenn du den Schnitt anwirfst und der übers Netz läuft stellt sich mir die Frage: Welcher der beiden VDR schneidet jetzt den Film? Der Client oder der Server. Weiß nicht so genau wie das schneiden über eine Streaming-Client, Streaming-Server Lösung funktioniert. Evtl. sagst du dem Server er soll den Film schneiden und der holt ihn dann übers Netz.


    rijo

    DER STILLE:
    Epia ML 6000 EAG; TT-S2300 + TT-S1102 Budget; Transcend 512; 512MB;
    Linvdr 0.7 + Dr. Seltsam Kernel - 2.6.18 + Toxics Patch vdr-1.4.7-ext28-tt-20070523, LinVDR-Updater

    DER SERVER:
    Asus K7V; Athlon 800MHz; 1024MB; FastTrak S150 SX-M 64MB Cache (Raid5); 4xMaxtor 6B200M0;
    SuSE 9.0 (nfs, samba)

    TESTSERVER:
    Asus A8N-SLI Premium; Mahlzeit 4.0beta2

  • mblaster4711


    zu 2: das ist doch mal ein Ansatz - probiere ich nachher gleich mal aus :)
    dachte schon ich bin der einzige, der das so machen will...


    Aber, wie startet vdradmin denn den Schnitt?


    und sehe ich wenn ich auf dem server streamdev-server und auf dem client streamdec-client installiert habe das osd des servers?
    woher "weiss" dann die Fernbedienung was sie auf dem server ausführen soll?


    Schon mal Danke, Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • Zitat

    Oder über den SVDRP Befehl help <Filmnummer>, ist aber auch sch... da du über das OSD (reccmds.cond) keine Filmnummer übergeben kannst, sonder nur den Pfad zum Aufnhame. unglücklich (vielleicht bastel jemand ein Script).


    folgendes hatte ich mir mal zusammengeschustert:



    Das Rauskitzeln der Aufnahme-ID ist sicher viel zu kompliziert gelöst - bin da kein Profi :versteck - aber es funktioniert bei mir seit Monaten.


    Aufruf über das Aufzeichnungen-Menü bzw. die reccmds.conf des Clients. Nachteil: keine Meldung auf dem Client, wenn der Schnitt beendet ist!

  • tomas


    Kannst Du das noch etwas erläutern?
    Ich habe Deinen Script-Vorschlag in meine reccmds.conf auf dem Client eingebaut und das zugehörige Script cutatserver.sh genannt.
    Wenn ich nun auf dem Client eine Aufnahme auf dem Server auswähle und "Dein" Script starte, passiert eigentlich garnix ?!
    Im logread des Servers steht nix - im logread des Clients steht, dass er tatsächlich die richtige Aufnahme ausgewählt hat.
    Das ist alles - da ich Dein Script leider nicht verstehe, wäre es schön, wenn Du mir nochmal weiterhelfen könntest.


    Danke - Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • Hast du bei


    Code
    server=<SERVER-IP>;


    die IP des Servers eingetragen? ohne < >!
    und das Skript ausführbar gemacht?


    Code
    chmod +x /pfad/zu/cutatserver.sh


    Zitat

    da ich Dein Script leider nicht verstehe,


    ...wenn du über SVDRP schneiden willst, brauchst du die Nummer der betreffenden Aufzeichnung, die bei


    Code
    svdrpsend.pl  LSTR


    für alle Aufzeichnungen ausgegeben wird.

    Das Skript extrahiert aus dem Pfad der Aufzeichnung den Titel($record) und sucht darüber die dazugehörige Nummer ($ID). In der letzten Zeile wird dann der Befehl zum Schnitt an den Server geschickt.


    tomas

  • Prima - Danke :)
    Jetzt habe ichs kapiert und es funktioniert auch!


    Jetzt muss ich es nur noch hinkriegen eine DIVX Konvertierung mit dem PDA Export Script vom Client aus anzustoßen, so dass es auf dem Server läuft.
    Hast Du da vielleicht auch ne Idee?
    Mit remoteosd geht es komischerweise nicht?!


    Gruß, Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • So auch das ist gelöst - funktioniert einfach mit remoteosd. Man bekommt keine Statusmeldungen - aber es funktioniert :)


    Gruß, Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • ...hab zwar mit dem PDA Export selbst noch nicht gearbeitet, aber dessen Statusmeldungen werden über svdrpsend.pl ausgegeben und lassen sich dadurch auch ganz einfach an einen Client schicken.


    Wenn du in den PDA-Export-Skripten überall bei


    Code
    /usr/bin/svdrpsend.pl mesg ......


    ein -d <CLIENT-IP> einfügst, also z.B.


    Code
    /usr/bin/svdrpsend.pl -d <CLIENT-IP> mesg "Mehrfachexport gestartet..."


    erscheinen die Meldungen am Client.



    Für meine Lösung zum Schneiden auf einem Server habe ich jetzt auch einen Weg gefunden nach Ende des Schnitts eine Meldung auf dem Client zu sehen. Erfordert allerdings VDR selbst zu kompilieren!


    An der Stelle, an der in der vdr.c die Anweisung zur Ausgabe "Schnitt beendet" steht hab ich einen Skriptaufruf eingefügt:"system("servercutend.sh")"



    Code
    else
                     Skins.Message(mtInfo, tr("Editing process finished"));
    		 system("servercutend.sh");


    Das Skript


    Bash
    #!/bin/sh 
    
    
    client=<CLIENT-IP>;
    
    
    svdrpsend.pl  -d $client MESG "Serverschnitt beendet";


    lässt dann nach Beenden des Schnitts die Meldung am Client ausgeben.


    Gruß, tomas


    sorry, es muss natürlich jeweils die IP des Clients eingetragen werden!!!

  • Danke,


    werde ich am WE mal einbauen - zumindest die Ergänzung zum PDA-Export. Das Compilieren des Kernels ist mir eine Nummer zu aufwändig :)


    Gruß, Nikels

    Kellervdr Server: ASRock B85M-Pro4, 4GB RAM, 2TB HD für vdr und 1+2TB für Fileserver,
    MLD 5.1 testing, softhddevice, 1x Technisat DVB-S2, 1xCine 2x DVB-S2, Philips 65", Pulse Eight CEC
    Wohnvdr Client: mld 5.1 testing on raspberry pi 2, Sundtek USB Stick DVB-S2,
    Toshiba 42", Revolt ir Steckdose, yamaha Soundbar 101, Toshiba TV Remote über CEC der Pi2
    Spielvdr Client: mld 5.0 testing on raspberry pi 2, live 41169 remote, 15" Monitor
    Diverse Tabletts mit Kodi jarvis

  • Zitat

    Original von Nikels
    Danke,


    werde ich am WE mal einbauen - zumindest die Ergänzung zum PDA-Export. Das Compilieren des Kernels ist mir eine Nummer zu aufwändig :)


    Gruß, Nikels


    Nicht den Kernel sondern den VDR (mit allen Plugins) musst du dazu selbst kompilieren!
    Aber lass es besser. Denn sonst pickt dich der Pinguin ganz böse :)

Jetzt mitmachen!

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