0

ChatGPT told me:

Your audio effect class IBasicAudioEffect needs to be in separate component because Windows may need to instantiate it in a separate process

How can I callback to my main project from IBasicAudioEffect.ProcessFrame (i.e. to process the frame then write to a ringbuffer)?

Is AudioGraph.QuantumProcessed a cross-process callback? How does it achieve this?

Or can I just assume the audio effect will be in the same process? I'm using the audio effect on MediaPlayer

2
  • 1
    COM (and so WinRT) does allow cross process communications, provided there's a registered proxy/stub for involved interfaces (and in fact I see one defined in C:\Windows\System32\Windows.Media.dll in my registry for 8c062c53-6bc0-48b8-a99a-4b41550f1359 aka IID_IBasicAudioEffect). In this case I don't see anything documented about external process, but indeed all you're passed is an instance of ProcessAudioFrameContext, so anything else you need you'll have to do it yourself. It's possible you can use AudioFrame.ExtendedProperties (they would be proxied too) to help accomplish this. Commented Apr 30 at 9:38
  • Thanks for explaining proxy/stubs. I'm just going to assume it's in the same process for now Commented Apr 30 at 22:31

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.