I have copied the pipewire.conf to my ~/.config/pipewire path with the following entries uncommented, my laptops built-in sound card supports up to 192000 sample rate. I’m using the headphone jack from my computer into the aux on a soundbar. All my music plays fine just never at the correct sample rate for the hi-res audio files.
I have restarted the pipewire daemon but still when I run this command below to see the stream for the song playing, I get the following even though my audio file is 24 bit/96000. How can i make this work? Thank you,
I appreciate the response. I will look into this tool you mentioned. I’m using moc (music on console) it supports whatever source file I give it to play to my default audio source. In my moc config file, I have these settings below.
Always use this sample rate (in Hz) when opening the audio device (and
resample the sound if necessary). When set to 0 the device is opened
with the file’s rate.
ForceSampleRate = 0
By default, even if the sound card reports that it can output 24bit samples
MOC converts 24bit PCM to 16bit. Setting this option to ‘yes’ allows MOC
to use 24bit output. (The MP3 decoder, for example, uses this format.)
This is disabled by default because there were reports that it prevents
MP3 files from playing on some soundcards.
Allow24bitOutput = yes
Made a new discovery today via pw-top command. It shows this below, so it seems that moc is indeed playing the file at 96000 but ALSA is somehow just hardcoded to 48000.
It is not common for integrated soundcards to be able to play higher than 48Khz. Are you certain that your soundcard supports this at the hardware level?
I was mistaken my headphone jack is not on 0x560 its on 0x40 which only supports 48000. I also tested with a USB dac and I do get 96000 and 192000 on ALSA now. Thank you Olivier for having me double check this on my hardware. The full output from this command cleared up my confusion, below are the important parts. cat /proc/asound/card0/codec#0