Just couple of my minds.
* Integration with Node position
Not required, if programmist will need this - he’s do it by self in way, what is best in his game.
Not required - really, very old and unuseful.
* Play background music: loop, queue, volume
I think not required too. This is just sound effect - and if you provide it as is, programmer can use them as he wishes. In any serious game exist own SoundManager for this.
This is may be conflict with Android/iOS system fade… But I’ve not recommend done background music.
For example - we can fade out old sound and fade in new music in one moment (menu change / scene change / change game situation, etc.)
* Hardware accelerated play whenever available (eg: iOS)
May be. But please leave way behind if user want improve it.
* Formats: mp3, wav, ogg?
I think mp3 is not needed. I prefer ogg (like quality less) and wav (like as is quality). This is remove unused size.
If it’s possible - please do code, which can read blocks from pack (file stream, zip-stream, etc.) - so user can improve low-level by his reasons.
* Async loading
Need some manager, which can be customized easily. I think better is leave this in examples - openAL context must be in one thread, as I remember.
* Transitions: cross-fade between queue items
I think would be fine, if you put EXAMPLE in basic examples. If programmer will need it - he will copy and change it by self due his reasons.
Please provide BASIC things with easy customization - more complex things can be done by examples.