Beiträge von flimmer

    Diese Zeile war von Martin1234 sicher nur "exemplarisch" gemeint und muss natürlich angepasst werden:

    Code
    ssh -i /pfad/zur/id_rsa_file


    ...das sollte dann bei Dir vermutlich eher so aussehen:

    Code
    ssh -i /home/mario/.ssh/id_rsa.pub -o 'PubkeyAuthentication yes' -o 'PasswordAuthentication no' mario@192.168.178.20


    Im Zweifelsfall hilft dir ein "ls /home/mario/.ssh" weiter.
    Stelle einfach sicher, dass die Datei auch existiert, die Du da angibst. ;)

    Momentaner stand ist das ich nach dem Ausführen der Befehlszeilen ich das Passwort eingeben muss das es weiter mach. Sonst funktioniert der Rest alles

    Das ist wirklich nicht sooo schwer.
    Ich versuche mal die Schritte zusammenzufassen:
    Der Benutzer auf dem Rechner, der sich ohne Kennwort auf dem anderen einloggen soll, braucht zunächst einen ssh-key.
    Den erzeugst Du einfach mit:


    Im Home-Verzeichnis des betreffenden Benutzers im Unterverzeichnis .ssh müssen nun die neuen Schlüsseldateien liegen, z.B.:

    Code
    flimmer@myhost:~$ ls -l /home/flimmer/.ssh/
    -rw------- 1 flimmer flimmer 1675 2012-11-14 10:54 id_rsa
    -rw-r--r-- 1 flimmer flimmer  397 2012-11-14 10:54 id_rsa.pub
    flimmer@myhost:~$


    Die Datei id_rsa.pub schaffst Du jetzt auf den anderen Rechner, z.B. sei der Name mal "otherhost".

    Code
    rsync /home/flimmer/.ssh/id_rsa.pub flimmer@otherhost:


    Natürlich ausnahmsweise noch einmal "mit Kennwort". ;)


    Auf "otherhost" loggst Du Dich als der betreffende Nutzer ein (bei mir natürlich "flimmer" ;))
    Dann im Home-Verzeichnis:

    Code
    cat id_rsa.pub >> .ssh/authorized_keys
    chmod 600 .ssh/authorized_keys
    rm id_rsa.pub


    Die Zeile mit chmod ist wichtig, weil ssh überprüft, ob die Dateiberechtigungen stimmen (lediglich für Nutzer les-/schreibbar).
    Ist aber nur nötig, falls authorized_keys neu angelegt wurde, was bei Dir der Fall sein dürfte.
    Das sollte es gewesen sein.
    Mit "exit" zurück auf den anderen Rechner ("myhost") gehen und dann Daumen drücken und:

    Code
    ssh flimmer@otherhost


    Das sollte jetzt ohne Passwort gehen. :]
    (Ansonsten, falls nicht, müsste man sich an die Problemanalyse machen... 8) )

    Weil ich am Anfang nicht wusste ob das mit rsync zusammen bringe, dadurch hätte ich auch eine Alternative gesucht. Nur jetzt geht es soweit mit rsync bis auf die kleinen Sache wie oben schon geschrieben.

    Schon gut.
    Ist ja kein Problem.
    Man darf seine Meinung ja auch mal ändern. :D


    Außerdem ist rsync sicherlich unter dem pragmatischen Gesichtspunkt oft das beste, würde ich auch denken.

    Zitat

    Werde diese Zeile streichen das es nicht wieder zu Missverständnissen kommt.

    Das ist gut.


    Klappt's denn noch nicht, mit ssh/rsync ohne Kennwort?
    Ist eigentlich nicht sooo schwer einzurichten.
    Etwas gewöhnungsbedürftig aber schon, wenn man es das erste mal macht. 8)

    und möchte auch auf jeden Fall rsync dazu verwenden.

    Na, Du bist ja echt komisch.
    Warum fragst Du dann nach Alternativen???!
    Tsts.

    Zitat

    Habe
    mich schon mal daran gemacht mir ein Skript zu schreiben und würde euch
    bitte mir zu sagen ob es Sinn macht wie ich es gemacht habe oder
    Verbesserungsvorschläge. Oder auch vielleicht das es auch eine andere
    Lösung noch gibt
    außer.

    1.) rsync muss auf beiden Rechnern installiert sein. (In kompatibler Version)


    2.) Falls Du Dein Backup ohne Passwords erstellen willst, musst Du erst ssh so einstellen, dass Du ohne Password per ssh auf den anderen Rechner kommst.
    Dazu muss der öffentliche Benutzer-Schlüssel (z.B. ~/.ssh/id_rsa.pub) des "Quell-Rechners" in ~/.ssh/authorized_keys des "Ziel-Rechners" vorhanden sein.

    Oder auch vielleicht das es auch eine andere Lösung noch gibt außer rsync.


    Eine interessante Alternative für Backups wäre vielleicht "dirvish".
    Das kopiert z.B. nie die ganzen Ordnerinhalte, sondern setzt bei nicht geänderten Dateien lediglich Hardlinks auf die vorherigen Ordner.
    Bringt aber natürlich eine eigene komplexe Konfiguration mit, durch die man sich erst "wühlen" muss.
    Ich selbst habe das auch nur einmal verwendet und war froh als endlich alles eingestellt war und alles funktionierte. ;D


    Also ich "spendiere" mal meinen derzeitigen "Lieblingsaufruf" ;), bei dem ich nach langem Probieren geblieben bin.


    Code
    vlc -I ncurses 00001.ts :sout="#transcode{vcodec=div3,vb=300,scale=0.25,acodec=mp2,ab=128,channels=2}:standard{access=http,mux=ts,dst=<<IP-Adresse>>:37899}"


    Für meine Situation war das Format div3 absolut das beste, weil sogar meine 800MHz Gurke das mit 75% bis 85% CPU Last hinkriegt.


    Eine Abspielliste, also mit 00002.ts u.s.w., ist dann schon wieder schwierig. Es geht, aber ich hab' es nur hingekriegt, wenn man für jede einzelne Datei den kompletten transcode-Rattenschwanz auf der Kommandozeile wiederholt. Der Wechsel von 00001.ts zu 00002.ts ist auch nicht sehr geschmeidig, dauert schon so 1 bis 2 Sekunden. Daher spiele ich die Dateien am liebsten einzeln ab.


    Mit der ncurses-Steuerung kann man wenigstens Werbung überspringen, einfach (mehrmals) Pfeil nach rechts drücken, und die Position springt 1% der Aufnahmelänge weiter.
    Vorspulen geht also ganz gut, beim zurück Spulen dagegen dauert es ein Weilchen oder VLC verschluckt sich manchmal ganz.

    Ich habe es mal angenommen, dass er doch nicht „Aufnahmen“ sondern Livesignal streamen will, weil er von Mreimers Post bezüglich externremux so begeistert war. Vielleich will er aber doch Aufnahmen streamen!?


    Ja, die Anfrage war nicht sehr ausführlich und der Link zu externremux.sh verwirrt noch zusätzlich.
    Andererseits war's schon deutlich...

    wie man Aufnamen vom VDR ins Internet zu streamen kann ;D


    Wenn man sich zum ersten mal mit dieser Materie beschäftigt, kommt man halt fälschlicherweise auf externremux.sh.
    Das ging mir nämlich genau so.
    Den Weg, live TV zu streamen kriegt man noch verhältnismäßig schnell heraus, eben wegen der externremux.sh.
    Dann denkt man, mit Aufnahmen müsse es doch so ähnlich gehen. Ich hatte diesen "Irrweg" am Anfang auch beschritten, bis ich endlich kapiert hatte, dass das eigentlich mit dem VDR nicht viel zu tun hat.


    Sinnvoll wäre vielleicht noch, die Ausgabe von vdr-xineliboutput vom Port 37890 mit VLC "abzugreifen", dann transkodieren, dann auf einen anderen Port ins Internet streamen. Bringt aber nach meiner Erfahrung nicht viel, beim Umschalten oder Aufnahmewechsel reißt der Stream sowieso wieder ab.
    Ich bin dann bei der Lösung geblieben, VLC direkt mit den TS Dateien zu füttern, und nach transcode ins Internet zu streamen.


    Einen Lösungsvorschlag hatte ich noch hier im WIKI gefunden:

    Zitat

    Für geringe Bandbreiten gibt es zudem eine Lösung basierend auf einem Perl-Server, der ffmpeg zur ad-hoc Re-Kompression verwendet, und der zusammen mit (s)mplayer auf Client Seite auch ein Seeken im HTTP Stream erlaubt. Derzeit werden nur SD TV Streams mit .vdr Endung unterstützt.


    Aber das scheint auch sehr veraltet zu sein.
    Ich habe mich ziemlich weit durch die Installation gewühlt, bis am Ende ein oder zwei Perl Module absolut nicht passen wollten.
    Man sieht ja auch schon an der alleinigen Unterstützung der ".vdr" Endung, dass es veraltet sein dürfte.


    Am besten streamed man die Aufnahmen wohl unabhängig vom VDR.
    Zum Beispiel mit VLC direkt von der Festplatte lesen, transkodieren und an IP Adresse/Port schicken.


    Na sag' ich doch. ;)
    Klar kann man auf der Kommandozeile sich das gewünschte VLC Interface zur Steuerung wählen, ich nehme am liebsten ncurses per ssh. Das ist ja Geschmackssache.


    Wichtiger dürfte aber der Hinweis auf die Transkodierung sein, wenn's um Streamen in das Internet geht. ;)

    Normalerweise ist das ganze Zeugs für "LAN-Internen Betrieb" gedacht.


    Genau das ist das Problem.
    Ich habe mich vor ein paar Wochen länger damit beschäftigt und mir ganz schön "einen abgebrochen".
    Am besten streamed man die Aufnahmen wohl unabhängig vom VDR.
    Zum Beispiel mit VLC direkt von der Festplatte lesen, transkodieren und an IP Adresse/Port schicken.


    Da gibt es gleich ein paar Hürden:
    - CPU Power des VDR für die Transkodierung
    - verfügbare Upload-Bandbreite
    - Mreimer hat bereits eine genannt: das Format. Die Wahl hängt ja auch vom Empfangsgerät ab. Vor allem Handy's können da obendrein sehr wählerisch sein, glaube ich.


    Ich streame bisher nur von PC zu PC, da ist das Format dann zum Glück nicht so wichtig.
    Schwieriger war es dagegen schon, eine Transkodierung zu finden, die mein VDR mit 800MHz CPU noch bewältigen kann. ;)

    Habe die Lösung inzwischen in den Aktivitäten des dxr3 Projektes gefunden. Im repository in der change log von dxr3audiodecoder.c habe ich gesehen, dass die nötige Anpassung schon am 5.12.09 erfolgte.


    Allerdings war die Änderung trotzdem noch nicht im neuesten Download Paket (Version 0.2.10) mit angegebenem Datum 29.12.09 enthalten.


    Mit dieser Änderung vom 5.12.09 ist Audio bei mir OK (wenn auch nicht von guter Qualität).
    Ich habe aber noch nicht die neueste Version aus dem Repository getestet.


    Irgendwo im Netz habe ich gelesen, dass jemand das gleiche Problem mit dxr3 Plugin 0.2.8 hatte und durch ein Paket-Update beheben konnte. Ich ziehe für mich daraus den Schluss, dass es wohl an der "Spitze der Entwicklung" leicht passiert, dass die neuesten Änderungen im dxr3-Plugin und in libavcodec nicht kompatibel sind. :rolleyes:
    Nächstes mal versuche ich bei Probleme dann gleich, aus den repisotories kompatible Versionen zusammenzubauen. :coolgr

    Ach und noch etwas:
    Zusätzlich war die CPU-Last fast auf 100%.
    Ich denke, das sollte mit dxr3 Karte und Plugin sonst nicht so sein, oder?
    (Aber vielleicht lag das ja auch an den massenhaften Ausgaben in das syslog.)


    Vielleicht habe ich ja auch einen grundsätzlichen Denkfehler und man muss das dxr3 Plugin mit einem anderen Plugin verwenden (mplayer/xine)?
    Ich habe versucht nur pvrinput (als input) und dxr3 (als output) zu kombinieren, ist das falsch?


    Edit:
    Habe nochmal getestet: Die CPU Last ist eigentlich OK, bei ca. 10%. Das Problem mit dem Ton bleibt.
    Auf der Heimseite des DXR3 Plugins gibt es auch bereits ein Ticket zu dem Thema "audio und vdr 1.7.10". Ob ich hier wohl genau auf das gleiche Problem gestoßen bin? 8)

    Hallo,


    habe Schwierigkeiten das dxr3 Plugin zum Laufen zu bekommen.


    Debian Lenny, Kernel 2.6.26
    vdr-1.7.10
    dxr3-0.2.10
    pvrinput 1.7.0
    drei verschiedene Versionen von ffmpeg (bzw. libavcodec) ausprobiert.
    v4l-dvb Treiber von linuxtv.org
    Alles selbst kompiliert. (Bis auf zwei Versionen von ffmpeg, die vorkompiliert waren).


    Nach einem kurzen Test mit der dxr3 Karte zu schließen, funktioniert die Karte, wenn Audio bzw. Video einzeln an /dev/em8300_mv-0 bzw. ma-0 gesendet werden.
    Auch der vdr funktionierte teilweise (Video/OSD) ganz gut, bis auf den Ton... der ist total zerhackt und offenbar wird jedes einzelne Audio Paket im syslog mit folgender Meldung "bedacht":



    Soweit ich im Quellcode sehen kann, passiert das an folgender Stelle...


    Code
    #if LIBAVCODEC_VERSION_INT < ((51<<16)+(29<<8)+0)
                len = avcodec_decode_audio(
    #else
                len = avcodec_decode_audio2(
    #endif
                    Codec.codec_context, (short *)(&pcmbuf), &out_size,
                    const_cast<uint8_t *>(buf), length);
                if (len < 0 || out_size < 0)
                    throw WRONG_LENGTH;


    ...aber natürlich komme ich an dieser Stelle erst mal nicht mehr weiter. Vielleicht kennt sich jemand mit dem Kompilieren des Plugins oder mit dem Quellcode so gut aus, dass er etwas darüber sagen kann?


    Das ist meine erste Bekanntschaft mit dem dxr3 Plugin und ich habe sonst noch keine Erfahrung damit. Aber was ich auch versuche, das Verhalten scheint so stabil zu sein, dass ich mich wundere, beim googeln nicht viel darüber zu finden. Mir gehen langsam die Ideen aus.
    Hat jemand eine Idee oder einen Hinweis? Danke.