[Asterisk-Dev] rtp jitterbuffer synchronization question
Steve Kann
stevek at stevek.com
Wed Apr 6 06:32:21 MST 2005
Slav Klenov wrote:
> Hello * core developers,
>
> Currently I'm working on jitterbuffer integration in rtp.c. My
> previous experience with chan_sip jb
> integration showed some synchronization issues, so I'm trying to be
> very careful with this now.
>
> Basicly what I'm doing is:
> - from chan_sip (in example) create an rtp in callback mode which adds
> rtpread() into the chan_sip
> io context - rtpread() will be always invoked from
> chan_sip::do_monitor(), right?
> - rtpread(), when invoked, puts frames into the jitterbuff.
> - I have another function, which is scheduled to get frames from the
> jitterbuff and delivers them
> to the channel.
>
> The problem is that all these activities should be stopped when the
> channel is distroyed (or maybe
> even earler - on hangup or when the network socket is closed???)
>
> My question is:
> Is it possible (not only for chan_sip, but for all rtp channels)
> rtpread() to be invoked after
> rtp_destroy()?
It seems that rtpread will end up being called from ast_io_wait, which
presently gets called from chan_sip. I suppose it could get called
after rtp_destroy only if a packet arrives on the UDP socket associated
with the io record, and the rtp io record is still there, but it seems
the record gets removed in ast_rtp_destroy.
>
> Thanks,
> Slav
> _______________________________________________
> Asterisk-Dev mailing list
> Asterisk-Dev at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-dev
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-dev
>
More information about the asterisk-dev
mailing list