Common C++ RTP

Screenshot Software:
Common C++ RTP
Szczegóły programowe:
Wersja: 2.0.0
Filmu: 11 May 15
Wywoływacz: David Sugar
Licencja: Wolny
Popularność: 35

Rating: nan/5 (Total Votes: 0)

GNU ccRTP jest realizacja RTP, protokołu transportowego w czasie rzeczywistym z IETF (patrz RFC 3550, RFC 3551 i RFC 3555). ccRTP jest biblioteka C ++ oparte na wspólnej C GNU ++, który zapewnia wysoką wydajność, elastyczne i rozszerzalny zgodnych ze standardami RTP stos z pełnym wsparciem RTCP. Projektowanie i wdrażanie ccRTP sprawiają, że nadaje się do dużych serwerów i bram, a także zdolności osobistych aplikacji klienckich.
W projektowaniu ccRTP, mamy brać pod uwagę, że RTP została zdefiniowana jako poziom Application Protocol ramach zamiast typowego protokołu transportowego internetowe takie jak TCP i UDP. Tak więc, RTP jest rzadko wykonany jako oddzielona od warstwy aplikacji.
W związku z tym, często muszą aplikacje RTP dostosować do dostosowania zasad układu i przetwarzania pakietów RTP, ograniczenia czasowe, zasady członkostwa sesji, jak również inne mechanizmy, RTP i RTCP. ccRTP ma na celu stworzenie ram dla ram RTP, a nie jest tylko biblioteka manipulacji pakiet RTP.
Wsparcie dla audio i danych wideo jest również uważane w projektowaniu ccRTP, że może zrobić częściowe rama pęka / ponownego montażu. Unicast, multi-unicast i multicast modele transportowe są obsługiwane, a także wiele aktywnych źródła synchronizacji, wiele sesji RTP (obowiązuje SSRC), a wiele aplikacji RTP (obowiązuje CNAME). Pozwala to wykorzystać do budowy wszelkiego rodzaju standardów internetowych dźwiękowych systemów konferencyjnych i oparte wizualne.
GNU ccRTP jest threadsafe i wysoka wydajność. Korzysta z listy kolejki pakietów do odbioru i transmisji pakietów danych. Zarówno Inter-media i synchronizacji wewnątrz materiał jest obsługiwana automatycznie w ciągu kolejki przychodzących i wychodzących pakietów. GNU ccRTP oferuje wsparcie dla RTCP i wiele innych standardowych i dodatkowych funkcji, które są niezbędne zarówno dla zaawansowanych aplikacji kompatybilnych i streamingu.
Może on mieszać wiele typów danych użytecznych w strumieniu, a tym samym może być stosowany do impliment RFC 2833 zgodnych aplikacji sygnalizacji, jak również innych specjalnych rzeczy. GNU ccRTP oferuje również bezpośredni RTP i filtrowanie pakietów RTCP.
GNU ccRTP wykorzystuje szablony, aby wyizolować i gniazda gwintowania zależności związane, tak, że może on być stosowany w czasie rzeczywistym impliment strumieniowe z różnych modeli gwintowania i podstawowych protokołów transportowych, nie tylko z gniazd IPv4 UDP. Dla bardziej szczegółowej listy funkcji ccRTP można spojrzeć na instrukcji programistów.
Na najwyższym poziomie, ccRTP zapewnia zajęcia dla transportu w czasie rzeczywistym danych poprzez sesji RTP, a także funkcji sterujących RTCP.
Główną koncepcją w realizacji ccRTP sesji RTP jest stosowanie kolejek pakietów do obsługi transmisji i odbioru pakietów danych RTP / jednostek danych aplikacji. W ccRTP, blok danych jest nadawany przez wprowadzenie go do transmisji (pakiety wychodzące) kolejki, a przyjęty przez coraz to w recepcji (pakiety przychodzące) kolejki.
Istnieje kilka poziomów interfejsu (interfejs publiczny, dziedziczenia publicznego lub chronionym, etc) w ccRTP. Na przykład, program demo rtphello rozpowszechniany z ccRTP po prostu korzysta z interfejsu publicznego klasy RTPSession i nie przedefiniować sposób wirtualny onGotSR, więc to, co wie na temat tego programu raportach SR informacja przekazana w ostatnim sprawozdaniu nadawcy z dowolnego źródła, które mogą być pobierane metodą getMRSenderInfo klasy SyncSource.
Wręcz przeciwnie, rtplisten Program demo redefiniuje onGotSR drodze dziedziczenia i może zrobić specjalistyczne przetwarzanie tych pakietów RTCP. Ogólnie rzecz biorąc, oba pakiety danych i sterowania nie są bezpośrednio dostępne przez najbardziej zewnętrzny interfejs.
Wszystkie te funkcje są wykonywane przez kilka podstawowych klas i typów. Najbardziej podstawowe z nich to wyliczany typ StaticPayloadType i StaticPayloadFormat i DynamicPayloadFormat klasy.
Najważniejszymi z nich są zajęcia RTPSession, SyncSource, Uczestnik i AppDataUnit, które reprezentują sesji RTP, źródła synchronizacji, uczestników aplikacji RTP i aplikacji przekazywanych jednostek danych w pakietach danych RTP, odpowiednio.
Podczas korzystania ccRTP, zarówno wysyłanie i odbieranie danych transportowanych na sesji RTP odbywa się poprzez przyjmowanie i przekazywanie kolejek obsługiwanych przez stos RTP. W najbardziej powszechnym przypadku, oddzielny wątek wykonanie dla każdej sesji RTP obsługuje kolejki. Ta sprawa jest model wątków, które na ogół zakładamy w tym dokumencie. Należy jednak pamiętać, że ccRTP inne modele gwintowania wspiera szczególnie ccRTP obsługuje korzystanie z jednego wątku realizacji służyć zestaw sesji RTP. Możliwe jest również, aby nie kojarzy żadnego oddzielnego wątku w każdej sesji RTP, ręcznie wywołanie danych i obsługi sterowania główne metody z jakiegokolwiek innego wątku.
Podstawową ideą do odbioru pakietów z ccRTP jest to, że aplikacja nie bezpośrednio przeczytać pakiety z gniazd, ale dostaje je z kolejki odbiorczej. Stos jest odpowiedzialny za wstawianie odebranych pakietów w kolejce recepcji i obsługi tej kolejki. Generalnie, odbiór pakietów i do wprowadzania w kolejce odbiorczej nie występuje w tym samym czasie aplikacji pobiera go z kolejki.
Z drugiej strony, idea do transmisji pakietu z ccRTP jest to, że pakiety nie są zapisywane bezpośrednio do gniazd, ale umieszczone w kolejce transmisji obsługiwanej przez stos. Na ogół, wprowadzenie i transmisji pakietów występuje w różnych momentach, choć nie jest to konieczne.
W celu wykorzystania ccRTP, należy dołączyć główny nagłówek (#include Dwa dodatkowe nagłówki są przez ccRTP.:
#include     Zajęcia dla basenów nici usług RTP.
#include
    Zajęcia dla rozszerzeń RTP, które nie są jeszcze starsze.
Musisz również połączyć w bibliotece, obecnie ccrtp1

Opis :..

  • rozszerzalna do wyspecjalizowanych stosy
  • · Obsługa multi-unicast, multicast oraz unicast. Obsługuje wiele źródeł (w tym źródeł synchronizacji i źródeł przyczyniających) i okolicy. Obsługuje również symetryczne RTP.
  • Automatyczne RTCP obsługi funkcje, takie jak stowarzyszenia źródeł synchronizacji z tego samego uczestnika lub NTP-RTP mapowania datownik.
  • genericity jak dla podstawowych protokołów sieciowych i komunikacyjnych poprzez szablonów.
  • Jest threadsafe i obsługuje prawie każdego modelu wątków.
  • Ogólne i rozsuwane prawidłowość nagłówka RTP i RTCP.
  • Uchwyty stany źródłowych i informacji, jak również nagrania statystyk.
  • Automatycznie obsługuje SSRC kolizji i wykonuje wykrywanie pętli.
  • Narzędzia zegara ponowne rozpatrzenie i odwrócić ponownego rozpatrzenia.
  • Zapewnia dobre liczb losowych, oparte na / dev / urandom lub, alternatywnie, na MD5.

Co nowego w tym wydaniu:

  • cleanupie, poprawki dla RTP informacji o nadawcy, i łączenie Plastry Debiana prąd.

Inne programy z deweloperem David Sugar

GNU SIP Witch
GNU SIP Witch

17 Feb 15

Komentarze do Common C++ RTP

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!