[ANNOUNCE] pulsecontrol 0.1.9 - Pulseaudio aus dem OSD heraus steuern

  • ok, skript läuft jetzt ohne Fehler..leider auch ohne Effekt ;)
    syslog ist auch unauffällig:


    kann ich das loglevel für pulseaudio noch irgendwie erhöhen?


    BZw. mit welchen Rechten müsste das Skript denn laufen? Bzw. wem gehören? (wobei sudo "skript" auch nicht klappt)


    Das mit dem Tastendruck auf der Fernbedienung habe ich jetzt folgendermaßen gelöst:
    - habe ein Skript ("wechsel.script") ins gleiche Verzeichnis gelegt, wie startup.script. Das ruft dann über den pulsecontrol Parameter EXEC, das eigentlich Skript von Dir auf.
    - die Aktion kann ich entweder über das OSD von pulsecontrol auslösen (MEnü "Skripte"), oder über keymakros.conf, dass diese Aktion dann "fernsteuert"
    - scheint auch zu klappen, nur dass das Skript selber noch keinen Effekt zeigt.


    Gibt vielleicht elegantere Wege, aber zumindest klappt das jetzt über die Fernbedienung. JEtzt muss ich nur noch das Skript zum LAufen bringen.


    DAnke Dir!


    Gruß,


    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • Hm, ich bin momentan noch ratlos, warum das Script keinen Effekt hat. Da muss ich erstmal im Code wühlen, ob es Unterschiede gibt.


    Lars

  • ich habe es gefunden!!! :wand und das nur zufällig...


    mein startup.script hatte noch einen Fehler, der mir nie aufgefallen ist:

    da hat sich eine "1" statt der "0" in den Sink-Namen eingschlichen, aber leider nur beim analogen Ausgang, mit dem ich nie starte. Dann hast Du natürlich -frei nach Murphy- diesen Eintrag verwendet als Basis für Dein "on the fly" skript und nicht den eins drüber und schon hatten wir den falschen sink-Namen in Verwendung... tut mir echt leid für Deine ganze Mühe! :wand


    immerhin funktioniert jetzt der Wechsel per Fernbedienung des Profils bei gleicher Sink! Danke Dir!


    Grüße,


    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • hm, etwas zu früh gefreut...
    wenn ich das skript per Hand ausführe, kann ich schön zwischen den PRofilen hin- und herwechseln
    wenn ich das Skript vom vdr ausführen lasse (habe es in das Systembefehle-Menü eingebaut über die menuorg.xml), dann funktioniert die if "...", elif ".." Abfrage nicht und er landet im "else"-Zweig
    mein skript:


    die logger-Kommandos habe ich zum debuggen eingebaut.
    meine menuorg-Befehlszeile lautet:

    Code
    <command name=<?cs call:quote(_("Wechsel zwischen SPDIF-Ausgang und Kopfhörer")) ?> execute="/var/lib/vdr/plugins/pulsecontrol/SPDIF_Kopfhörer_wechseln" />


    im syslog findet man


    er landet also einmal im "else" Zweig der Abfrage und auch das

    Code
    Oct 19 18:45:09 HD-VDR vdr: [1213] ERROR (svdrp.c,428): Datenübergabe unterbrochen (broken pipe)

    sieht nicht so richtig gut aus :(


    hat jemand Ideen?

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • Mir ist der Test da nicht ganz klar - statt

    Code
    if [[ $(svdrpsend plug pulsecontrol list-cards | grep "*profile: output:iec958-stereo") ]]

    reicht doch eigentlich das, wenn man testen will, ob grep einen Treffer gelandet und sich mit dem Exit-Code 0 beendet:

    Code
    if svdrpsend plug pulsecontrol list-cards | grep -q "*profile: output:iec958-stereo"


    Dann hast du möglicherweise noch das Problem, dass du das Skript blockierend ausführst, was die Antwort des VDR auf SVDP-Anfragen erschwert - probier es mal mit einem at now Konstrukt zu entkoppeln:

    Code
    <command name=<?cs call:quote(_("Wechsel zwischen SPDIF-Ausgang und Kopfhörer")) ?> execute="echo '/var/lib/vdr/plugins/pulsecontrol/SPDIF_Kopfhörer_wechseln'| at now > /dev/null " />


    Edit: Quotes im Menuorg-Befehl repariert

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Mir ist der Test da nicht ganz klar - statt


    Das liegt daran, weil ich nicht so gut in bash bin. :)


    Lars.

  • :) und ich noch zwei level darunter liege


    so, Skript vereinfacht und menuorg.xml angepasst.


    :) und, was soll ich sagen, es funktioniert!! :D DANKE!

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • hm... ist nicht gnaz mein Tag heute :§$%


    jetzt habe ich offenbar so lange an pulseaudio herumgedoktert, bis ich mir was im startup PRozess zerschossen habe:


    zumindest bekomme ich jetzt Fehlermeldungen im Bootprozess bei pulsecontrol UND das startup.script wird nicht mehr richtig ausgeführt. Was dazu führt, dass die falschen PRofile eingestellt sind. Ein manuelles Ausführen des startup.script (im syslog ab 19:40) gibt mir wieder funktionierendes Audio, obwohl auch hier wieder ein Fehler im syslog ist.

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • syslog ist aus meiner Sicht relativ unauffällig:


    http://pastebin.com/vMZgi4nd


    das einzige, was ich nicht bewerten kann ist:

    Code
    Oct 19 19:35:51 HD-VDR dbus2vdr: dbus2vdr-daemon on HD-VDR starting, conf = /var/lib/vdr/plugins/dbus2vdr
    Oct 19 19:35:51 HD-VDR kernel: [   10.016560] init: failsafe main process (794) killed by TERM signal
    Oct 19 19:35:51 HD-VDR avahi-sundtek-mounter[1107]: initialized zeroconf browser on HD-VDR
    Oct 19 19:35:52 HD-VDR kernel: [   11.049215] init: plymouth-upstart-bridge main process ended, respawning
    Oct 19 19:35:52 HD-VDR cron[1168]: (CRON) INFO (pidfile fd = 3)
    Oct 19 19:35:52 HD-VDR kernel: [   11.327383] nvidia 0000:03:00.0: irq 45 for MSI/MSI-X
    Oct 19 19:35:52 HD-VDR nvidia-persistenced: Started (1254)
    Oct 19 19:35:52 HD-VDR anacron[1223]: Anacron 2.3 started on 2016-10-19


    ist dieses

    Code
    Oct 19 19:35:51 HD-VDR kernel: [   10.016560] init: failsafe main process (794) killed by TERM signal

    normal?

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • schein das gleiche Problem wie hier zu sein
    [ANNOUNCE] pulsecontrol 0.1.9 - Pulseaudio aus dem OSD heraus steuern

    scheint aber auch im anderen Thread nicht gelöst worden zu sein.
    Auch bei mir starte pulseaudio VOR pulsecontrol... hm...

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • Tja, da hab ich leider auch keine Idee, warum die Verbindung zu pulseaudio plötzlich nicht mehr geht. Ach ja, wenn alles nur so einfach wäre...


    Lars.

  • ich habe jetzt mal das loglevel von pulseaudio hochgestellt und siehe da, im neuesten Bootvorgang sieht es tatsächlich so aus, dass pulsecontrol VOR pulseaudio startet:
    Start pulseaudio:

    Code
    Oct 20 17:48:05 HD-VDR pulseaudio[1279]: [pulseaudio] main.c: OK, so you are running PA in system mode. Please note that you most likely shouldn't be doing that.
    Oct 20 17:48:05 HD-VDR pulseaudio[1279]: [pulseaudio] main.c: If you do it nonetheless then it's your own fault if things don't work as expected.
    Oct 20 17:48:05 HD-VDR pulseaudio[1279]: [pulseaudio] main.c: Please read http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode for an explanation why system mode is usually a bad idea.


    dann 5sek später wird das pulsecontrol plugin gestartet


    im Log eine Sekunde später ist der Start von pulseaudio dann fertig


    ABER kann mir jemand erklären, warum die Zeiten des Log-Eintrages plötzlich wieder "früher" sind?? Die Zeit springt von "Oct 20 17:48:08" auf "Oct 20 17:48:02" zurück ?? ICh habe es dreimal im Log kontrolliert, die REihenfolge der Einträge stimmt, der zugehörige Zeitstempel "springt" ?
    edit: :wand vergesst die Frage, wer lesen kann ist klar im Vorteil ;( der Timeserver wars :)



    Gibt es eine gute MEthode pulseaudio schneller, bzw. pulsecontrol später starte zu lassen?


    Danke für eure Hilfe,


    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • kein Thema, bin über jede Hilfe dankbar. Und Du opferst gerade viel Freizeit hier für mich!
    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • Hallo Lars,


    nochmal ne Idee gehabt?


    ISt wohl wirklich eine Timing Problem, in ca. 1 von 10 Fällen, startet pulseaudio schnell genug :( und ich habe direkt Ton. Einen Hinweis, wo ich ansetzen könnte?


    Sonst muss ich wohl wirklich irgendwo einen sleep einbauen, auch wenn das wirklich unschön wäre, der Startvorgang dauert trotz SSD schon lange genug.... Wo würde ich das sleep Kommando denn am Besten einbauen? (also wo genau in /etc/init/vdr.conf)?


    Danke und Grüße,


    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

    Einmal editiert, zuletzt von tshh42 ()

  • Die Lösung aus [0.6.0] Konfiguration pulseaudio
    mit der anderen Priorität hat schonmal nicht funktioniert.

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

  • So richtig hab ich da auch noch keine Idee gehabt, und Zeit noch weniger. :)
    Vielleicht kann ich da mal eine retry-Schleife einbauen.


    Ansonsten könnte man einen Upstart-Job schreiben, der auf "starting vdr" reagiert, ein Task ist und einfach wartet. Sowas in der Art gibt es hier im Portal, um z.B. auf die dvb-devices zu warten. Hab gerade keine Zeit, es herauszusuchen.


    Lars

  • so, habe eine Datei "vdr_start_ausbremsen.conf" in "/etc/init" abgelegt, mit folgendem Inhalt:


    Das zögert den VDR Start so lange raus, bis pulseaudio fertig ist.


    Etwas unschöne Lösung, scheint aber zu funktionieren.


    Grüße,


    Tim

    System 1: Zotac ZBOX HD-ID41 Plus, Intel Atom D525, Chipset: Intel NM10, IGP: GeForce G 210, 2x Sundtek SkyTV Ultimate(DVB-S/S2), Fernbedienung Hama-MCE, yavdr64-0.6.1 testing, SSD 1TB

Jetzt mitmachen!

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