USB DAC audio glitches

Hey,
Sound Blaster G3 USB DAC, 14.1-RELEASE-p5. I experience random small glitches, interested if the kernel dump below is normal, especially that frequency jitter:

Code:
Sep 26 12:14:12 p1 kernel: uaudio_chan_play_sync_callback: Comparing 48017 Hz :: 48000 Hz
Sep 26 12:14:12 p1 kernel: uaudio_chan_play_callback: sending one sample more
Sep 26 12:14:12 p1 syslogd: last message repeated 2 times
Sep 26 12:14:12 p1 kernel: uaudio_chan_play_callback: transferring 2322 bytes
Sep 26 12:14:12 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes
Sep 26 12:14:13 p1 syslogd: last message repeated 123 times
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_sync_callback: transferred 4 bytes
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_sync_callback: Value = 0x0005fff8
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_sync_callback: Comparing 47999 Hz :: 48000 Hz
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_callback: sending one sample less
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_callback: transferring 2298 bytes
Sep 26 12:14:13 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes
Sep 26 12:14:14 p1 syslogd: last message repeated 123 times
Sep 26 12:14:14 p1 kernel: uaudio_chan_play_sync_callback: transferred 4 bytes
Sep 26 12:14:14 p1 kernel: uaudio_chan_play_sync_callback: Value = 0x00060000
Sep 26 12:14:14 p1 kernel: uaudio_chan_play_sync_callback: Comparing 48000 Hz :: 48000 Hz
Sep 26 12:14:14 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes
Sep 26 12:14:15 p1 syslogd: last message repeated 124 times
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_sync_callback: transferred 4 bytes
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_sync_callback: Value = 0x0005fec1
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_sync_callback: Comparing 47961 Hz :: 48000 Hz
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_callback: sending one sample less
Sep 26 12:14:15 p1 syslogd: last message repeated 2 times
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_callback: transferring 2286 bytes
Sep 26 12:14:15 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes
Sep 26 12:14:16 p1 syslogd: last message repeated 123 times
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_sync_callback: transferred 4 bytes
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_sync_callback: Value = 0x0005fe77
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_sync_callback: Comparing 47952 Hz :: 48000 Hz
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_callback: sending one sample less
Sep 26 12:14:16 p1 syslogd: last message repeated 2 times
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_callback: transferring 2286 bytes
Sep 26 12:14:16 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes
Sep 26 12:14:17 p1 syslogd: last message repeated 123 times
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_sync_callback: transferred 4 bytes
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_sync_callback: Value = 0x0005fe8f
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_sync_callback: Comparing 47954 Hz :: 48000 Hz
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_callback: sending one sample less
Sep 26 12:14:17 p1 syslogd: last message repeated 2 times
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_callback: transferring 2286 bytes
Sep 26 12:14:17 p1 kernel: uaudio_chan_play_callback: transferring 2304 bytes

Code:
jb@p1 ~> cat /dev/sndstat
FreeBSD Audio Driver (64bit 2009061500/amd64)
Installed devices:
pcm0: <NVIDIA (0x0094) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v)
pcm1: <NVIDIA (0x0094) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v)
pcm2: <NVIDIA (0x0094) (HDMI/DP 8ch)> on hdaa0 (1p:1v/0r:0v)
pcm3: <Creative Technology Ltd Sound Blaster G3> on uaudio0 (1p:1v/1r:1v)
pcm4: <Creative Technology Ltd Sound Blaster G3> on uaudio0 (1p:1v/0r:0v) default
No devices installed from userspace.

Code:
jb@p1 ~> sysctl hw.snd
hw.snd.maxautovchans: 16
hw.snd.default_unit: 4
hw.snd.version: 2009061500/amd64
hw.snd.default_auto: 0
hw.snd.verbose: 1
hw.snd.vpc_mixer_bypass: 1
hw.snd.feeder_rate_quality: 4
hw.snd.feeder_rate_round: 25
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_min: 1
hw.snd.feeder_rate_polyphase_max: 183040
hw.snd.feeder_rate_presets: 100:8:0.85 100:36:0.92 100:164:0.97
hw.snd.feeder_eq_exact_rate: 0
hw.snd.feeder_eq_presets: PEQ:16000,0.2500,62,0.2500:-9,9,1.0:44100,48000,88200,96000,176400,192000
hw.snd.basename_clone: 1
hw.snd.compat_linux_mmap: 0
hw.snd.syncdelay: -1
hw.snd.usefrags: 0
hw.snd.vpc_reset: 0
hw.snd.vpc_0db: 45
hw.snd.vpc_autoreset: 1
hw.snd.timeout: 5
hw.snd.latency_profile: 1
hw.snd.latency: 3
hw.snd.report_soft_matrix: 1
hw.snd.report_soft_formats: 1

Code:
jb@p1 ~> sysctl dev.pcm.4.play
dev.pcm.4.play.vchanformat: s24le:2.0
dev.pcm.4.play.vchanrate: 48000
dev.pcm.4.play.vchanmode: fixed
dev.pcm.4.play.vchans: 1
 
hi mate

i used these settings on my fiio usb dac ( which no longer works unfortunately )
for bitperfect audio

Code:
dev.pcm.4.play.vchans=0
dev.pcm.4.bitperfect=1
 
Are there actually two USB audio devices, as it shows pcm3 and pcm4 as Sound Blaster G3? Or does it appear as two pcm devices by itself?

The uaudio messages just tell you that the driver corrects some drift, but that shouldn't cause audible glitches. You could try pcm3 in duplex mode to avoid the drift (often the recording channel is used to synchronize). But my bet would be that there's a different cause for the glitches. Try another player / sound server, increase buffer sizes, and report sysctl hw.snd.verbose=2; cat /dev/sndstat when the glitches happen again.
 
Are there actually two USB audio devices, as it shows pcm3 and pcm4 as Sound Blaster G3? Or does it appear as two pcm devices by itself?
The device has two modes of operation, therefore two pcms.

I was concerned about that jitter whether such compensations are expected or not.
 
Back
Top