-
-
Notifications
You must be signed in to change notification settings - Fork 81
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
Add local audio support for HDMI output. #143
Comments
To @Josh5 : There are manuals to do this in the x11docker wiki. I started off my project in 2020 from there. |
I was playing around with this a few months ago. I got it working after some time. Since then I didn't have a proper setup to do some further testing. I will upload a cleaned documentation of my steps and I would love to get this tested and implemented at a later point. Which OS are you running? |
Unraid |
@Freddy-0 Unraid here also and an help test |
Perfect. Same is true for me. |
I tried getting it working about 12 months ago but gave up and just went back to a VM, can't remember what I tried back then. I have 2 GPUs I can test with, an Intel UHD 750 & an RTX 3090. Unraid version is 6.12.10 |
I have 2 configs |
To follow up on this. I am running a Unraid box with a gt710 as a primary GPU and a RTX 2070 as a secondary gpu. I obviously play games on the 2070. I tried to recreate all the steps i took to get Unraid working as a host for my "gaming tv" I do not have a spare server atm to test this with, so i would be happy if you tested this config and gave me some feedback. Step 1: Install Nvidia DriverVia the Plugins Tab
Step 2: Install Audio DependenciesInstall Required Dependencies for PulseAudio and ALSARun the following command to update un-get update &&
un-get install pulseaudio pavucontrol alsa-plugins libsndfile orc speexdsp doxygen libasyncns flac libvorbis opus libogg bluez sbc gstreamer alsa-lib alsa-utils alsa-oss Optional: Install Bluetooth FirmwareTo install Bluetooth firmware, if not already installed, run: un-get install bluez-firmware Step 3: Install Unraid Sound DriverVia the Plugins Tab
Step 4: Install UserscriptsAdd the Custom Script
Step 5: Advanced Docker ConfigurationConfigure the Docker ContainerIn the advanced Docker editing mode, add the following extra parameters to run the container unprivileged: --env PULSE_SERVER=unix:/tmp/pulseaudio.socket --volume /tmp/pulseaudio.socket:/tmp/pulseaudio.socket --device='/dev/snd' --runtime='nvidia' Step 6: Verify Audio ConfigurationCheck HDMI Output AvailabilityRun the following command in the Docker terminal to check if a display is connected: pactl list cards | grep hdmi-output | sed -e '/not available/s/.*/\x1b[31m&\x1b[0m/' -e '/available/s/.*/\x1b[32m&\x1b[0m/' |
I can give this a test on Thursday I reckon, I've just had a drive die and need to rebuild before hand. I'll let you know how I go with it. |
Amazing work mate! I managed to squeeze this in today and it's working wonderfully except for one point: "ENABLE_VNC_AUDIO" needs to be set to false, it doesn't work if it's set to true. I'll see if I can test it later today or tomorrow on intel. |
Amazing that this works. Are you able to test this with one change: try removing the GPU you are not directly connected to. |
Also I have a script that sets the default sound source upon container startup. Is yours also switching away from the last selected source or is the startup source the right one? |
I have also installed this, but I thought it might not be needed. Maybe it helps though. Driver: GitHub - thesofproject/sof-bin: Firmware and topology binaries
|
I've just tested on my primary GPU (Intel UHD 750) which is primarily reserved for for my KVM in case Unraid crashes while I'm travelling and it's working great as well.
I've attempted to install this but with the latest version: v2024.03 and after running the install script nothing happens, no confirmation that it was installed or error that it didn't so I'm not quite sure what's happened with it yet.
As far as I can tell there is only a single sound source on container start up so there shouldn't be any switching going on: I'm still testing here and there when I can, but I've attached Unraid syslog from container start to running, the no such file or directory errors I posted yesterday I suspect were happening when I rebooted Unraid, I will test this again later today to confirm and report back : |
Nice, if I see and understand correctly there are no more errors in the logs after a reboot. For me all of the above are true and the Docker is running on the secondary GPU. The main Server is running 2 GPU's, IOMMU enabled and vfio pcie acs override applied to some extend. I am currently fiddling around with a temporary test server with 1 GPU, but I am having some problems with getting video out at all. |
Nah the errors are still there but I suspect they happen during the unraid boot process (I haven't tested yet to confirm this theory, it's just that the times in the syslog were about the time I had to reboot yesterday).
|
@Freddy-0 sorry mate I haven't had much time this week to do any more testing on this, however I did just confirm that the pulseaudio errors in the screenshot I posted earlier occur during array start and stop which means it's something in the user script (I'll narrow it down further when I get a chance) |
Is your feature request related to a problem?
I have a fanless mini pc on N5105 chip, I would like to use it as a small media/streaming/light gaming device connected to my TV. It doesn't support properly GPU passtrough via VFIO, but I can get sound from unraid sound-driver https://github.com/ich777/unraid-sound-driver
However what I tried I can't get sound in the container to work.
What is your feature request?
Please add audio passthrough to be used on HDMI output.
Are there any workarounds?
No response
Additional Context
No response
The text was updated successfully, but these errors were encountered: