yavdr ansible

  • Hi, leider ist meine GraKa GT630 gestern gestorben.


    Die in der Kiste liegende GT730 (Asus, 1GB) macht mit yavdr 0.62 arge Probleme,

    HD-Programme funktionieren mit xineliboutput, aber SD läuft mit ca. 12 Bildern pro Sekunde. Mit softhddevice funktioniert es eigentlich gar nicht (HD-Programme laufen mit Zeitlupe, nachdem der Puffer voll ist, bricht das Bild kurz zusammen)


    Also habe ich jetzt bionic mit yavdr ansible an den Start gebracht, und nach einigem Gezicke läuft es erstaunlich gut.


    Punkt eins ist, dass ich nicht herausfinden konnte, wie ich die Auflösung von UHD auf Full HD ändern kann (also außer, die Xorg.conf händisch anzupassen). Fehlt da noch was, oder hatte ich nur Tomaten auf den Augen?


    Punkt zwei ist, dass das System natürlich von jetzt auf gleich laufen muss, und da fehlen ein paar Annehmlichkeiten, insbesondere yavdr-hostwakeup.

    Vermutlich fehlt mir nur der Punkt, wo ich das (ohne die Webgui, die gibt's ja noch nicht) konfigurieren kann. Allerdings ist der Menüpunkt auch noch nicht Menü...

  • Punkt eins ist, dass ich nicht herausfinden konnte, wie ich die Auflösung von UHD auf Full HD ändern kann (also außer, die Xorg.conf händisch anzupassen).

    Bislang kann man sonst nur dem Playbook mitgeben, welche Auflösung bevorzugt werden soll - dazu legt man eine host_vars/localhost.yml im yavdr-ansible Verzeichnis an und setzt die bevorzugten Auflösungen, also z.B. Full-HD an erster Stelle:

    Code: host_vars/localhost.yml
    1. preferred_resolutions:
    2. - 1920x1080
    3. - 3840x2160
    4. - 7680x4320
    5. - 1280x720
    6. - 720x576

    Mit sudo ansible-playbook yavdr07.yml -b -i 'localhost_inventory' --connection=local --tags="yavdr-xorg" kann man dann die Bildschirmkonfiguration neu schreiben lassen.

    Fehlt da noch was, oder hatte ich nur Tomaten auf den Augen?

    Nein, da fehlt noch so einiges...

    Punkt zwei ist, dass das System natürlich von jetzt auf gleich laufen muss, und da fehlen ein paar Annehmlichkeiten, insbesondere yavdr-hostwakeup.


    Vermutlich fehlt mir nur der Punkt, wo ich das (ohne die Webgui, die gibt's ja noch nicht) konfigurieren kann. Allerdings ist der Menüpunkt auch noch nicht Menü...

    Die menuorg-Integration fehlt noch und das menuorg-Plugin wird nicht vorinstalliert.


    yavdr-hostwakeup habe ich hochgeladen, das lässt sich als Paket hostwakeup installieren und der Systemd-Service (wird automatisch gestartet) heißt hostwakeup.service.


    Statt da jedes Mal die menuorg.xml neu zu schreiben, würde ich die Host-Liste fürs OSD dynamisch abfragen:

    Man kann dann in den Dateien, aus denen die commands.conf beim Start des VDR zusammengebaut wird (z.B. in der /usr/share/vdr/command-hooks/commands.custom.conf) so einen Eintrag anlegen (für menuorg sollte der selbe Befehl funktionieren, nur die Syntax für die Einträge ist etwas anders):

    Code
    1. Wake on Lan : echo /usr/local/bin/wol_osd_menu | at now

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • yavdr-hostwakeup habe ich hochgeladen, das lässt sich als Paket hostwakeup installieren und der Systemd-Service (wird automatisch gestartet) heißt hostwakeup.service.

    Ah. Sehe ich das richtig, dass diese Liste dann automatisch erzeugt wird, sobald dieser Dienst auf allen Geräten läuft? Sehr Cool. Allerdings habe ich meinen vdr-server momentan noch auf yavdr0.6 laufen. Kann ich einen Eintrag für den hostwakeup auch manuell anlegen?

  • yaVDR 0.6 kam bereits mit yavdr-hostwakeup als Abhängigkeit von yavdr-essential (aber wir haben es nicht genutzt), die sollten sich also gegenseitig sehen können.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • So, hab gerade ein bisschen rumprobiert :) und ich habe zwar noch keinen Menüpunkt, aber schon mal hostwakeup zum Laufen gebracht.


    Auf dem Ansible System reicht das Installieren des Pakets plus Start des Dienstes.

    Auf dem alten System ist der Dienst zwar vorhanden, aber nicht korrekt konfiguriert, so dass er nicht startet.

    Da ich mich nie mit upstart beschäftigt habe und es ja auch nur einmalig starten muss (... der Cache bleibt erhalten, wenn weitere Rechner dazu kommen, werden die vermutlich eh mit Ansible laufen), habe ich es einfach schmutzig per Hand gestartet.

    Dabei beschwerte sich hostwakeup darüber, kein eth0 zu finden. ip a ergibt auch, dass mein Interface p2p1 heißt, also einmalig sudo hostwakeup -i p2p1 eingeben, schon rattert die Liste runter.

    Interessanterweise wird auch ein yavdr0.6 Client gelistet, der auf dem Ansible System nicht von selbst auftauchte.

    Der Aufruf oben hat aber gleich die vollständige Liste an alle Clients geschickt, so dass nun auf dem Ansible System auch alle vdr-Clients mit ihren von mir vergebenen Namen auftauchen, extrem cool!


    Das nur mal so als Zwischenstand...

  • Da ich mich nie mit upstart beschäftigt habe und es ja auch nur einmalig starten muss (... der Cache bleibt erhalten, wenn weitere Rechner dazu kommen, werden die vermutlich eh mit Ansible laufen), habe ich es einfach schmutzig per Hand gestartet.

    Da gibt es sogar schon eine über DBus erreichbare Methode, um einen neuen Host und seine Mac-Addresse hinzuzufügen: https://github.com/yavdr/yavdr…ython3/hostwakeup.py#L267 - da müsste ich mal hostwakeupctl überarbeiten, damit man bei Bedarf Hosts hinzufügen kann, auf denen yavdr-hostwakeup nicht läuft.


    Zu Fuß ginge das momentan so:

    Code
    1. dbus-send --system --type=method_call --dest='de.yavdr.hostwakeup' --print-reply \
    2. '/Hosts' 'de.yavdr.hostwakeup.Add' string:HOSTNAME string:"DE:AD:BE:EF:FE:ED"


    Ich habe gerade noch auf einem frischen Testsystem gemerkt, dass die Systemd-Unit aktuell noch das falsche Kill-Signal sendet, wodurch die Liste der Hosts beim Beenden nicht gespeichert wird. Im [Service] Abschnitt der /lib/systemd/system/hostwakeup.service fehlt noch ein

    KillSignal=SIGINT

    Ich lasse gleich noch ein aktualisiertes Paket bauen, das das nachrüstet.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

    The post was edited 1 time, last by seahawk1986 ().


  • ALSA für VDR-Audio einsetzen:

    Nach dem ich bereits hier im Thread im Beitrad #329 und dann auch im Beitrag #339 meine Probleme mit Pulseaudio beschrieben habe, hatte ich gestern vergeblich versucht ALSA für den VDR einzusetzen, aber ich bekomme es einfach nicht hin! :(


    Warum kein Pulseaudio:

    Was mir bei Pulseaudio immer fehlte war die Wiedergabe der Highres-Audioformate Dolby TruHD und DTS-HD Master.

    Alles andere, Stereo, Dolby und DTS hingegen funktionieren einwandfrei!

    Wie ich nun inzwischen herausgefunden habe, siehe z. B. hier kann Pulseaudio die Highres-Audioformate nicht wiedergeben und somit ist für mich damit Pulseaudio keine Option mehr. Und deswegen möchte ich nun auch in yavdr-ansible wieder das Audio über ALSA laufen lassen.



    Nach der Deinstallation von Pulseaudio, siehe hier im Beitrag #339 gibt es nun aber das Problem, dass ich im VDR keinen Ton mehr habe. :( Wenn ich KODI hingegen starte, dann funktioniert Audio perfekt, inklusive aller Highres-Audioformate.


    Ich habe gestern den ganzen Abend vergeblich versucht mittels ALSA dem VDR einen Ton zu entlocken, was mir leider nicht gelungen ist.

    Code: aplay -l
    1. aplay -l
    2. **** Liste der Hardware-Geräte (PLAYBACK) ****
    3. Karte 0: NVidia [HDA NVidia], Gerät 3: HDMI 0 [HDMI 0]
    4. Sub-Geräte: 0/1
    5. Sub-Gerät #0: subdevice #0
    6. Karte 0: NVidia [HDA NVidia], Gerät 7: HDMI 1 [HDMI 1]
    7. Sub-Geräte: 1/1
    8. Sub-Gerät #0: subdevice #0


    Hier noch die entsprechenden Konfigurationsdateien:

    Code: /etc/asound.conf
    1. pcm.!default {
    2. type hw
    3. card NVidia
    4. device 7
    5. }
    6. ctl.!default {
    7. type hw
    8. card NVidia
    9. }
    Code: softhdcuvid.conf
    1. [softhdcuvid]
    2. -D
    3. #-f
    4. -a hw:NVidia,7
    5. -p hw:NVidia,7


    Eigentlich sollte/müsste es nun funktionieren und der VDR sollte einen Ton von sich geben, tut er aber nicht. :(

    Deswegen muss ich Euch hier nochmals nerven und hoffe Ihr könnt mir helfen, wie ich das zum Laufen bekomme!

    Gibt es da noch irgendwo ein Script oder einen Service, der mir hier in die quere kommt?


    Paul

  • Bin da zwar kein Profi, aber ich glaube, mich zu erinnern, dass man bei ALSA mittels "alsamixer" überprüfen sollte, ob alle Kanäle auch wirklich "unmuted" (also eingeschaltet) sind. Viel Glück!

    MyVDR: yaVDR-Ansible (Ubuntu 18) - softhddevice-openglosd (ffmpeg 2.8) - epgd/epg2vdr - skindesigner estuary4vdr (adaptiert) - 1920x1080@50 Hz | kodi 18 - inputstream + amazon vod
    Aerocube M40 | 300W | ASRock H61M-GE | Intel G530 | Asus ENGT520 | 2 x TT-budget S2-3200 | ASRock Smart Remote (CIR) | 4 GB RAM | 120 GB SSD | 3 TB HDD

  • Den Alsamixer hatte ich bereits überprüft und beide Digital-Ausgänge sind "unmuted".

    Daran sollte es also nicht liegen!


    Das komische ist ja, dass es mit yavdr-0.6 (liegt auf dev/sdc1) das ganze wunderbar mit ALSA funktioniert, nur eben nicht mit yavdr-ansible (liegt auf dev/sdc2).

    Deswegen vermute ich ja, dass es irgendwo noch ein Script, eine Konfiguration o.ä. gibt, was hier für mich Probleme bereitet.

  • Lautstärke ist im alsamixer auch hochgedreht?

    ???

    Da nur das HDMI-Kabel verbunden ist gibt es keine analogen Ausgänge, sondern nur 2 digitale Ausgänge: S/PDIF und S/PDIF 1

    Bei denen kann man nur MM für "muted" oder 00 für "unmuted" einstellen, da gibt es nichts zum "hochdrehen" und beide Ausgänge sind auf 00 gesetzt.

  • Jetzt läuft es! :) :):)

    Oh Mann, da bin ich jetzt nur durch Zufall drauf gekommen.


    Beide VDRs: yavdr-0.6 und yavdr-ansible laufen ja auf demselben PC nur auf 2 unterschiedlichen Partitionen und nutzen also dieselbe Hardware. Somit habe ich bei beiden immer, wo es sinnvoll ist, die gleichen Konfigurationen eingestellt, vor allem weil es ja beim "alten" yavdr-0.6 sofort auf Anhieb funktionierte.


    Ein aplay -L vom yavdr-0.6 liefert diese Ausgabe:

    Dazu habe ich dann in der softhddevice.conf folgende Parameter eingestellt:

    Code
    1. [softhddevice]
    2. -D
    3. -a hw:NVidia,7
    4. -p hw:NVidia,7



    Da das aplay -L bei yavdr-ansible genau die gleiche identische Ausgabe wie beim "alten" yavdr-0.6 lieferte, habe ich hier also auch bei softhdcuvid.conf die gleichen Parameter genommen. Und damit gab es eben keinen Ton bei yavdr-ansible!



    Jetzt hatte ich dann nochmals das aplay -l bei beiden VDRs ausgeführt und genau verglichen und da ist mir dann der Unterschied aufgefallen:

    Bei den "Sub-Geräte:" ist die Reihenfolge anders!

    Und so habe ich jetzt einfach mal an Stelle vom Device 7 das Device 3 genommen und schon war der Ton da :) :

    Code
    1. [softhdcuvid]
    2. -D
    3. -a hw:NVidia,3
    4. -p hw:NVidia,3


    Warum jetzt die Device zwischen den beiden VDRs unterschiedlich zugewiesen werden, weiß ich nicht, aber nun läuft es wenigstens!:)


    Paul

    The post was edited 1 time, last by Paulaner ().

  • Ist vermutlich eine Treiber-Geschichte.

    Yepp, vermute ich auch!

    Man sollte eben auch immer das Kleingedruckte lesen, dann erspart man sich 'ne Menge Arbeit! ;)


    Paul

  • Quote

    The playbook does not yet handle the automatic display configuration for Intel IGPs, so you need to configure Xorg yourself if you want to use a mode with 50Hz refresh rate.

    Tried to use fnu 's approch to make a xorg.conf, but did not work for me. I think it was something wrong with the xorg.conf file I made.

    But I found another way which works to give a 50 HZ refresh rate.

    I followed this wiki to make a xorg.conf https://wiki.archlinux.org/ind…ng_undetected_resolutions.


    First we run cvt to get the Modeline for the resolution we want:

    Code
    1. hts@vdrsrv02:~$ cvt 1920 1080 50
    2. # 1920x1080 49.93 Hz (CVT 2.07M9) hsync: 55.62 kHz; pclk: 141.50 MHz
    3. Modeline "1920x1080_50.00" 141.50 1920 2032 2232 2544 1080 1083 1088 1114 -hsync +vsync

    Once a suitable resolution is found using cvt, the mode can be permanently added by creating an entry in /etc/X11/xorg.conf.d/

    When the X server is restarted, you should be able to set the new resolution.

  • ich habe das gleiche Problem, nur wenn ich das so einstelle bootet der Rechner zur Shell und das in 50p?!

    | HP Microserver Gen 7 | Cine S2 + DVBSky S952 | vdr2.2 | Streamdev Server |
    | Streamdev Clients: paar Rpi2, yavdr.... |

  • Bei mir steht eine Kompletterneuerung an (ich bin noch auf einer gut funktionierenden yaVDR 0.5) Umgebung unterwegs und habe mir deshalb yavdr ansible angesehen - einfach, weil es ein tolles Konzept ist und auch schon sehr, sehr gut funktioniert - einfach Spitze.

    Was habe ich bisher versucht: Server auf Basis J3160 Basis, Digital-Devices Cine S2 6.5 + DuoFlex + Single CI + Mascom alphacrypt classic + ORF Karte) - diverse Serverdienste laufen permanent - VDR Service + Treiber für DD-Karten (Stromverbrauch) werden per WoL Paket gestartet - funktioniert.

    Test-Client auf Basis Asus AT5IONT-I (Nvidia ION -legacy!) - Einrichtung hat perfekt funktioniert (inkl. Nachinstallation IRMPLircd, weil das zuerst verwendete Kabel offensichtlich nur ein Ladekabel war).


    Jetzt zu meinen Fragen:

    Am Server installiert: Plugin SVDRPOSD


    Was ich jetzt so nicht verstehe (sorry, wenn ich da was überlesen habe): das Gegenstück remoteOSD gibt es nicht im Repository ? - und zu meinem Pech auch kein EPGSync ? Wenn ich das richtig verstehe, kann ich ja nicht den EPG des Servers (ohne Internetabrufe, also nur die VDR Stream EPGDaten) in den EPGD verpflanzen und mit EPG2VDR distributieren ?.
    Ich habe auch das OSD2Web als temporären Ersatz für das RemoteOSD versucht - aber das entspricht nicht meinem Ansatz.


    Kann mir wer den Schubs in die richtige Richtung verpassen ?


    Schöne Feiertage

    Server: yaVDR ansible, Asrock 3160, Cine S2 6.5 + Duoflex + Single CI mit Alphacrypt classic, Bionic Beaver
    Clients: 1* yaVDR ansible als streamdev-client, Asus GT520,
    Pentium Dual-Core 8400, , Bionic Beaver
    1* yaVDR ansible als streamdev-client, Asrock 3150 in Antec ISK 300-65, Zotac GT730 (ZT-71107-10L), , Bionic Beaver
    1* ABOX (Amlogic S905x) mit CoreElec

    1* yaVDR ansible TestClient Asus AT5IONT-I, , Bionic Beaver

    1* Rspberry PI2B+, yaVDR ansible, Focal Fossa