Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 May 2023 12:48:46 +0000
From:      bugzilla-noreply@freebsd.org
To:        multimedia@FreeBSD.org
Subject:   [Bug 271559] [sound] [snd_uaudio] Creative Katana V2X garbled audio
Message-ID:  <bug-271559-12827-gX1OncD9Bv@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-271559-12827@https.bugs.freebsd.org/bugzilla/>
References:  <bug-271559-12827@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D271559

--- Comment #12 from Florian Walpen <dev@submerge.ch> ---
(In reply to Emanuel Haupt from comment #11)

Ok, if it works sometimes it's not completely hopeless :)
I was wrong about the conversions, looks like the application specific

> {userland} -> feeder_root(0x00201000) -> feeder_volume(0x00201000) -> fee=
der_rate(0x00201000 q:1 44100 -> 48000) -> {hardware}

doesn't go to hardware, but into the simplified default conversion chain:

> {userland} -> feeder_mixer(0x00201000) -> feeder_matrix(2.0 -> 5.1) -> fe=
eder_format(0x08601000 -> 0x08610000) -> {hardware}

But there's another vchan opened by a different (unnamed) application, which
may interfere with your settings. It's 2 channel 16bit at 44100kHz, playback
and recording:

> pcm8:play:dsp8.p0[pcm8:virtual:dsp8.vp1]: spd 44100/48000, fmt 0x00200010=
/0x00201000, flags 0x10000000, 0x0000002b
>        interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:8192/1024/8]
>        channel flags=3D0x10000000<VIRTUAL>
>        {userland} -> feeder_root(0x00200010) -> feeder_format(0x00200010 =
-> 0x00201000) -> feeder_volume(0x00201000) -> feeder_rate(0x00201000 q:1 4=
4100 -> 48000) -> {hardware}

Maybe a sound server running, like pulseaudio? That could also explain the
"sometimes". I'd suggest to disable these while experimenting, until you ha=
ve a
working solution.

Also you can disable vchan conversion completely if you run virtual_oss
exclusively on that device:

> sysctl dev.pcm.8.play.vchans=3D0
> sysctl dev.pcm.8.rec.vchans=3D0

That should give you a "barebone" 6 channel 24bit 48kHz device to run
virtual_oss on, conversion can be done in virtual_oss.

@HPS: How would you map the 2 channels to 5.1 in virtual_oss? Only to the
"front" speakers or spread it to all channels?

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-271559-12827-gX1OncD9Bv>