Cannot enable sound
Opened this issue · 11 comments
Truth be told, I've never had sound but gave up whenever I saw the onzu build had been discontinued. I found this, updated just the image to be:
guacamole: # External web vnc
container_name: guacamole
image: jwetzell/guacamole:latest
restart: unless-stopped
ports:
- 8080:8080
volumes:
- ./guacamole/data:/config
environment:
- EXTENSIONS=auth-totp
networks:
- gate
I have a sound adapter and a volume slider, just no sound emits from the browser. Everything else works.
Here are logs, NOTE: The rejection was because I didn't actually log out then back in after changing the image, once I did that it was fine.
I would always specify the version of the image to use (instead of latest). But i've been using 1.5.1-amd64 and have audio working with a Windows 10 VM and RDP. I'm not sure what you are RDP'ing into but the RDP server need to support audio redirection. I think there are also some connection options regarding audio not sure what they effect though.
Yeah it's set up standard rdp and when I use the rdp client I have audio.
I double checked and have nothing regarding sound disabled.
Also changed to the specific tag and no sound.
The only thing I can see is that your logs have some sort of WebSocket error with some HttpTunnel fallback and no audio stream picked up. Here is a snippet from my connection to RDP with working audio.
guacd[361]: INFO: Loading keymap "en-us-qwerty" 23:29:15.075 [http-nio-8080-exec-1]
INFO o.a.g.tunnel.TunnelRequestService - User "<USERNAME>" connected to connection "32".
guacd[361]: INFO: Connected to RDPDR 1.13 as client 0x0003
guacd[361]: INFO: Connected to RDPDR 1.13 as client 0x0002
guacd[361]: INFO: RDPDR user logged on
guacd[361]: INFO: Accepted format: 16-bit PCM with 2 channels at 44100 Hz
and here is from your logs
guacd[593]: INFO: Loading keymap "en-us-qwerty" 22:21:25.452 [http-nio-8080-exec-6]
INFO o.a.g.tunnel.TunnelRequestService - User "negativzeroe" connected to connection "1". 22:21:25.452 [http-nio-8080-exec-6]
INFO o.a.g.t.h.RestrictedGuacamoleHTTPTunnelServlet - Using HTTP tunnel (not WebSocket). Performance may be sub-optimal.
guacd[593]: INFO: Connected to RDPDR 1.13 as client 0x0003
guacd[593]: INFO: Connected to RDPDR 1.13 as client 0x0002
guacd[593]: INFO: RDPDR user logged on
In the meanwhile I will continue trying to get it to break, trying may I know what OS you are running so I can try to setup a similar setup.
My host is Debian Bullseye - and I'm running the VM on kvm. Here is my xml from it. Note, When using the Windows RDP client (mstsc) I had sound prior to installing this sound card, I added it as a troubleshooting step based on something I read elsewhere which gave me a volume slider in guacamole (as opposed to a red X), so I'm partially there with that, just the sound doesn't emit lol.
Also - I've already added my admin account and the "docker" account to sound, and the two pulse groups in /etc/group.
win10.xml.md
Oh and regarding the websocket thing, it may be relevant to know I'm also using the linuxserver/swag container with this in nginx config (I checked the sample newest version and there is no change):
## Version 2021/05/18
# make sure that your dns has a cname set for guacamole and that your guacamole container is not using a base url
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name guacamole.*;
include /config/nginx/ssl.conf;
client_max_body_size 0;
# enable for ldap auth, fill in ldap details in ldap.conf
#include /config/nginx/ldap.conf;
# enable for Authelia
#include /config/nginx/authelia-server.conf;
location / {
# enable the next two lines for http auth
#auth_basic "Restricted";
#auth_basic_user_file /config/nginx/.htpasswd;
# enable the next two lines for ldap auth
#auth_request /auth;
#error_page 401 =200 /ldaplogin;
# enable for Authelia
#include /config/nginx/authelia-location.conf;
include /config/nginx/proxy.conf;
include /config/nginx/resolver.conf;
set $upstream_app guacamole;
set $upstream_port 8080;
set $upstream_proto http;
proxy_pass $upstream_proto://$upstream_app:$upstream_port;
proxy_buffering off;
}
}
I've since added:
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
access_log off;
That seems to resolve the HTTP message but still no sound.
guacd[269]: INFO: Creating new client for protocol "rdp"
guacd[269]: INFO: Connection ID is "$7e80c761-af4b-46ac-8c7c-5bbfe34a0a71"
guacd[353]: INFO: Security mode: NLA
guacd[353]: INFO: Resize method: display-update
guacd[353]: INFO: Clipboard line ending normalization: Preserve (none)
guacd[353]: INFO: User "@f11c8991-5772-4c8f-8070-0f5281b849ad" joined connection "$7e80c761-af4b-46ac-8c7c-5bbfe34a0a71" (1 users now present)
guacd[353]: INFO: Loading keymap "base"
guacd[353]: INFO: Loading keymap "en-us-qwerty"
13:31:54.341 [http-nio-8080-exec-9] INFO o.a.g.tunnel.TunnelRequestService - User "negativzeroe" connected to connection "1".guacd[353]: INFO: Connected to RDPDR 1.13 as client 0x0003
guacd[353]: INFO: Connected to RDPDR 1.13 as client 0x0002
guacd[353]: INFO: RDPDR user logged on
Just following up on this. Not sure what else to do.
I haven't had time to do any sort of troubleshooting/debugging on this. I can confirm audio works using RDP from a Windows VM. I have not gotten audio to work on an Ubuntu VM using gnome-rdp. That's as far as I've gone.
Okay - just to clarify it is a windows vm, just running on KVM linux host (same host as docker stack).