=== Audio Stack Improvements

Contact: Christos Margiolis <christos@FreeBSD.org>

The FreeBSD audio stack is one of those fields that does not attract the same attention and development as others do, since it has been left largely unmaintained, and, although high in quality, there is still room for improvement -- from lack of audio development frameworks, to missing userland utilities and kernel driver-related bugs.
This project is meant to touch on all those areas, and as such, is more of a general improvement project, than an implementation of a specific feature.

Important work since link:https://www.freebsd.org/status/report-2024-04-2024-06/#_audio_stack_improvements[last report]:

* Several man:sound[4] fixes.
* Wrote link:https://cgit.freebsd.org/src/tree/usr.sbin/mixer/tests[mixer(8)] and link:https://cgit.freebsd.org/src/tree/tests/sys/sound[sound(4)] tests.
* link:https://cgit.freebsd.org/src/commit/?id=9aac27599acaffa21ff69c5be8a2d71d29cc3d6b[mixer(8): Implement hot-swapping]
* link:https://reviews.freebsd.org/D46227[audio(8): Initial revision]
* link:https://cgit.freebsd.org/src/commit/?id=c15c9315b2cb7601cc337f7d5a8e124f4b2d5861[sound: Implement dummy driver]
* Improved and added link:https://cgit.freebsd.org/src/tree/share/examples/sound[sound examples].
* link:https://reviews.freebsd.org/D46418[mididump(1): Initial revision]
* virtual_oss patches.
* Gave a talk at the 09/2024 DevSummit in Dublin, Ireland.

Future work includes:

* More bug fixes and improvements.
* Finalize and commit of man:audio[8] and man:mididump[1].
* Implement a generic MIDI layer, similar to pcm/, and improve/modernize the MIDI codebase in general.
* Implement a bluetooth device management utility.
* More virtual_oss patches and improvements.
* Attempt to implement an man:snd_hda[4] pin-patching mechanism.
* Investigate SOF/DMIC support.

You can also follow the development process in link:https://lists.freebsd.org/subscription/freebsd-multimedia[freebsd-multimedia@], where I post regular reports.

Sponsor: The FreeBSD Foundation
