I have a strange Problem and I dont know the source, so I have to be vague at first.
Setup:
Desktop PC running Manjaro 6.1.85-1
Hyprland DE
Pavucontrol for Audio Management
Readon RX 580 GPU
Onkyo TX-NR686 AV-Receiver
Samsung UE48JU6550U TV
In my current setup, whenever I have plugged a HDMI Output from my GPU into a HDMI Input of the AV Receiver and its Output into the TV.
Whenever I connect the HDMI to the TV, every played media speeds up resulting in a distorted, speed up and high pitched output on the AV-Receivers Audio-Output.
In Youtube this even effects the speed of the progress bar, that is increased without Youtube itself indicating a change in playback speed. Also Spotify and all other media behave the same.
This Problem does not occur, if I unplug the HDMI to the TV and keep the connection to the AV-Receiver.
It also does not happen, if I log into KDE-Plasma or boot into Windows in the same config. Exclusively in Hyprland, so it seems to be a software issue. I am happy to provide additional logs and info to anybody willing to help.
I will also ask in the Hyprland forum, but since I don’t know the exact problem, I don’t know the source yet.
Speeded Up audio playback is most likely due to PulseAudio/PipeWire not resampling audio from audio applications to match the output sink sample-rate for output devices
For example: If HDMI output wants 48000 audio samples per second, but it is getting only 44100 samples per second. 1 second of audio is played in 44100/48000= 0.91875 seconds
I suggest check sample-rates of input and output playback streams in PulseAudio/PipeWire whilst audio is playing
pactl list sink-inputs; pactl list sinks
Run commands before and after HDMI monitor is connected and compare sample-rates
So actually they do match up, no matter if the HDMI is connected or not.
Also, the offset is audibly higher than a factor of 0.918. It sounds like more like double the speed.
Sample Specification shows different bit-rates for sink-input (float32le) and sink (s16le)
PulseAudio normally uses default-sample-format = s16le
Please post more information about PulseAudio configuration
pulseaudio --dump-conf | grep sampl
Specifications for TX-NR686 Receiver state it has a 384 kHz/32-bit audio DAC
so it may not be very happy with only 44.1 kHz/16-bit audio over HDMI
I suggest reconfigure PulseAudio to output 48 KHz/24-bit audio
and restart pulseadio service to load new configuration
systemctl --user restart pulseaudio
and check output in pact list sinks
Also suggest connect system to receiver with a USB cable, check if USB audio device shows any audio controls in alsamixer and test audio playback via USB instead of HDMI
So there are 4 simple ways to send audio from the system to the receiver
(not including network or Bluetooth connections)
GPU audio device over HDMI
On-board audio device digital S/PDiF output (if suppported)
On-board audio device analog output
USB output direct to DAC in the receiver
Options 1 & 2 have no control over Digital to Analog Conversion process in the receiver
Option 3 is most likely to work without sample-rate issues
and the on-board audio device can be configured for high quality audio output
but not likely sound as good as using the audio receiver direct via USB
Ok
The Receiver is standing facing forward to a wall and is hard to move in the current setup. I had never noticed the USB Port back there, but you are absolutely right. I will have to find a suitable cable and move a lot of stuff, but I’ll try your suggestion above and report the results as soon as I get to it.
Connecting via USB did not resolve the issue, at least without a lot of potential further stuff to make that work. However just not using the HDMI audio and using the onboard Audio Device Analog Output instead resolves the issue as it does not suffer from the sampling problem.
It is not the nicest fix, but it works for now, so I would call this issue solved.
Thanks a lot for the Input @nikgnomic ^-^