On 2/18/08, Norman Franke <norman at myasd.com> wrote: > I'm using the PJSUA library, and I want to intercept audio from remote > callers and process it before mixing in the conference bridge. What's the > best way to do this? I want to add some type of dynamic gain control, since > we get some very soft callers. I've done something similar for playback of > files and that works great, so now I want to do so with callers. > Currently there's no way to do that with PJSUA-LIB, as stream will be added to the conference bridge automatically. But perhaps this would be simple to support by adding couple of callbacks below in pjsua_callback: /** Notify application when media session is created and before * it is registered to the conference bridge. Application may return * different media port if it has added media processing port to * the stream. */ void (*on_stream_created)(pjsua_call_id call_id, pjmedia_session *sess, unsigned stream_idx, pjmedia_port **p_port); /** Notify application when media session is about to be destroyed. */ void (*on_stream_destroyed)(pjsua_call_id call_id, pjmedia_session *sess, unsigned stream_idx); This would also fix the problem discussed in "stream port destroyed before callback function was called" thread. Now, care to make patch? ;-) cheers, -benny > > Norman Franke > Answering Service for Directors, Inc. > www.myasd.com > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >