GNU ccRTP (RFC 3550, RFC 3551 və RFC 3555 bax) RTP, IETF real-time nəqliyyat protokolu bir təzahürüdür. ccRTP yüksək performans, çevik və genişlənən standartlara uyğun RTP tam RTCP dəstəyi ilə yığın təmin GNU Ümumi C ++ əsasında C ++ kitabxanadır. ccRTP dizayn və həyata keçirilməsi yüksək gücü server və şlüzlər, eləcə də şəxsi müştəri applications üçün əlverişli edir.
CcRTP dizayn, biz RTP bir proqram səviyyəli protokol çərçivəsində daha çox belə TCP və UDP kimi tipik Internet nəqliyyat protokolu kimi müəyyən edilmişdir ki, nəzərə etmişlər. Belə ki, RTP çətin heç tətbiqi ayrı bir təbəqə kimi həyata keçirilir.
Nəticədə, RTP applications tez-tez məhdudiyyətlər, sessiya üzvlük qaydaları, eləcə də digər RTP və RTCP mexanizmlər vaxtı, uyarlanabilir RTP paket layout və emal qaydaları özelleştirebilirsiniz lazımdır. ccRTP deyil, yalnız bir RTP paket manipulyasiya kitabxana olmaqdan, RTP çərçivəsində üçün çərçivə təmin etmək məqsədi daşıyır.
Audio və video məlumat üçün Support də ccRTP dizayn hesab edilir ki, qismən çərçivəsində olur / yenidən toplaşmaq edə bilərsiniz. Unicast, multi-unicast və multicast nəqliyyat modelləri dəstəklənir, eləcə də bir çox fəal sinxronizasiya mənbələri, çox RTP sessiyaları (SSRC boşluq), və bir çox RTP applications (CNAME boşluq). Bu internet standartlara bütün formaları əsasında audio və vizual konfrans sistemləri tikinti üçün istifadə edir imkan verir.
GNU ccRTP threadsafe və yüksək performans. Bu qəbulu və məlumat paketlərinin ötürülməsi üçün paket növbə siyahıları istifadə edir. Hər iki inter-media və daxili media synchronization avtomatik olaraq daxil olan və çıxan paket sıralarında ərzində idarə olunur. GNU ccRTP RTCP dəstək və bir çox digər standart və uyğun və qabaqcıl streaming applications üçün lazım olan uzadıla funksiyalar təklif edir.
Bu axın çox taşıma kapasitesi növ mix edə bilərsiniz, və bu səbəbdən RFC 2833 uyğun siqnalizasiya proqramları, eləcə də digər ixtisaslaşdırılmış şeylər impliment üçün istifadə edilə bilər. GNU ccRTP birbaşa RTP və RTCP paket filtreleme təklif edir.
GNU ccRTP Bu IPv4 UDP sockets ilə deyil, yalnız müxtəlif Threading modelləri və əsas nəqliyyat protokolları ilə zamanlı axın impliment üçün istifadə edilə bilər ki, Threading və altlıqlarını bağlı bağımlılıkları təcrid şablonları istifadə edir. CcRTP xüsusiyyətləri bir daha ətraflı siyahısı üçün proqramçılar 'dərslik bir göz ola bilər.
Ən yüksək səviyyədə, ccRTP RTP sessiyaları vasitəsilə məlumatların real vaxt nəqliyyat, eləcə də RTCP nəzarət funksiyaları üçün dərsləri verir.
RTP sessiyanın ccRTP həyata keçirilməsində əsas konsepsiyası RTP data paket / proqram data ədəd ötürülməsi və qəbul idarə etmək üçün paket sıralarında istifadə edir. CcRTP, bir data blok ötürülməsi (gedən paket) queue onu qoyaraq ötürülür və qəbul (daxil olan paket) queue onu əldə etmişdir.
CcRTP interfeysi (ictimai interfeys, ictimai və ya qorunan irs və s) bir neçə səviyyəsi var. Məsələn, ccRTP ilə paylanacaq rtphello demo proqram yalnız RTPSession sinif ictimai interface istifadə və virtual metodu onGotSR yenidən deyil, belə nə bu proqram SR hesabat bilir hər hansı bir mənbədən, son göndərən hesabatda çatdırdı məlumat olan SyncSource sinif getMRSenderInfo üsulu ilə Retrieved bilər.
Əksinə, rtplisten demo proqram miras yolu ilə onGotSR yenidən müəyyənləşdirərək və bu RTCP paket ixtisaslaşdırılmış emal edə bilər. Ümumiyyətlə, həm məlumatlar və nəzarət paket ən xarici interfeys vasitəsilə birbaşa əlçatan deyil.
Bütün bu funksiyaları bir neçə əsas sinifləri və növləri vasitəsilə həyata keçirilir. ən əsas isə sadalanan növü StaticPayloadType və siniflər StaticPayloadFormat və DynamicPayloadFormat var.
ən əhəmiyyətli olanları, müvafiq olaraq, RTP data paket çatdırdı RTP sessiyaları, sinxronizasiya mənbələri, iştirakçıları bir RTP proqram və tətbiqi data kontur təmsil dərsləri RTPSession, SyncSource, İştirakçı və AppDataUnit var.
CcRTP istifadə edərkən, həm göndərilməsi və RTP yığını ele qəbul və ötürülməsi sıralarında vasitəsilə həyata keçirilir RTP sessiyaları nəql məlumatların qəbul. Ən ümumi halda, hər RTP sessiya üçün bir ayrı icra mövzu sıralarında yapar. Bu halda biz ümumiyyətlə bu sənədin ərzində icra edəcək Threading model. CcRTP xüsusilə ccRTP RTP iclaslarında bir sıra xidmət üçün bir icra mövzu istifadə dəstəkləyir, digər Threading modelləri dəstəkləyir, lakin unutmayın. Bu əl hər hansı digər mövzu olan əsas məlumatlar və nəzarət xidmət üsulları zəng, hər hansı bir RTP sessiya ilə hər hansı bir ayrı-ayrı mövzu şərik etmək mümkündür.
ccRTP ilə paket qəbul üçün əsas ideyası proqram birbaşa sockets olan paket oxumaq deyil ki, ancaq bir qəbul növbə onları alır. yığını qəbul növbə qəbul paketlərin daxil və bu növbə baxılması üçün məsuliyyət daşıyır. Ümumiyyətlə, qəbul növbə bir paket qəbul və durub tətbiq növbə olur, eyni zamanda baş vermir.
Əksinə, ccRTP ilə paket ötürülməsi üçün əsas fikir paket birbaşa sockets yazılı lakin yığını ele ötürücü növbə daxil deyil ki. Lazım deyil, baxmayaraq ki, ümumiyyətlə, paket durub və ötürülməsi, müxtəlif vaxtlarda baş verir.
. CcRTP istifadə etmək üçün, siz əsas mövzu (# daxildir
# daxildir
# daxildir
Hələ yetkin deyil RTP uzantıları üçün dərsləri.
Siz həmçinin hazırda ccrtp1 kitabxana, keçid lazımdır
Features ..
- ixtisaslaşdırılmış destesi yüksək genişlənən
- · unicast, multi-unicast və multicast dəstəkləyir. Və istiqamətlərə (synchronization mənbələri və töhfə mənbələrdən daxil olmaqla) bir çox mənbələrdən yapar. Həmçinin simmetrik RTP dəstəkləyir.
- eyni iştirakçısının və ya NTP-RTP damgası Xəritəçəkmə sinxronizasiya mənbələri dərnək olaraq idarə Avtomatik RTCP fəaliyyət göstərir.
- Genericity şablonları vasitəsilə əsas şəbəkə və nəqliyyat protokolları üçün.
- Bu threadsafe və demək olar ki, hər hansı bir Threading modelini dəstəkləyir.
- Generic və genişlənən RTP və RTCP header etibarlılıq çek.
- statistika qeyd eləcə də qaynaq dövlət və məlumat Saplar.
- Avtomatik olaraq SSRC toqquşma emal və loop aşkar həyata keçirir.
- timer yenidən həyata keçirir və yenidən geri.
- MD5 on / dev / urandom və ya alternativ əsasında yaxşı təsadüfi nömrələri, təmin edir.
Bu azad yeni nədir: The
- Kod təmizləmə, RTP göndərən məlumat üçün bugfixes və birləşmə Debian yamalar upstream.
Şərhlər tapılmadı