Das schrottige MCI Interface hatte ich auch nicht vermutet. Grundlegend kannst du die MP3 Dateien auch dekodieren lassen, schliesslich ist genau dafür der ACM geschaffen worden und er liefert schon ein Datenformat welches du direkt an WaveOut weitergeben kannst. Weiterer Vorteil: Du kannst durch den ACM auch viele weitere Formate unterstützen, so lange es den entsprechenden Codec gibt. (MP3 Codec zum dekodieren ist in Windows vorinstalliert).
Und zum zweiten Punkt: Es gibt genug und genauso keine Informationen dazu. Jeder Hersteller kocht sein Süppchen beim HW Interface zu den Soundkarten etc. Manche sind gut dokumentiert, andere total schlecht bzw. gar nicht. Ausserdem müsstest du dann für jede beliebige Soundkarte bzw. Hersteller eine extra Unterstützung bauen. Dies nehmen dir sonst die Treiber vom Hersteller für Windows ab. Das ist aber nichtmal das einzige Problem. Wenn du die HW Informationen hättest, müsstest einen Treiber programmieren - und lass dir gesagt sein, dass die Welt in Windows eine komplett andere ist. Es ist nichtmal ansatzweise einfach sowas zu machen - selbst für einen erfahrenen Windows
GUI Programmierer. Vor allem kannst du mit dem Teil sehr leicht für Verstimmung im System sorgen und vom totalen Hardwareverlust bis zum dauerhaften Blue-Screen System alles hinbekommen - und das noch nicht mal mit Absicht...