Regarding decoding... it's looking like a compromise will have to be made on the question of custom streaming and metadata, as the Shell metadata system (used in the version above) appears to only be supported by MF when it is processing local files; I guess it's implemented in the file reader rather than the parser/decoder. There is also a Media Foundation metadata system, which is working with custom streaming, but that isn't supported by the MP4 parser/decoder
I found this
http://msdn.microsoft.com/en-us/library/dd742784%28v=VS.85%29.aspxPlease note this text further down though "If Platform Update Supplement for Windows Vista is installed, the AAC audio decoder is available on Windows Vista, but is accessible on Windows Vista only by using the Source Reader. "
Another reason why Win7 is such a better choice than Vista
I guess this means that thee are two options (or more?).
A: BASS stream/file handling, Windows decoding of AAC(+) etc. on Win7 only.
B: Windows stream/file handling, Windows decoding of AAC(+) on Win7 and Vista (w/platform update), but no metainfo...
My suggestion is go for option A, and then evaluate if Vista should be considered.
I'm not sure if Windows Update installs the platform update automatically or not, or if the latest service pack for vista includes it.
I do know that stuff like Direct2D and other apis need the platform update to make them available on Vista,
whereas on Windows 7 they are part of the RTM from the start.
Please note that I have not tried to mess around with Msmpeg2adec.dll yet, and it's probably more future proof to do it the proper way (like you are trying to Ian) as that would let BASS support whatever Windows support so...
But it's interesting anyway.
Also (besides my head hurting reading though this)
http://msdn.microsoft.com/en-us/library/ms700827%28v=VS.85%29.aspxare you sure it's not possible to have BASS pass the raw AAC(+) or AAC(+) ADTS (shoutcast etc) stream to the bytestream handler and decoder
and then get that back into BASS afterwards?
It would be really odd (and kinda silly by Microsoft really) if that wasn't possible,
after all the audio guys (Larry Oosterman and the rest) was pretty clever with the audio system IMO as it's now possible to create 3rd party audio processor and stick them in the OS audio chain without messing up the system (ASUS makes use of this to provide 3D audio effects processing for their Xonar audio cards).
I'm sorry I can't point anywhere in particular as I'm a complete noob to the WMF stuff.