Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bluetooth headset (a2dp_sink) and webcam are disabled in xrdp session #2187

Closed
trevorbowen opened this issue Mar 23, 2022 · 5 comments
Closed

Comments

@trevorbowen
Copy link

Hi,

I'm running Ubuntu 20.04 on both a client and server (laptop), and I am able to use bluetooth earbuds (TOZO-NC9) and a USB Logitech webcam with Microsoft Teams, when directly logged in a KDE-Plasma desktop environment on the server (laptop). However, if I xRDP into the server with KDE-Plasma, the bluetooth headset is forced into the "headset" (HSP/HFP) profile. Whether I use the bluetooth GUI or cli, I am unable to change the bluetooth profile to A2DP:

$ pacmd set-card-profile 0 a2dp_sink
Unable to set profile to a2dp_sink

Similarly, the Logitech webcam is completely absent. The "Camera" and "Microphone" fields are both stuck on "None", and there are no other options.

I have physical access to both machines. I would be happy if both the bluetooth earbuds and webcam were managed on the server (laptop) - not shared or effected in any way, as if I was logged directly into it. Otherwise, is there some way to share both devices to the client, so it can have full access to them?

I'm happy to share logs, if it will help.

Thanks!

@trevorbowen
Copy link
Author

trevorbowen commented Mar 23, 2022

The bluetooth problem was caused by the login manager (sddm in this case) grabbing the bluetooth device during boot, which blocked it from being an a2dp_sink candidate. This was solved by creating the following file on the server (laptop) and ensuring it contained these contents:

$ cat /var/lib/sddm/.config/pulse/default.pa
#!/usr/bin/pulseaudio -nF
#
# Work around for PA not allowing access to A2DP profiles in the user session
# because GDM already has it open.
# LP: #1703415

# load system wide configuration
.include /etc/pulse/default.pa

### unload driver modules for Bluetooth hardware
.ifexists module-bluetooth-policy.so
  unload-module module-bluetooth-policy
.endif

.ifexists module-bluetooth-discover.so
  unload-module module-bluetooth-discover
.endif

This should be identical to the contents of this file provided by Ubuntu package maintainers:

/var/lib/gdm3/.config/pulse/default.pa

And, it can be copied from there, if you prefer:

sudo /var/lib/gdm3/.config/pulse/default.pa /var/lib/sddmconfig/pulse/default.pa

This allows me to use the bluetooth headset (TOZO-NC9) for audio in and out.

However, the webcam is still not present. Any ideas?

Thanks! 😄

@matt335672
Copy link
Member

Sharing the webcam isn't supported - it's not clear to me whether we'd need [MS-RDPEV] or [MS-RDPEUSB] support for that, but we don't do either.

The sound works fine as that's a separate virtual channel which has been in the RDP specification for ages.

HTH,

@trevorbowen
Copy link
Author

Thanks, @matt335672. Sounds like this issue will be closed as "unsupported" or "won't fix". 😄 Do you have any plans of adding support for [MS-RDPEV] and [MS-RDPEUSB]? If so, any idea of ETA or roadmap? ... Thanks! I am very appreciative of all that this tool can already do.

@matt335672
Copy link
Member

Hi @trevorbowen

No, we don't have any current plans for this. We're a small team, and we're currently fully supported implementing GFX support and fixing some structural issues related to systemd.

Never say never, though. I can assure you it won't be very soon, but other than that I can't promise anything.

@trevorbowen
Copy link
Author

Thanks, @matt335672! Insight into your team's plans is much appreciated. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants