yes a layer between the mod player and the directx, openal etc.
maybe the oooal.pas unit is usefull as a start for that. (it now only supports openal, but it can be adjusted to directx and sdl also).

Also a merry christmas!