Inachunguza injini ya Mediastreamer2 VoIP. Sehemu ya 3

Nyenzo za kifungu zimechukuliwa kutoka kwangu chaneli ya zen.

Inachunguza injini ya Mediastreamer2 VoIP. Sehemu ya 3

Kuboresha mfano wa jenereta ya toni

Katika uliopita Ibara ya Tuliandika programu ya jenereta ya toni na tukaitumia kutoa sauti kutoka kwa spika ya kompyuta. Sasa tutagundua kuwa programu yetu hairudishi kumbukumbu kwenye lundo inapokamilika. Ni wakati wa kufafanua suala hili.

Baada ya kutohitaji tena mzunguko, kumbukumbu ya kukomboa inapaswa kuanza kwa kusimamisha bomba la data. Ili kufanya hivyo, unahitaji kukata chanzo cha saa na ticker kutoka kwa mzunguko kwa kutumia kazi ms_ticker_detach(). Kwa upande wetu, lazima tuondoe ticker kutoka kwa pembejeo ya kichujio chanzo tupu:

ms_ticker_detach(ticker, voidsource)

Kwa njia, baada ya kusimamisha conveyor, tunaweza kubadilisha mzunguko wake na kuiweka tena katika operesheni, tena kuunganisha ticker.

Sasa tunaweza kuiondoa kwa kutumia kazi ms_ticker_destroy():

ms_ticker_destroy(ticker)

Conveyor imesimama na tunaweza kuanza kutenganisha sehemu zake, tukitenganisha vichungi. Ili kufanya hivyo, tumia kazi ms_filter_unlink():

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

madhumuni ya hoja ni sawa na kazi ms_filter_link().

Tunaondoa vichungi vilivyotengwa sasa kwa kutumia ms_filter_destroy():

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

Kwa kuongeza mistari hii kwa mfano wetu, tutapata usitishaji sahihi wa programu kutoka kwa mtazamo wa usimamizi wa kumbukumbu.

Kama tunavyoona, ukamilishaji sahihi wa programu ulituhitaji kuongeza takriban idadi sawa ya mistari ya msimbo kama mwanzoni, na wastani wa mistari minne ya msimbo kwa kila kichujio. Inabadilika kuwa saizi ya msimbo wa programu itaongezeka kulingana na idadi ya vichungi vilivyotumika katika mradi huo. Ikiwa tunazungumza juu ya vichungi elfu kwenye mzunguko, basi mistari elfu nne ya shughuli za kawaida za kuunda na kuziharibu zitaongezwa kwenye nambari yako.

Sasa unajua jinsi ya kusitisha programu kwa usahihi kwa kutumia mkondo wa media. Katika mifano ifuatayo, kwa ajili ya kuunganishwa, "nitasahau" kufanya hivyo. Lakini hutasahau?

Wasanidi wa kipeperushi cha media hawakutoa zana za programu ili kuwezesha utumiaji wa vichujio wakati wa kukusanya/kutenganisha saketi. Walakini, kuna msaidizi anayekuruhusu kuingiza / kuondoa kichungi haraka kutoka kwa mzunguko.

Tutarudi kusuluhisha suala hili baadaye, wakati idadi ya vichungi katika mifano yetu inazidi dazeni kadhaa.

Inayofuata Ibara ya Tutakusanya mzunguko wa mita ya kiwango cha ishara na kujifunza jinsi ya kusoma matokeo ya kipimo kutoka kwa chujio. Wacha tuchunguze usahihi wa kipimo.

Chanzo: mapenzi.com

Kuongeza maoni