siproc

A primitive SIP client that spawns processes for each call
git clone git://xatko.vsos.ethz.ch/siproc.git
Log | Files | Refs

commit 0ac0b323d46e2d358af39f2321f5891ee77f3e23
parent 897338cbee27b41ae0da98515b87673353c2f49c
Author: Dominik Schmidt <dominik@schm1dt.ch>
Date:   Tue, 23 Jul 2019 16:30:35 +0200

Set the audio device to the null-device after endpoint initialization.

This prevents the audio-thread from hanging if nothing has been played
on the alsa device, which manifests in only being able to receive a single
call (which has some audio played).

The problem is, that the audio bridge fires up a thread, that waits on
snd_pcm_drain(), which does not seem to return if there has been no data
on the pcm sink.

Diffstat:
src/siproc.cpp | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/siproc.cpp b/src/siproc.cpp @@ -393,7 +393,9 @@ int main(int argc, char **argv){ ep.libCreate(); EpConfig ep_cfg; - ep.libInit(ep_cfg); + ep.libInit(ep_cfg); + AudDevManager &adm = ep.audDevManager(); + adm.setNullDev(); TransportConfig tcfg; tcfg.port = 5060;