Common C++ RTP

Skjermbilde programvare:
Common C++ RTP
Prog.varedetaljer:
Versjon: 2.0.0
Last opp dato: 11 May 15
Utvikler: David Sugar
Lisens: Gratis
Popularitet: 35

Rating: nan/5 (Total Votes: 0)

GNU ccRTP er en implementering av RTP, sanntidstransportprotokollen fra IETF (se RFC 3550, RFC 3551 og RFC 3555). ccRTP er et C ++ bibliotek basert på GNU Common C ++ som gir en høy ytelse, fleksible og utvidstandardkompatibel RTP stable med full RTCP støtte. Design og implementering av ccRTP gjør den egnet for høykapasitets servere og gatewayer samt personlige klientprogrammer.
I utformingen ccRTP, har vi tatt hensyn til at RTP har blitt definert som en søknad nivå protokoll rammeverk snarere enn en typisk Internet transportprotokoll som TCP og UDP. Dermed er RTP nesten aldri implementert som et lag separert fra programmet.
Derfor RTP programmer ofte må tilpasse tilpasningsdyktig RTP pakke layout og behandlingsregler, timing begrensninger, økt medlems regler samt andre RTP og RTCP mekanismer. ccRTP som mål å gi et rammeverk for RTP rammeverk, snarere enn å være bare en RTP-pakke manipulasjon bibliotek.
Støtte for både lyd og video data er også vurdert i utformingen av ccRTP, som kan gjøre delvis ramme deler / re-montering. Unicast, multi-unicast og multicast transport modeller som støttes, samt flere aktive synkroniserings kilder, flere RTP økter (SSRC mellomrom), og flere RTP applikasjoner (CNAME mellomrom). Dette gjør at det er bruk for å bygge alle former for Internett-standarder basert lyd og visuelle konferansesystemer.
GNU ccRTP er THREADSAFE og høy ytelse. Den bruker pakkekøen lister for mottak og overføring av datapakker. Begge inter-media og intra-media synkronisering automatisk håndtert innenfor de innkommende og utgående pakke køer. GNU ccRTP tilbyr støtte for RTCP og mange andre standard og utvidede funksjoner som er nødvendige for både kompatible og avanserte streaming applikasjoner.
Det kan mikse flere nyttelast typer i strømmen, og dermed kan brukes til å impliment RFC 2833-kompatible signal applikasjoner samt andre spesialiserte ting. GNU ccRTP tilbyr også direkte RTP og RTCP pakkefiltrering.
GNU ccRTP bruker maler for å isolere threading og stikkontakter relaterte avhengigheter, slik at den kan brukes til å impliment realtime streaming med ulike threading modeller og underliggende transportprotokoller, ikke bare med IPV4 UDP sockets. For en mer detaljert liste over ccRTP funksjoner kan du ta en titt på de programmerere 'manual.
På sitt høyeste nivå, gir ccRTP klasser for sanntids transport av data via RTP økter, samt kontrollfunksjonene RTCP.
Hovedideen i ccRTP gjennomføringen av RTP sesjoner er bruken av pakkekøer for å håndtere overføring og mottak av datapakker RTP / applikasjonsdataenhetene. I ccRTP, er en datablokk som overføres ved å sette den inn i sendingen (utgående pakker) køen, og fikk ved å få det fra resepsjonen (innkommende pakker) køen.
Det er flere nivåer av grensesnitt (felles grensesnitt, offentlig eller beskyttet arv, etc) i ccRTP. For eksempel, rtphello demo programmet distribueres med ccRTP bare bruker det offentlige grensesnittet av RTPSession klassen og ikke omdefinere den virtuelle metoden onGotSR, og dermed hva dette programmet vet om SR rapporter er informasjonen formidles i den siste senderen rapport fra en hvilken som helst kilde, som kan hentes via getMRSenderInfo metoden i SyncSource klassen.
Tvert imot, omdefinerer rtplisten demo program onGotSR ved hjelp av arv og hadde ikke spesialisert behandling av disse RTCP pakker. Vanligvis både data og styringspakker ikke er direkte tilgjengelig gjennom de fleste eksterne grensesnitt.
Alt dette funksjoner utføres gjennom noen viktige klasser og typer. De mest grunnleggende som er de nummerert typen StaticPayloadType, og klassene StaticPayloadFormat og DynamicPayloadFormat.
De viktigste er klassene RTPSession, SyncSource, Deltaker og AppDataUnit, som representerer RTP økter, synkronisering kilder, deltakere i en RTP-program, og programdataenheter formidlet i RTP datapakker, henholdsvis.
Når du bruker ccRTP, både sending og mottak av data transporteres løpet RTP økter gjøres gjennom mottak og formidling køer håndteres av RTP stabelen. I den vanligste tilfellet en egen henrettelse tråd for hver RTP økten håndterer køene. Denne saken er threading modell som vi vil generelt anta i dette dokumentet. Merk imidlertid at ccRTP støtter andre tråder modeller, spesielt ccRTP støtter bruk av en enkelt tråd utførelse for å tjene et sett med RTP økter. Det er også mulig å ikke knytte noen egen tråd med noen RTP økten, manuelt ringer de viktigste data og kontrolltjeneste metoder fra hva andre tråden.
Den grunnleggende ideen for pakke mottak med ccRTP er at programmet ikke lese pakker fra stikkontakter direkte, men får dem fra en mottakskøen. Stabelen er ansvarlig for å sette inn mottatte pakker i resepsjonen køen og håndtering av denne køen. Generelt vil en pakke mottak og innsetting i mottaket køen ikke skje samtidig søknad blir den fra køen.
Motsatt er den grunnleggende ideen for pakkeoverføring med ccRTP at pakker ikke er direkte skrevet til stikkontakter, men innsatt i en transmisjonskøen håndteres av stabelen. Generelt pakke innsetting og overføring opptrer på forskjellige tidspunkter, men det er ikke nødvendig.
For å kunne bruke ccRTP, må du ta den viktigste header (#include Ytterligere to hoder levert av ccRTP.:
# Include     Klasser for bassenger av RTP tjeneste tråder.
# Include
    Klasser for RTP utvidelser som ikke er modne ennå.
Du må også koble av i biblioteket, for tiden ccrtp1

Egenskaper :..

  • Meget utvidbar til spesialiserte stabler
  • · Støtter unicast, multi unicast og multicast. Håndterer flere kilder (inkludert synkronisering kilder og bidrar kilder) og destinasjoner. Støtter også symmetrisk RTP.
  • Automatisk RTCP funksjoner håndtering, for eksempel sammenslutning av synkroniserings kilder fra samme deltaker eller NTP-RTP timestamp kartlegging.
  • genericity som for underliggende nettverk og transportprotokoller gjennom maler.
  • Det er THREADSAFE og støtter nesten alle threading modell.
  • Generic og utvidbar RTP og RTCP header validitet sjekker.
  • Håndterer kilde stater og informasjon samt statistikk opptak.
  • håndterer automatisk SSRC kollisjoner og utfører sløyfe påvisning.
  • Redskap timer revurdering og reversere ny vurdering.
  • Gir gode tilfeldige tall, basert på / dev / urandom eller, alternativt, på MD5.

Hva er nytt i denne versjonen:

  • Kode opprydding, feilrettinger for RTP avsender info, og sammenslåing av Debian patcher oppstrøms.

Annen programvare fra utvikleren David Sugar

GNU SIP Witch
GNU SIP Witch

17 Feb 15

Kommentarer til Common C++ RTP

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!