Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Mar 2024 04:48:21 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Mark Johnston <markj@freebsd.org>
Cc:        Christos Margiolis <christos@freebsd.org>, status-updates@freebsdfoundation.org, freebsd-multimedia@freebsd.org, jrm@freebsd.org
Subject:   Re: Re: [Development report #7] Audio Stack Improvements
Message-ID:  <ZfUIdRnEWgg4GT7_@kib.kiev.ua>
In-Reply-To: <ZfUGCUBmJwrZoZ4Z@framework.home>
References:  <cwh2u6nkmwcb2sujgcejwvedv77h6i3hwkgh4j2qtvazwt4om7@fczrhwet2pdd> <ZfQobZH2b49nN8nN@framework.home> <yayczejf65tarwha34r7mjtivi6e2afgdj6iunt7zwsnpv2l3y@64xjpobl26fj> <ZfUGCUBmJwrZoZ4Z@framework.home>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Mar 15, 2024 at 10:38:01PM -0400, Mark Johnston wrote:
> On Fri, Mar 15, 2024 at 06:00:16PM +0100, Christos Margiolis wrote:
> > Hello Mark,
> > 
> > Mark Johnston wrote:
> > > > Behavior changes:
> > > > - Only one /dev/dspX device is exposed, as opposed to the current
> > > >   /dev/dspX.[X]X devices created by the snd_clone mechanism. The
> > > >   user/application now only needs to access the device through /dev/dspX
> > > >   or /dev/dsp and sound(4) will take care of all necessary audio
> > > >   routing.
> > > 
> > > Does this represent a backward compatibility break?  That is, will
> > > applications need any modification when running on a patched kernel?
> > 
> > Applications are meant to open an audio device through /dev/dsp (if
> > hw.snd.basename_clone is enabled), or through /dev/dspX, so the vast
> > majority of applications should work with no problems.
> > 
> > Applications that open a device through /dev/dspX.[X]X will break with
> > this patch. However, opening a device like this is discouraged anyway,
> > according to the sound(4) man page (see FILES section):
> 
> To your knowledge, do any popular applications actually do this?  A
> comment in the man page isn't very important if applications end up
> ignoring it. :)
> 
> If needed, would it be a lot of work to provide backward compatibility?
Should be rather trivial, to catch the case in the devfs lookup clone
callback and instantiate fake nodes.

> 
> > 	[...]
> > 	/dev/dsp%d.p%d       Playback channel.
> > 	/dev/dsp%d.r%d       Record channel.
> > 	/dev/dsp%d.vp%d      Virtual playback channel.
> > 	/dev/dsp%d.vr%d      Virtual recording channel.
> > 	[...]
> > 
> > 	The above device nodes are only created on demand through the
> > 	dynamic devfs(5) clone handler.  Users are strongly discouraged
> > 	to access them directly.  For specific sound card access, please
> > 	instead use /dev/dsp or /dev/dsp%d.
> > 
> > The patch basically does the same thing -- the output of /dev/sndstat
> > remains the same -- but without creating these device nodes.
> > 
> > Christos



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