X11/XFCE, softhdvaapi beim Umschalten der virtuellen Konsole

  • Meine Herren,

    ...mal wieder eine noob-Kategorie-Frage. (Ich versuchte im Forum zu suchen, habe aber keine guten Ergebnisse erhalten.)


    Kurz zu meinem HTPC: Debian 10 auf J4105-ITX, VDR + softhdvaapi, XFCE4 mit xfwm4, kein xfce4-panel, aber 4 Workspaces.


    Heute im morgen, als ich versuchte das "theft of focus" etwas zu untersuchen und zu beschreiben, habe ich aus X (mit laufendem fullscreen softhdvaapi) durch CTRL+ALT+F1 in die erste Text-Konsole umgeschaltet, und ging weg von dem Rechner für ca eine halb-Stunde. Nach meinem Zurückkehren habe ich beobachtet, daß auf der Text-Konsole manche Fehlermeldungen aufgetaucht haben, von dem i915 Treiber (leider habe ich derzeit keine Kopie, auf Anfrage kann ich das reproduzieren) - das irgendwas nicht resettiert werden konnte. Etwas rund um der Buffering von Video, denke ich. Die Tastatur auf der Konsole war fast kaputt. Reagierte nicht sofort zu CTRL+ALT+F7, auch NumLock reagierte nicht. Ich habe mich über SSH angemeldet und da arbeitete alles normal - und nach ca einer Minute reagierte auch die Konsole und umgeschaltete sich zurück in den VDR auf X11. Aber: das Bild war statisch (keine Bewegung), nur jede ein paar zehnten Sekunden hat sich ausgetauscht. Manches Audio gab es, aber es gab Pausen auch in dem Audio.


    Ich glaube daß das softhdvaapi dieser Situation nicht geeignet ist - daß es Versucht, die Audio/Video-Ausgabe dem VAAPI weiter zu liefern, obzwar das fullscreen Fenster jetzt einer unsichtbaren virtuellen Konsole entspricht. Eigentlich die Audio-Ausgabe wird dem PulseAudio übergeben - weiss ich nicht ob es durch VAAPI passt, oder ob der vdr-plugin-softhdvaapi direkt mit dem PulseAudio redet. Ich habe keine Ahnung, wessen Verantwortung es ist, die "Bewegung des Users unter den virtuellen Konsolen" zu verfolgen, und die Lieferung der A/V Daten entsprechend zu pausieren / zeitweilig zu unterbrechen. Und z.B. das Audio könnte wahlweise im Betrieb bleiben, während der User auf einer anderen Konsole arbeitet? Anders bin ich sicher gerne, daß (falls?) der VDR-Engine im Betrieb bleibt, sodaß planmäßige Aufnahmen normal arbeiten.


    Ehrlich gesagt geht es mir kaum um die Text-Konsole. Eher, ich habe vor, manchmal auf einen anderen Workspace in X11 umzuschalten, z.B. den Browser zu öffnen... Soetwas habe ich noch nicht ausprobiert. Im allgemeinen muss ich noch mehrere Aspekte dieses Einfalls testen - gebt mir bitte Beschied, wenn der ganze Einfall ganz dumm ist :-)


    Vielleicht noch eine Frage dazu: gibt es manches Kommando in der Fernbedienung (remote.conf), womit man absichtlich den A+V Stream abschalten kann? Sodaß nur das statische OSD auf dem Bildschirm bleibt. Sollte ich einen unerreichbaren Kanal in dem channels.conf eingeben, und an den umzuschalten? Oder gibt es manche reinere Weise, in dem GUI "auf Neutral zu schalten" ?


    Danke für euere Zeit


    Frank

  • Pulseaudio ist in einer Desktop-Session an die aktive Konsole gebunden - wenn man umschaltet, wird die Ausgabe pausiert und alle Anwendungen, die daran hängen, werden dann ihr Audio nicht mehr los, was zu Ruckeln, Pufferüberläufen und vielen anderen unschönen Dingen führen kann - es ist möglich Pulseaudio im System Mode laufen zu lassen (vgl. z.B. https://unix.stackexchange.com/a/382969), aber davon wird üblicherweise abgeraten, weil es mehr Ressourcen benötigt und die strikte Trennung zwischen den Sessions aufgeweicht wird - wir haben das bei yaVDR 0.6 damals aber so gelöst, weil wir keine richtige graphische Session hatten.


    Ein Wechsel des Workspace sollte kein Problem sein, weil man dabei in der selben Session bleibt.

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • Zum Thema möchte ich bestätigen, daß das laufende VDR sich bei umschaltung zwischen XFCE4 Workspaces ganz gut benehmt. Ich verwende bisher eine PC-Tastatur anstatt Fernbedienung und VDR im fullscreen-modus reagiert zu seinen eigenen Kommandos und der WM reagiert zu CTRL+F1 bis CTRL+F4. Also wenn ich auf einen anderen Workspace umschalte, spielt VDR einfach weiter. Audio läuft weiter, Video natürlich nicht mehr sichtbar ist, aber es wird wahrscheinlich dekodiert, weil die CPU-Belastung sich nicht ändert. Das ist wahrscheinlich ganz in Ordnung.

    Wenn ich noch etwas extra mit wmcontrol+xdotool schaffe, werde ich irgendwas positieves hier melden.