Pick right USB audio sampling frequency

Having external USB HQ Fulla Shiit DAC. Switching between FreeBSD and Linux on the very same machine.

It seems that the USB DAC is stuck at 48000 Hz. Most of my audio is 44100 Hz (flacs, ncspot etc.) so I'd like to play them without any resampling (even though resampling is of the highest quality on FreeBSD (using hw.snd.feeder_rate_quality=4). When I switch to sysctl dev.pcm.6.play.vchanrate=44100 the audio gets distorted because of the mismatch in sampling frequencies. I'm using mpv for playing audio from the command line. usbconfig ... reset doesn't seem to help either.

Currently I have:
Code:
$ sysctl dev.pcm.6
dev.pcm.6.feedback_rate: 0
dev.pcm.6.mode: 7
dev.pcm.6.bitperfect: 0
dev.pcm.6.buffersize: 0
dev.pcm.6.rec.vchanformat: s16le:2.0
dev.pcm.6.rec.vchanrate: 48000
dev.pcm.6.rec.vchanmode: fixed
dev.pcm.6.rec.vchans: 1
dev.pcm.6.play.vchanformat: s32le:2.0
dev.pcm.6.play.vchanrate: 48000
dev.pcm.6.play.vchanmode: passthrough
dev.pcm.6.play.vchans: 2
dev.pcm.6.hwvol_mixer: vol
dev.pcm.6.hwvol_step: 5
dev.pcm.6.%parent: uaudio0
dev.pcm.6.%pnpinfo:
dev.pcm.6.%location:
dev.pcm.6.%driver: pcm
dev.pcm.6.%desc: USB audio
 
Having external USB HQ Fulla Shiit DAC.
Well, that's not a good starting point.

Does the problem persist if you restart the sound mixer ( service mixer restart) after changing dev.pcm.6.play.vchanrate?

Does it also persist if you enable dev.pcm.6.bitperfect (and restart the mixer)?

Does it happen with other audio players too or only with mpv?
 
I don't think I use audio/jack. Isn't oss/portaudio enough? I only play videos and music. No MIDI, no games.

I don't want you to use it permanently, I just think it is a good tool to change and confirm sample frequency on the soundcard.
 
I don't want you to use it permanently, I just think it is a good tool to change and confirm sample frequency on the soundcard.
Oh I see. Sounds good then! Please, do you have any command suggestion or a link, how to use it to detect the actual sampling frequency on the device? Have never used it before.
 
Oh I see. Sounds good then! Please, do you have any command suggestion or a link, how to use it to detect the actual sampling frequency on the device? Have never used it before.
Code:
jackd -r -d oss -r 48000 -C /dev/dsp -P /dev/dsp

Try that for the different speeds. The advantage of jackd is that it will fail with a clear error message if it can't set the specified frequency.
 
i happened to had same device and the only conclusion i had is that this particular series ( or maybe batch ) had buggy firmware. it never worked at correct sampling frequency. it never worked in bit-perfect mode, i had white noise or similar distortions. i also suspected that their USB implementation is non-standard, unlike claimed. It maybe very well ok for other devices, produced by this brand, but Fulla in my opinion should be avoided ( or upgraded somehow ) to be fine with FreeBSD. To contrast, i have built-in laptop sound intel card working just fine in bit-perfect mode. So frustrating.
 
Yeaaah, this DAC is very nice though but as you mentioned bitperfect mode never worked on this device.
 
Back
Top