From 3753c50d7eed9c624d6801903960c63c801ecbb3 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Mon, 1 Aug 2022 17:48:48 +0200 Subject: [PATCH] Behringer UCM204HD - use S32_LE format for dshare/dsnoop BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/192 Signed-off-by: Jaroslav Kysela --- ucm2/USB-Audio/Behringer/UMC204HD-HiFi.conf | 2 ++ ucm2/common/pcm/split.conf | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/ucm2/USB-Audio/Behringer/UMC204HD-HiFi.conf b/ucm2/USB-Audio/Behringer/UMC204HD-HiFi.conf index ae0f477..19660d2 100644 --- a/ucm2/USB-Audio/Behringer/UMC204HD-HiFi.conf +++ b/ucm2/USB-Audio/Behringer/UMC204HD-HiFi.conf @@ -5,6 +5,7 @@ Macro [ SplitPCM { Name "umc204hd_stereo_out" Direction Playback + Format S32_LE Channels 2 HWChannels 4 HWChannelPos0 FL @@ -17,6 +18,7 @@ Macro [ SplitPCM { Name "umc204hd_mono_in" Direction Capture + Format S32_LE Channels 1 HWChannels 2 HWChannelPos0 MONO diff --git a/ucm2/common/pcm/split.conf b/ucm2/common/pcm/split.conf index a92a3b2..be47f72 100644 --- a/ucm2/common/pcm/split.conf +++ b/ucm2/common/pcm/split.conf @@ -11,6 +11,7 @@ # Arguments: # Name - PCM name (alsa-lib) # Direction - "Playback" or "Capture" +# [Format] - sample format like S16_LE or S32_LE # Channels - application channels # HWChannels - hardware channels # HWChannelPos0 - channel position (MONO FR FL etc. - see alsa-lib's strings) @@ -39,6 +40,13 @@ DefineMacro.SplitPCM.If.0 { True.Define.__buffer_time 500000 False.Define.__buffer_time "${var:SplitPCMBufferTime}" } + If.format { + Condition { + Type String + Empty "${var:-__Format}" + } + True.Define.__Format S16_LE + } LibraryConfig.pcm.SubstiConfig.pcm."${var:__Name}" { @args [ CARD DEV CHN0 ] @@ -56,6 +64,7 @@ DefineMacro.SplitPCM.If.0 { device $DEV chmap [ "${var:__HWChannelPos0}" ] } + format "${var:__Format}" channels "${evali:$__HWChannels}" period_time "${evali:$__period_time}" buffer_time "${evali:$__buffer_time}" -- 2.47.1