I'm trying to capture the audio which an activeX flash component is playing.
I do this by finding the flash.ocx module and hook the waveOutWrite function.
This seems to work well, however I cannot differentiate between different activex instances which call waveOutWrite internally as the audio seems to come from the same thread and target the same output device.
My question is how I could differentiate between who is calling waveOutWrite?
I think the answer lies in somewhere in loading a flash.ocx instance for each activex instance, not sure how to achieve that though as the module loading is handled automatically by COM. One idea I had was to create the activex components in different processes, which hopefully would cause the waveOutWrite function to be called from different threads. However, this seems to be a rather complicated way to achieve this.
Any ideas?