This commit is large and could easily be split into several smaller changes slowly bringing the two interfaces together one change at a time.
Are now the commits good, including their title/message?
Perhaps you could also outline the next steps?
1. Repeat the process for `wineoss` and `winecoreaudio`. 2. Merge each driver's `mmdevdrv.c` into a single one. 3. Rename `mmdevdrv.c` to `mmdevapi.c` and then change `main.c` (in `mmdevapi`) so that it loads the exported unixlib function list/array. At that point audio drivers will only contain code that cannot be "commonized". 4. Complete my PipeWire driver.