Mediastreamer2 VoIP рдЗрдиреНрдЬрд┐рди рдЕрдиреНрд╡реЗрд╖рдг рдЧрд░реНрджреИред рднрд╛рдЧ рео

рд▓реЗрдЦрдХреЛ рд╕рд╛рдордЧреНрд░реА рдореЗрд░реЛ рдмрд╛рдЯ рд▓рд┐рдЗрдПрдХреЛ рд╣реЛ zen рдЪреНрдпрд╛рдирд▓.

Mediastreamer2 VoIP рдЗрдиреНрдЬрд┐рди рдЕрдиреНрд╡реЗрд╖рдг рдЧрд░реНрджреИред рднрд╛рдЧ рео

рдЯреЛрди рдЬреЗрдирд░реЗрдЯрд░ рдЙрджрд╛рд╣рд░рдг рд╕реБрдзрд╛рд░ рдЧрд░реНрджреИ

рдЕрдШрд┐рд▓реНрд▓реЛ рдорд╛ рд▓реЗрдЦ рд╣рд╛рдореАрд▓реЗ рдЯреЛрди рдЬреЗрдиреЗрд░реЗрдЯрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд▓реЗрдЦреНрдпреМрдВ рд░ рдХрдореНрдкреНрдпреБрдЯрд░ рд╕реНрдкрд┐рдХрд░рдмрд╛рдЯ рдзреНрд╡рдирд┐ рдирд┐рдХрд╛рд▓реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдпреМрдВред рдЕрдм рд╣рд╛рдореАрд▓реЗ рдпрд╛рдж рдЧрд░реНрдиреЗрдЫреМрдВ рдХрд┐ рд╣рд╛рдореНрд░реЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдорд╛рдкреНрдд рднрдПрдкрдЫрд┐ рдореЗрдореЛрд░реА рдлрд┐рд░реНрддрд╛ рд╣рд┐рдкрдорд╛ рдлрд░реНрдХрд╛рдЙрдБрджреИрдиред рдпреЛ рдореБрджреНрджрд╛ рд╕реНрдкрд╖реНрдЯ рдЧрд░реНрдиреЗ рдмреЗрд▓рд╛ рдЖрдПрдХреЛ рдЫред

рд╣рд╛рдореАрд▓рд╛рдИ рдЕрдм рд╕рд░реНрдХрд┐рдЯрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░реНрджреИрди, рдбрд╛рдЯрд╛ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд░реЛрдХреЗрд░ рдореЗрдореЛрд░реА рдЦрд╛рд▓реА рдЧрд░реНрди рд╕реБрд░реБ рдЧрд░реНрдиреБрдкрд░реНрдЫред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдкреНрд░рдХрд╛рд░реНрдп рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рд░реНрдХрд┐рдЯрдмрд╛рдЯ рдШрдбреА рд╕реНрд░реЛрдд рд░ рдЯрд┐рдХрд░ рд╡рд┐рдЪреНрдЫреЗрдж рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ ms_ticker_detach()ред рд╣рд╛рдореНрд░реЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рд╣рд╛рдореАрд▓реЗ рдлрд┐рд▓реНрдЯрд░ рдЗрдирдкреБрдЯрдмрд╛рдЯ рдЯрд┐рдХрд░ рд╡рд┐рдЪреНрдЫреЗрдж рдЧрд░реНрдиреБрдкрд░реНрдЫ рд╢реВрдиреНрдп рд╕реНрд░реЛрдд:

ms_ticker_detach(ticker, voidsource)

рд╡реИрд╕реЗ, рдХрдиреНрд╡реЗрдпрд░ рд░реЛрдХреЗрдкрдЫрд┐, рд╣рд╛рдореА рдпрд╕рдХреЛ рд╕рд░реНрдХрд┐рдЯ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ рд░ рдпрд╕рд▓рд╛рдИ рдлреЗрд░рд┐ рдЯрд┐рдХрд░ рдЬрдбрд╛рди рдЧрд░реЗрд░ рд╕рдЮреНрдЪрд╛рд▓рдирдорд╛ рд░рд╛рдЦреНрди рд╕рдХреНрдЫреМрдВред

рдЕрдм рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рдкреНрд░рдХрд╛рд░реНрдп рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╣рдЯрд╛рдЙрди рд╕рдХреНрдЫреМрдВ ms_ticker_destroy():

ms_ticker_destroy(ticker)

рдХрдиреНрд╡реЗрдпрд░ рд░реЛрдХрд┐рдПрдХреЛ рдЫ рд░ рд╣рд╛рдореА рдлрд┐рд▓реНрдЯрд░рд╣рд░реВ рд╡рд┐рдЪреНрдЫреЗрдж рдЧрд░реНрджреИ, рдпрд╕рдХреЛ рднрд╛рдЧрд╣рд░реВ рдЫреБрдЯреНрдпрд╛рдЙрди рд╕реБрд░реБ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВред рдпреЛ рдЧрд░реНрди, рдкреНрд░рдХрд╛рд░реНрдп рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН ms_filter_unlink():

ms_filter_unlink(voidsource, 0, dtmfgen, 0);
ms_filter_unlink(dtmfgen, 0, snd_card_write, 0);

рдЖрд░реНрдЧреБрдореЗрдиреНрдЯрдХреЛ рдЙрджреНрджреЗрд╢реНрдп рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐ рдЬрд╕реНрддреИ рд╣реЛ ms_filter_link().

рд╣рд╛рдореА рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЕрд╣рд┐рд▓реЗ рдЫреБрдЯреНрдпрд╛рдЗрдПрдХреЛ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВ рд╣рдЯрд╛рдЙрдБрдЫреМрдВ ms_filter_destroy():

ms_filter_destroy(voidsource);
ms_filter_destroy(dtmfgen);
ms_filter_destroy(snd_card_write);

рд╣рд╛рдореНрд░реЛ рдЙрджрд╛рд╣рд░рдгрдорд╛ рдпреА рд░реЗрдЦрд╛рд╣рд░реВ рдердкреЗрд░, рд╣рд╛рдореА рдореЗрдореЛрд░реА рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирдХреЛ рджреГрд╖реНрдЯрд┐рдХреЛрдгрдмрд╛рдЯ рд╕рд╣реА рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕рдорд╛рдкреНрддрд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗрдЫреМрдВред

рд╣рд╛рдореА рджреЗрдЦреНрди рд╕рдХреНрдЫреМрдВ, рдХрд╛рд░реНрдпрдХреНрд░рдордХреЛ рд╕рд╣реА рд╕рдорд╛рдкрдирдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореАрд▓рд╛рдИ рд╕реБрд░реБрдорд╛ рдХреЛрдбрдХреЛ рд▓рд╛рдЗрдирд╣рд░реВрдХреЛ рд▓рдЧрднрдЧ рдЙрд╕реНрддреИ рд╕рдВрдЦреНрдпрд╛ рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдкреНрд░рддрд┐ рдлрд┐рд▓реНрдЯрд░ рдХреЛрдбрдХреЛ рдФрд╕рдд рдЪрд╛рд░ рд▓рд╛рдЗрдирд╣рд░реВред рдпреЛ рдмрд╛рд╣рд┐рд░ рдЬрд╛рдиреНрдЫ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛрдб рдХреЛ рдЖрдХрд╛рд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдорд╛ рдкреНрд░рдпреЛрдЧ рдлрд┐рд▓реНрдЯрд░ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдЕрдиреБрдкрд╛рдд рдорд╛ рд╡реГрджреНрдзрд┐ рд╣реБрдиреЗрдЫред рдпрджрд┐ рд╣рд╛рдореА рд╕рд░реНрдХрд┐рдЯрдорд╛ рдПрдХ рд╣рдЬрд╛рд░ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдЫреМрдВ, рддреНрдпрд╕рдкрдЫрд┐ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рд░ рдирд╖реНрдЯ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЪрд╛рд░ рд╣рдЬрд╛рд░ рд▓рд╛рдЗрдирд╣рд░реВ рдирд┐рдпрдорд┐рдд рдХрд╛рд░реНрдпрд╣рд░реВ рддрдкрд╛рдИрдВрдХреЛ рдХреЛрдбрдорд╛ рдердкрд┐рдиреЗрдЫред

рдЕрдм рддрдкрд╛рдИрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫ рдХрд┐ рдХрд╕рд░реА рдорд┐рдбрд┐рдпрд╛ рд╕реНрдЯреНрд░рд┐рдорд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд▓рд╛рдИ рд╕рд╣реА рд░реВрдкрдорд╛ рд╕рдорд╛рдкреНрдд рдЧрд░реНрдиреЗред рдирд┐рдореНрди рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрдорд╛, рдХрдореНрдкреНрдпрд╛рдХреНрдЯрдиреЗрд╕рдХреЛ рд▓рд╛рдЧрд┐, рдо рдпреЛ рдЧрд░реНрди "рдмрд┐рд░реНрд╕рдиреНрдЫреБ"ред рддрд░ рдмрд┐рд░реНрд╕рдиреБ рд╣реБрдиреНрди?

рдорд┐рдбрд┐рдпрд╛ рд╕реНрдЯреНрд░рд┐рдорд░рдХрд╛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕рд░реНрдХрд┐рдЯрд╣рд░реВ рдПрд╕реЗрдореНрдмрд▓/рдбрд┐рд╕реЗрдореНрдмрд▓ рдЧрд░реНрджрд╛ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВрдХреЛ рд╣реЗрд░рдлреЗрд░рд▓рд╛рдИ рд╕рд╣рдЬ рдмрдирд╛рдЙрди рд╕рдлреНрдЯрд╡реЗрдпрд░ рдЙрдкрдХрд░рдгрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реЗрдирдиреНред рдЬреЗ рд╣реЛрд╕реН, рддреНрдпрд╣рд╛рдБ рдПрдХ рд╕рд╣рд╛рдпрдХ рдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рд╕рд░реНрдХрд┐рдЯрдмрд╛рдЯ рдлрд┐рд▓реНрдЯрд░ рдЫрд┐рдЯреЛ рдШреБрд╕рд╛рдЙрди/рд╣рдЯрд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рд╣рд╛рдореА рдкрдЫрд┐ рдпреЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдлрд░реНрдХрдиреЗрдЫреМрдВ, рдЬрдм рд╣рд╛рдореНрд░рд╛ рдЙрджрд╛рд╣рд░рдгрд╣рд░реВрдорд╛ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рджреБрдИ рджрд░реНрдЬрди рднрдиреНрджрд╛ рдмрдвреА рд╣реБрдиреНрдЫред

рдЕрд░реНрдХреЛ рд▓реЗрдЦ рд╣рд╛рдореА рд╕рд┐рдЧреНрдирд▓ рд╕реНрддрд░ рдорд┐рдЯрд░ рд╕рд░реНрдХрд┐рдЯ рдЬрдореНрдорд╛ рдЧрд░реНрдиреЗрдЫреМрдВ рд░ рдлрд┐рд▓реНрдЯрд░рдмрд╛рдЯ рдорд╛рдкрди рдкрд░рд┐рдгрд╛рдо рдХрд╕рд░реА рдкрдвреНрдиреЗ рднрдиреЗрд░ рд╕рд┐рдХреНрдиреЗрдЫреМрдВред рдорд╛рдкрди рд╢реБрджреНрдзрддрд╛ рдореВрд▓реНрдпрд╛рдЩреНрдХрди рдЧрд░реМрдВред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди