Sound mixer improvements
FreeBSD's default mixer utilities are not the best; mixer(8) is very basic and outdated, end users have to tweak sysctl(8) values to do simple things and programmers have to write DIY implementations for their programs (e.g audio/mixertui). This project aims to improve mixer handling for OSS on FreeBSD and make life for both programmers and users easier.
A mixer(3) library.
- Support builtin mixing of sound cards.
- List all devices and knobs.
- Extend knob capabilities:
- 32-bit floating point volume knobs.
- Recording input selector.
- (Maybe) effect selector.
- Select default sample rate and sound card (not really a mixer feature, but really useful to have).
- Provide as much information as possible about the mixer.
- Use the more modern OSSv4's ioctls.
Use mixer(3) and its new features.
- Get rid of the old codebase completely.
- Add more command line options.
Implement some missing but useful for mixer(3) OSSv4 ioctls in the kernel.
Since a new version of mixer(8) is one of the delievarables, it'll also serve as a testing ground for the library. Me and the mentor will also test the library with various sound devices we own.