Bug 18866 - Sound-Weiterleitung für RDP-Anmeldung
Sound-Weiterleitung für RDP-Anmeldung
Status: VERIFIED DUPLICATE of bug 28466
Product: Z_Univention Corporate Client (UCC)
Classification: Unclassified
Component: Terminal services
unspecified
Other Linux
: P5 enhancement
: ---
Assigned To: UCC maintainers
Felix Botner
: interim-3
: 13301 (view as bug list)
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-07-01 07:24 CEST by Stefan Gohmann
Modified: 2012-12-21 14:52 CET (History)
5 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Gohmann univentionstaff 2010-07-01 07:24:25 CEST
rdesktop verwendet jetzt per Default alsa für die Sound-Weiterleitung. Das funktioniert auch, wenn artsd als Soundserver verwendet wird, allerdings nicht wenn pulseaudio als Soundserver gestartet wird:

ALSA lib pcm_dmix.c:996:(snd_pcm_dmix_open) unable to open slave
ERROR: snd_pcm_open: Das Gerät oder die Ressource ist belegt
ALSA lib pcm_dmix.c:996:(snd_pcm_dmix_open) unable to open slave
ERROR: snd_pcm_open: Das Gerät oder die Ressource ist belegt
ALSA lib pcm_dmix.c:996:(snd_pcm_dmix_open) unable to open slave
ERROR: snd_pcm_open: Das Gerät oder die Ressource ist belegt
Comment 1 Philipp Hahn univentionstaff 2010-07-01 08:03:47 CEST
Die Meldung sieht danach aus, als ob rdesktop dann auch versucht, daß ALSA-Hardware-Device parallel zu PulseAudio zu nutzen. Letzteres greift dabei direkt auf das Hardware-Device zu und umgeht damit das eingerichtete dmix-Device; was ja auch sinn mach, da PulseAudio eine ähnliche Funktion wie dmix erfüllt, nur eben noch viel mehr kann und macht.

Wenn man sowieso Pulseaudio verwendet, sollte man ALSA so umkonfigurieren, daß alle ALSA-Anwendungen ihre Ausgabe standardmäßig an PulseAudio weiterleiten und nur dieses dann (per ALSA) auf das Hardware-Device zugreift. Siehe
http://www.pulseaudio.org/wiki/PerfectSetup#ALSAApplications
Comment 2 Felix Botner univentionstaff 2010-07-01 17:38:09 CEST
Die Alsa Umleitung aus comment#1 wird ja schon für die TS Session verwendet, aber eben nur dort (rdesktop läuft ja lokal auf dem TC).

Aber ist es wirklich sinnvoll auf dem TC zwischen Alsa und rdesktop noch einen Sound Server zu schalten (wenn rdesktop doch Alsa unterstützt)?

Könnte man nicht wie in etc/gdm/PostSession/scripts/030_univention-sound-kill.sh in der TC Umgebung beim Start der rdesktop Session alle Sound Server beenden und dann direkt Alsa verwenden?
Comment 3 Roman Asendorf univentionstaff 2010-08-16 21:57:19 CEST
Ebenfalls zu beachten:

Soll der padsp anstatt des alsadsp verwendet werden, so ist das Paket pulseaudio-utils nachzuinstallieren.

Für Pulseaudio werden zudem die Alsa-Libs benötigt, die im Paket libasound2-plugins enthalten sind.

Die Umstellung wie in dem comment#1 beschrieben sind möglich, durch Hinzufügen der /etc/asound.conf sind in einer Kundenumgebung testweise möglich gewesen.

Die Weiterleitung der Soundausgabe eines Citrix-Clients zu Pulseaudio war hingegen bisher erfolglos.
Comment 4 Ingo Steuwer univentionstaff 2010-09-30 15:15:13 CEST
Siehe auch Bug #18905

Man sollte bei einer RDP-Sitzung möglichst keinen Sound-Server/-Wrapper gestartet haben/nutzen.
Comment 5 Felix Botner univentionstaff 2010-10-04 09:55:47 CEST
Mit der UCR Richtlinie thinclient/sound/daemon=none wird keine Sound-Daemon
über /etc/gdm/PreSession/scripts/030_univention-sound-daemon.sh gestartet. 

etc/univention/rdesktop.Session macht bereist standardmäßig alsa.
Comment 6 Tim Petersen univentionstaff 2010-10-13 15:44:24 CEST
(In reply to comment #5)
> Mit der UCR Richtlinie thinclient/sound/daemon=none wird keine Sound-Daemon
> über /etc/gdm/PreSession/scripts/030_univention-sound-daemon.sh gestartet. 
> 
> etc/univention/rdesktop.Session macht bereist standardmäßig alsa.

Das Beschriebene funktioniert so.

Allerdings ist das eingangs erwähnte Problem hierdurch nicht behoben - wird pulseaudio als Soundserver verwendet, startet das rdesktop Session Skript dennoch rdesktop mit der Option sound:local alsa - was wie eingangs beschrieben nicht funktioniert.
Das Skript prüft an dieser Stelle lediglich, ob der Sound am TC generell deaktiviert ist, oder die Variable rdp/alsa/disbaled gesetzt ist - nur für diese Fälle wird rdesktop ohne Alsa Weiterleitung gestartet.

reopen
Comment 7 Felix Botner univentionstaff 2012-06-11 18:00:31 CEST
padsp ist i.M. keine Option, das rdesktop NUR alsa Sound unterstützt: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507654
Comment 8 Ingo Steuwer univentionstaff 2012-06-11 18:06:58 CEST
(In reply to comment #7)
> padsp ist i.M. keine Option, das rdesktop NUR alsa Sound unterstützt:
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=507654

Im nächsten TCS-Release will man das mit freerdp machen, siehe Bug #22977
Comment 9 Felix Botner univentionstaff 2012-06-12 12:13:34 CEST
Pulseaudio Support für rdesktop (bzw. wenn nötig für freerdp) ist wie folgt möglich:

--- etc/univention/rdesktop.Session.o   2012-06-11 23:35:24.000000000 +0200
+++ etc/univention/rdesktop.Session     2012-06-11 23:35:33.000000000 +0200
@@ -99,6 +99,15 @@
                fi
 
                if [ -n "$univentionSoundEnabled" -a "$univentionSoundEnabled" = "1" ] && [ -z "$rdp_alsa_disabled" ]; then
+                       if [ -n "$thinclient_sound_daemon" -a "$thinclient_sound_daemon" = "pulseaudio" ]; then
+                               config=$(mktemp)
+                               echo "pcm.!default { type pulse }" >> $config
+                               echo "ctl.!default { type pulse }" >> $config
+                               echo "pcm.pulse { type pulse }" >> $config
+                               echo "ctl.pulse { type pulse }" >> $config
+                               export PULSE_SERVER=localhost
+                               export ALSA_CONFIG_PATH=$config
+                       fi
                        params="$params -r sound:local:alsa"
                fi

rdesktop macht hier nun ALSA, ALSA selbst wird aber dann auf pulseaudio umgelenkt.
Comment 10 Moritz Muehlenhoff univentionstaff 2012-08-28 09:08:30 CEST
*** Bug 13301 has been marked as a duplicate of this bug. ***
Comment 11 Moritz Muehlenhoff univentionstaff 2012-09-13 13:15:38 CEST

*** This bug has been marked as a duplicate of bug 28466 ***
Comment 12 Felix Botner univentionstaff 2012-12-21 14:52:12 CET
OK, ein Duplikat.