AUHAL: IOProc's and audio object's listener callback's call policy
AUHAL: IOProc's and audio object's listener callback's call policy
- Subject: AUHAL: IOProc's and audio object's listener callback's call policy
- From: Artem Bondar <email@hidden>
- Date: Tue, 23 Dec 2014 14:53:26 +0000
- Thread-topic: AUHAL: IOProc's and audio object's listener callback's call policy
Hi everyone!
I’m working with AUHAL audio units for creating input/output streams, and i have investigated several open-source solutions, which are supposed to do the same stuff (for example chromium’s audio module). And there is a thing, which worrying me: at init they set up the audio object property listeners for stream format, and at the change of format they do some stuff (realloc buffers, recreate audio converters), but this stuff is done without any locks and synchronisation with IOProc. In chromium there is a comment “todo add thread safety”, but from the other hand this thing works. So my questions are:
1. Is there any internal synchronisation between audio object’s stream format listener’s callback and the IOProc callback in the most simple case, when the app creates one stream with one device? (I mean this looks natural: CoreAudio stops audio processing, changes format, calls callback, and after the IOProcessing goes on again)
2. If the described synchronisation exists, can i also expect the core audio to not call my IOProc, while i process the default device change?
Best regards
Artem Bondar.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden