د Mediastreamer2 VoIP انجن سپړنه. 3 برخه

د مقالې مواد زما څخه اخیستل شوي دي زین چینل.

د Mediastreamer2 VoIP انجن سپړنه. 3 برخه

د ټون جنراتور مثال ښه کول

په تیرو کې مقالې موږ د ټون جنراتور غوښتنلیک لیکلی او د کمپیوټر سپیکر څخه د غږ ایستلو لپاره مو کارولی. اوس به موږ وګورو چې زموږ برنامه د پای ته رسیدو وروسته حافظې ته بیرته نه راګرځي. دا د دې مسلې روښانه کولو وخت دی.

وروسته له دې چې موږ نور سرکټ ته اړتیا نلرو، د حافظې وړیا کول باید د ډیټا پایپ لاین په بندولو سره پیل شي. د دې کولو لپاره ، تاسو اړتیا لرئ د فعالیت په کارولو سره د ساعت سرچینه او ټیکر له سرکټ څخه جلا کړئ 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

Add a comment