I’m experimenting Asterisks programming to input and output to voicecall streams. I’m just listening in own thread fd3 and collecting streamdata to circular buffer and another thread waits for input to arrive and produces some raw output to the call -sounds like a trivial case and yes it is… but
The issue with EAGI is seems that be only way to do voice output to the call is using files and commands like PLAYBACK (I’d rather like to have fd4 for channel output) Once I’m using PLAYBACK fd3 seems to be in a blocked state and I cant get the input from the call. The annoying thing resulting from this is that after playing some sound there is a significant delay before fd3 seems to have data from incoming call.
Am I completely lost, if not is there some way to by pass this? I checked JACK() application and it seems to provide detour to this, but running jackd for this simple case seems overkill to me.