Mediastreamer2 VoIP кыймылдаткычын изилдөө. 3-бөлүк

Макаланын материалы менин zen каналы.

Mediastreamer2 VoIP кыймылдаткычын изилдөө. 3-бөлүк

Тон генераторунун мисалын жакшыртуу

Мурунку макала Биз үн генераторунун тиркемесин жаздык жана аны компьютердин динамигинен үн чыгаруу үчүн колдондук. Эми биз программабыз аяктагандан кийин эстутумду кайра үймөккө кайтарбай турганын байкайбыз. Бул маселени тактоого убакыт жетти.

Бизге схеманын кереги жок болгондон кийин, эстутумду бошотуу маалымат түтүгүн токтотуу менен башталышы керек. Бул үчүн, функцияны колдонуу менен сааттын булагын жана тикерди схемадан ажыратышыңыз керек ms_ticker_detach(). Биздин учурда, биз фильтр киришинен тикерди ажыратышыбыз керек voidsource:

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);

Бул саптарды биздин мисалга кошуу менен биз эс тутумду башкаруу көз карашынан туура программаны токтотууну алабыз.

Көрүнүп тургандай, программаны туура толтуруу бизден башындагыдай эле код саптарын кошууну талап кылды, ар бир чыпкага орточо төрт сап код. Көрсө, программалык коддун көлөмү долбоордо колдонулган чыпкалардын санына жараша көбөйөт. Эгерде биз схемадагы миң фильтрлер жөнүндө айтсак, анда аларды түзүү жана жок кылуу боюнча күнүмдүк операциялардын төрт миң сабы сиздин кодуңузга кошулат.

Эми сиз медиа агымчы аркылуу программаны кантип туура токтотууну билесиз. Төмөнкү мисалдарда, компакттуулук үчүн мен муну "унутуп коём". Бирок сиз унутпайсызбы?

Медиа стримерди иштеп чыгуучулар схемаларды чогултууда/демонтаждоодо чыпкаларды манипуляциялоону жеңилдетүү үчүн программалык куралдарды беришкен эмес. Ошого карабастан, схемадан чыпканы тез салууга/чыгарууга мүмкүндүк берүүчү жардамчы бар.

Биз бул маселени чечүүгө кийинчерээк, биздин мисалдарыбыздагы чыпкалардын саны бир нече ондогондон ашканда кайра кайрылабыз.

Кийинки макала Биз сигнал деңгээлин өлчөгүч схемасын чогултуп, чыпкадан өлчөө натыйжасын кантип окууну үйрөнөбүз. Өлчөөнүн тактыгына баа берели.

Source: www.habr.com

Комментарий кошуу