root/common/trunk/doc/html/uclmmbase-rtp.html @ 546

Revision 546, 48.9 KB (checked in by ucacoxh, 13 years ago)

Added hmac and md5 documentation.

Added URL's to rtp "see also".

Moved utility function strfind() from mbus_addr.[ch] to util.[ch].

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<HTML
2><HEAD
3><TITLE
4>RTP</TITLE
5><META
6NAME="GENERATOR"
7CONTENT="Modular DocBook HTML Stylesheet Version 1.59"><LINK
8REL="HOME"
9TITLE="UCL Common Library Reference"
10HREF="book1.html"><LINK
11REL="UP"
12TITLE="Overview"
13HREF="uclmmbase.html"><LINK
14REL="PREVIOUS"
15TITLE="NETUDP"
16HREF="uclmmbase-net-udp.html"></HEAD
17><BODY
18CLASS="REFENTRY"
19BGCOLOR="#FFFFFF"
20TEXT="#000000"
21LINK="#0000FF"
22VLINK="#840084"
23ALINK="#0000FF"
24><DIV
25CLASS="NAVHEADER"
26><TABLE
27WIDTH="100%"
28BORDER="0"
29BGCOLOR="#000000"
30CELLPADDING="1"
31CELLSPACING="0"
32><TR
33><TH
34COLSPAN="4"
35ALIGN="center"
36><FONT
37COLOR="#FFFFFF"
38SIZE="5"
39>UCL Common Library Reference</FONT
40></TH
41></TR
42><TR
43><TD
44WIDTH="25%"
45BGCOLOR="#C00000"
46ALIGN="left"
47><A
48HREF="uclmmbase-net-udp.html"
49><FONT
50COLOR="#FFFFFF"
51SIZE="3"
52><B
53>&#60;&#60;&#60; Previous Page</B
54></FONT
55></A
56></TD
57><TD
58WIDTH="25%"
59BGCOLOR="#0000C0"
60ALIGN="center"
61><FONT
62COLOR="#FFFFFF"
63SIZE="3"
64><B
65><A
66HREF="book1.html"
67><FONT
68COLOR="#FFFFFF"
69SIZE="3"
70><B
71>Home</B
72></FONT
73></A
74></B
75></FONT
76></TD
77><TD
78WIDTH="25%"
79BGCOLOR="#00C000"
80ALIGN="center"
81><FONT
82COLOR="#FFFFFF"
83SIZE="3"
84><B
85><A
86HREF="uclmmbase.html"
87><FONT
88COLOR="#FFFFFF"
89SIZE="3"
90><B
91>Up</B
92></FONT
93></A
94></B
95></FONT
96></TD
97><TD
98WIDTH="25%"
99BGCOLOR="#C00000"
100ALIGN="right"
101>&nbsp;</TD
102></TR
103></TABLE
104></DIV
105><H1
106><A
107NAME="UCLMMBASE-RTP"
108>RTP</A
109></H1
110><DIV
111CLASS="REFNAMEDIV"
112><A
113NAME="AEN489"
114></A
115><H2
116>Name</H2
117>RTP&nbsp;--&nbsp;Real-Time Transport Protocol (RTP) Implementation.</DIV
118><DIV
119CLASS="REFSYNOPSISDIV"
120><A
121NAME="AEN492"
122></A
123><H2
124>Synopsis</H2
125><TABLE
126BORDER="0"
127BGCOLOR="#D6E8FF"
128WIDTH="100%"
129CELLPADDING="6"
130><TR
131><TD
132><PRE
133CLASS="SYNOPSIS"
134>&#13;#include &lt;rtp.h&gt;
135
136
137#define     <A
138HREF="uclmmbase-rtp.html#RTP-VERSION-CAPS"
139>RTP_VERSION</A
140>
141#define     <A
142HREF="uclmmbase-rtp.html#RTP-PACKET-HEADER-SIZE-CAPS"
143>RTP_PACKET_HEADER_SIZE</A
144>
145#define     <A
146HREF="uclmmbase-rtp.html#RTP-MAX-PACKET-LEN-CAPS"
147>RTP_MAX_PACKET_LEN</A
148>
149typedef     <A
150HREF="uclmmbase-rtp.html#RTP-PACKET"
151>rtp_packet</A
152>;
153typedef     <A
154HREF="uclmmbase-rtp.html#RTCP-SR"
155>rtcp_sr</A
156>;
157typedef     <A
158HREF="uclmmbase-rtp.html#RTCP-RR"
159>rtcp_rr</A
160>;
161typedef     <A
162HREF="uclmmbase-rtp.html#RTCP-SDES-ITEM"
163>rtcp_sdes_item</A
164>;
165typedef     <A
166HREF="uclmmbase-rtp.html#RTCP-APP"
167>rtcp_app</A
168>;
169<A
170HREF="uclmmbase-rtp.html#RTCP-APP"
171>rtcp_app</A
172>*   (<A
173HREF="uclmmbase-rtp.html#RTCP-APP-CALLBACK"
174>*rtcp_app_callback</A
175>)            (struct <GTKDOCLINK
176HREF="RTP"
177>rtp</GTKDOCLINK
178> *session,
179                                             <GTKDOCLINK
180HREF="UINT32-T"
181>uint32_t</GTKDOCLINK
182> rtp_ts,
183                                             int max_size);
184enum        <A
185HREF="uclmmbase-rtp.html#RTP-EVENT-TYPE"
186>rtp_event_type</A
187>;
188typedef     <A
189HREF="uclmmbase-rtp.html#RTP-EVENT"
190>rtp_event</A
191>;
192void        (<A
193HREF="uclmmbase-rtp.html#RTP-CALLBACK"
194>*rtp_callback</A
195>)                 (struct <GTKDOCLINK
196HREF="RTP"
197>rtp</GTKDOCLINK
198> *session,
199                                             <A
200HREF="uclmmbase-rtp.html#RTP-EVENT"
201>rtp_event</A
202> *e);
203enum        <A
204HREF="uclmmbase-rtp.html#RTP-OPTION"
205>rtp_option</A
206>;
207enum        <A
208HREF="uclmmbase-rtp.html#RTCP-SDES-TYPE"
209>rtcp_sdes_type</A
210>;
211void        <A
212HREF="uclmmbase-rtp.html#RTP-SEND-BYE"
213>rtp_send_bye</A
214>                    (struct <GTKDOCLINK
215HREF="RTP"
216>rtp</GTKDOCLINK
217> *session);
218void        <A
219HREF="uclmmbase-rtp.html#RTP-DONE"
220>rtp_done</A
221>                        (struct <GTKDOCLINK
222HREF="RTP"
223>rtp</GTKDOCLINK
224> *session);
225int         <A
226HREF="uclmmbase-rtp.html#RTP-SET-OPTION"
227>rtp_set_option</A
228>                  (struct <GTKDOCLINK
229HREF="RTP"
230>rtp</GTKDOCLINK
231> *session,
232                                             <A
233HREF="uclmmbase-rtp.html#RTP-OPTION"
234>rtp_option</A
235> optname,
236                                             int optval);
237int         <A
238HREF="uclmmbase-rtp.html#RTP-GET-OPTION"
239>rtp_get_option</A
240>                  (struct <GTKDOCLINK
241HREF="RTP"
242>rtp</GTKDOCLINK
243> *session,
244                                             <A
245HREF="uclmmbase-rtp.html#RTP-OPTION"
246>rtp_option</A
247> optname,
248                                             int *optval);
249int         <A
250HREF="uclmmbase-rtp.html#RTP-RECV"
251>rtp_recv</A
252>                        (struct <GTKDOCLINK
253HREF="RTP"
254>rtp</GTKDOCLINK
255> *session,
256                                             struct <GTKDOCLINK
257HREF="TIMEVAL"
258>timeval</GTKDOCLINK
259> *timeout,
260                                             <GTKDOCLINK
261HREF="UINT32-T"
262>uint32_t</GTKDOCLINK
263> curr_rtp_ts);
264int         <A
265HREF="uclmmbase-rtp.html#RTP-SEND-DATA"
266>rtp_send_data</A
267>                   (struct <GTKDOCLINK
268HREF="RTP"
269>rtp</GTKDOCLINK
270> *session,
271                                             <GTKDOCLINK
272HREF="UINT32-T"
273>uint32_t</GTKDOCLINK
274> rtp_ts,
275                                             char pt,
276                                             int m,
277                                             int cc,
278                                             <GTKDOCLINK
279HREF="UINT32-T"
280>uint32_t</GTKDOCLINK
281> csrc[],
282                                             char *data,
283                                             int data_len,
284                                             char *extn,
285                                             <GTKDOCLINK
286HREF="UINT16-T"
287>uint16_t</GTKDOCLINK
288> extn_len,
289                                             <GTKDOCLINK
290HREF="UINT16-T"
291>uint16_t</GTKDOCLINK
292> extn_type);
293void        <A
294HREF="uclmmbase-rtp.html#RTP-SEND-CTRL"
295>rtp_send_ctrl</A
296>                   (struct <GTKDOCLINK
297HREF="RTP"
298>rtp</GTKDOCLINK
299> *session,
300                                             <GTKDOCLINK
301HREF="UINT32-T"
302>uint32_t</GTKDOCLINK
303> rtp_ts,
304                                             <A
305HREF="uclmmbase-rtp.html#RTCP-APP-CALLBACK"
306>rtcp_app_callback</A
307> callback);
308void        <A
309HREF="uclmmbase-rtp.html#RTP-UPDATE"
310>rtp_update</A
311>                      (struct <GTKDOCLINK
312HREF="RTP"
313>rtp</GTKDOCLINK
314> *session);
315<GTKDOCLINK
316HREF="UINT32-T"
317>uint32_t</GTKDOCLINK
318>    <A
319HREF="uclmmbase-rtp.html#RTP-MY-SSRC"
320>rtp_my_ssrc</A
321>                     (struct <GTKDOCLINK
322HREF="RTP"
323>rtp</GTKDOCLINK
324> *session);
325int         <A
326HREF="uclmmbase-rtp.html#RTP-ADD-CSRC"
327>rtp_add_csrc</A
328>                    (struct <GTKDOCLINK
329HREF="RTP"
330>rtp</GTKDOCLINK
331> *session,
332                                             <GTKDOCLINK
333HREF="UINT32-T"
334>uint32_t</GTKDOCLINK
335> csrc);
336int         <A
337HREF="uclmmbase-rtp.html#RTP-DEL-CSRC"
338>rtp_del_csrc</A
339>                    (struct <GTKDOCLINK
340HREF="RTP"
341>rtp</GTKDOCLINK
342> *session,
343                                             <GTKDOCLINK
344HREF="UINT32-T"
345>uint32_t</GTKDOCLINK
346> csrc);
347int         <A
348HREF="uclmmbase-rtp.html#RTP-VALID-SSRC"
349>rtp_valid_ssrc</A
350>                  (struct <GTKDOCLINK
351HREF="RTP"
352>rtp</GTKDOCLINK
353> *session,
354                                             <GTKDOCLINK
355HREF="UINT32-T"
356>uint32_t</GTKDOCLINK
357> ssrc);
358int         <A
359HREF="uclmmbase-rtp.html#RTP-SET-SDES"
360>rtp_set_sdes</A
361>                    (struct <GTKDOCLINK
362HREF="RTP"
363>rtp</GTKDOCLINK
364> *session,
365                                             <GTKDOCLINK
366HREF="UINT32-T"
367>uint32_t</GTKDOCLINK
368> ssrc,
369                                             <A
370HREF="uclmmbase-rtp.html#RTCP-SDES-TYPE"
371>rtcp_sdes_type</A
372> type,
373                                             char *value,
374                                             int length);
375const char* <A
376HREF="uclmmbase-rtp.html#RTP-GET-SDES"
377>rtp_get_sdes</A
378>                    (struct <GTKDOCLINK
379HREF="RTP"
380>rtp</GTKDOCLINK
381> *session,
382                                             <GTKDOCLINK
383HREF="UINT32-T"
384>uint32_t</GTKDOCLINK
385> ssrc,
386                                             <A
387HREF="uclmmbase-rtp.html#RTCP-SDES-TYPE"
388>rtcp_sdes_type</A
389> type);
390const <A
391HREF="uclmmbase-rtp.html#RTCP-SR"
392>rtcp_sr</A
393>* <A
394HREF="uclmmbase-rtp.html#RTP-GET-SR"
395>rtp_get_sr</A
396>                   (struct <GTKDOCLINK
397HREF="RTP"
398>rtp</GTKDOCLINK
399> *session,
400                                             <GTKDOCLINK
401HREF="UINT32-T"
402>uint32_t</GTKDOCLINK
403> ssrc);
404const <A
405HREF="uclmmbase-rtp.html#RTCP-RR"
406>rtcp_rr</A
407>* <A
408HREF="uclmmbase-rtp.html#RTP-GET-RR"
409>rtp_get_rr</A
410>                   (struct <GTKDOCLINK
411HREF="RTP"
412>rtp</GTKDOCLINK
413> *session,
414                                             <GTKDOCLINK
415HREF="UINT32-T"
416>uint32_t</GTKDOCLINK
417> reporter,
418                                             <GTKDOCLINK
419HREF="UINT32-T"
420>uint32_t</GTKDOCLINK
421> reportee);
422int         <A
423HREF="uclmmbase-rtp.html#RTP-SET-ENCRYPTION-KEY"
424>rtp_set_encryption_key</A
425>          (struct <GTKDOCLINK
426HREF="RTP"
427>rtp</GTKDOCLINK
428> *session,
429                                             const char *passphrase);
430int         <A
431HREF="uclmmbase-rtp.html#RTP-SET-MY-SSRC"
432>rtp_set_my_ssrc</A
433>                 (struct <GTKDOCLINK
434HREF="RTP"
435>rtp</GTKDOCLINK
436> *session,
437                                             <GTKDOCLINK
438HREF="UINT32-T"
439>uint32_t</GTKDOCLINK
440> ssrc);
441char*       <A
442HREF="uclmmbase-rtp.html#RTP-GET-ADDR"
443>rtp_get_addr</A
444>                    (struct <GTKDOCLINK
445HREF="RTP"
446>rtp</GTKDOCLINK
447> *session);
448<GTKDOCLINK
449HREF="UINT16-T"
450>uint16_t</GTKDOCLINK
451>    <A
452HREF="uclmmbase-rtp.html#RTP-GET-RX-PORT"
453>rtp_get_rx_port</A
454>                 (struct <GTKDOCLINK
455HREF="RTP"
456>rtp</GTKDOCLINK
457> *session);
458<GTKDOCLINK
459HREF="UINT16-T"
460>uint16_t</GTKDOCLINK
461>    <A
462HREF="uclmmbase-rtp.html#RTP-GET-TX-PORT"
463>rtp_get_tx_port</A
464>                 (struct <GTKDOCLINK
465HREF="RTP"
466>rtp</GTKDOCLINK
467> *session);
468int         <A
469HREF="uclmmbase-rtp.html#RTP-GET-TTL"
470>rtp_get_ttl</A
471>                     (struct <GTKDOCLINK
472HREF="RTP"
473>rtp</GTKDOCLINK
474> *session);
475void*       <A
476HREF="uclmmbase-rtp.html#RTP-GET-USERDATA"
477>rtp_get_userdata</A
478>                (struct <GTKDOCLINK
479HREF="RTP"
480>rtp</GTKDOCLINK
481> *session);</PRE
482></TD
483></TR
484></TABLE
485></DIV
486><DIV
487CLASS="REFSECT1"
488><A
489NAME="AEN586"
490></A
491><H2
492>Description</H2
493><P
494>&#13;The Real-Time Transport Protocol (RTP) is a protocol for the transport
495of audio, video, and other real-time data across IP capable networks.&#13;</P
496></DIV
497><DIV
498CLASS="REFSECT1"
499><A
500NAME="AEN589"
501></A
502><H2
503>Details</H2
504><DIV
505CLASS="REFSECT2"
506><A
507NAME="AEN591"
508></A
509><H3
510><A
511NAME="RTP-VERSION-CAPS"
512></A
513>RTP_VERSION</H3
514><TABLE
515BORDER="0"
516BGCOLOR="#D6E8FF"
517WIDTH="100%"
518CELLPADDING="6"
519><TR
520><TD
521><PRE
522CLASS="PROGRAMLISTING"
523>#define RTP_VERSION 2</PRE
524></TD
525></TR
526></TABLE
527><P
528></P
529></DIV
530><HR><DIV
531CLASS="REFSECT2"
532><A
533NAME="AEN596"
534></A
535><H3
536><A
537NAME="RTP-PACKET-HEADER-SIZE-CAPS"
538></A
539>RTP_PACKET_HEADER_SIZE</H3
540><TABLE
541BORDER="0"
542BGCOLOR="#D6E8FF"
543WIDTH="100%"
544CELLPADDING="6"
545><TR
546><TD
547><PRE
548CLASS="PROGRAMLISTING"
549>#define RTP_PACKET_HEADER_SIZE ((sizeof(char *) * 2) + sizeof(uint32_t *) + (2 * sizeof(int)))</PRE
550></TD
551></TR
552></TABLE
553><P
554></P
555></DIV
556><HR><DIV
557CLASS="REFSECT2"
558><A
559NAME="AEN601"
560></A
561><H3
562><A
563NAME="RTP-MAX-PACKET-LEN-CAPS"
564></A
565>RTP_MAX_PACKET_LEN</H3
566><TABLE
567BORDER="0"
568BGCOLOR="#D6E8FF"
569WIDTH="100%"
570CELLPADDING="6"
571><TR
572><TD
573><PRE
574CLASS="PROGRAMLISTING"
575>#define RTP_MAX_PACKET_LEN 1500</PRE
576></TD
577></TR
578></TABLE
579><P
580></P
581></DIV
582><HR><DIV
583CLASS="REFSECT2"
584><A
585NAME="AEN606"
586></A
587><H3
588><A
589NAME="RTP-PACKET"
590></A
591>rtp_packet</H3
592><TABLE
593BORDER="0"
594BGCOLOR="#D6E8FF"
595WIDTH="100%"
596CELLPADDING="6"
597><TR
598><TD
599><PRE
600CLASS="PROGRAMLISTING"
601>typedef struct {
602        /* The following are pointers to the data in the packet as    */
603        /* it came off the wire. The packet it read in such that the  */
604        /* header maps onto the latter part of this struct, and the   */
605        /* fields in this first part of the struct point into it. The */
606        /* entire packet can be freed by freeing this struct, without */
607        /* having to free the csrc, data and extn blocks separately.  */
608        /* WARNING: Don't change the size of the first portion of the */
609        /* struct without changing RTP_PACKET_HEADER_SIZE to match.   */
610        uint32_t        *csrc;
611        char            *data;
612        int              data_len;
613        unsigned char   *extn;
614        uint16_t         extn_len;      /* Size of the extension in 32 bit words minus one */
615        uint16_t         extn_type;     /* Extension type field in the RTP packet header   */
616        /* The following map directly onto the RTP packet header...   */
617#ifdef WORDS_BIGENDIAN
618        unsigned short   v:2;           /* packet type                */
619        unsigned short   p:1;           /* padding flag               */
620        unsigned short   x:1;           /* header extension flag      */
621        unsigned short   cc:4;          /* CSRC count                 */
622        unsigned short   m:1;           /* marker bit                 */
623        unsigned short   pt:7;          /* payload type               */
624#else
625        unsigned short   cc:4;          /* CSRC count                 */
626        unsigned short   x:1;           /* header extension flag      */
627        unsigned short   p:1;           /* padding flag               */
628        unsigned short   v:2;           /* packet type                */
629        unsigned short   pt:7;          /* payload type               */
630        unsigned short   m:1;           /* marker bit                 */
631#endif
632        uint16_t          seq;          /* sequence number            */
633        uint32_t          ts;           /* timestamp                  */
634        uint32_t          ssrc;         /* synchronization source     */
635        /* The csrc list, header extension and data follow, but can't */
636        /* be represented in the struct.                              */
637} rtp_packet;</PRE
638></TD
639></TR
640></TABLE
641><P
642></P
643></DIV
644><HR><DIV
645CLASS="REFSECT2"
646><A
647NAME="AEN611"
648></A
649><H3
650><A
651NAME="RTCP-SR"
652></A
653>rtcp_sr</H3
654><TABLE
655BORDER="0"
656BGCOLOR="#D6E8FF"
657WIDTH="100%"
658CELLPADDING="6"
659><TR
660><TD
661><PRE
662CLASS="PROGRAMLISTING"
663>typedef struct {
664        uint32_t         ssrc;
665        uint32_t         ntp_sec;
666        uint32_t         ntp_frac;
667        uint32_t         rtp_ts;
668        uint32_t         sender_pcount;
669        uint32_t         sender_bcount;
670} rtcp_sr;</PRE
671></TD
672></TR
673></TABLE
674><P
675></P
676></DIV
677><HR><DIV
678CLASS="REFSECT2"
679><A
680NAME="AEN616"
681></A
682><H3
683><A
684NAME="RTCP-RR"
685></A
686>rtcp_rr</H3
687><TABLE
688BORDER="0"
689BGCOLOR="#D6E8FF"
690WIDTH="100%"
691CELLPADDING="6"
692><TR
693><TD
694><PRE
695CLASS="PROGRAMLISTING"
696>typedef struct {
697        uint32_t        ssrc;           /* The ssrc to which this RR pertains */
698#ifdef WORDS_BIGENDIAN
699        uint32_t        fract_lost:8;
700        uint32_t        total_lost:24;
701#else
702        uint32_t        total_lost:24;
703        uint32_t        fract_lost:8;
704#endif 
705        uint32_t        last_seq;
706        uint32_t        jitter;
707        uint32_t        lsr;
708        uint32_t        dlsr;
709} rtcp_rr;</PRE
710></TD
711></TR
712></TABLE
713><P
714></P
715></DIV
716><HR><DIV
717CLASS="REFSECT2"
718><A
719NAME="AEN621"
720></A
721><H3
722><A
723NAME="RTCP-SDES-ITEM"
724></A
725>rtcp_sdes_item</H3
726><TABLE
727BORDER="0"
728BGCOLOR="#D6E8FF"
729WIDTH="100%"
730CELLPADDING="6"
731><TR
732><TD
733><PRE
734CLASS="PROGRAMLISTING"
735>typedef struct {
736        uint8_t         type;           /* type of SDES item              */
737        uint8_t         length;         /* length of SDES item (in bytes) */
738        char            data[1];        /* text, not zero-terminated      */
739} rtcp_sdes_item;</PRE
740></TD
741></TR
742></TABLE
743><P
744></P
745></DIV
746><HR><DIV
747CLASS="REFSECT2"
748><A
749NAME="AEN626"
750></A
751><H3
752><A
753NAME="RTCP-APP"
754></A
755>rtcp_app</H3
756><TABLE
757BORDER="0"
758BGCOLOR="#D6E8FF"
759WIDTH="100%"
760CELLPADDING="6"
761><TR
762><TD
763><PRE
764CLASS="PROGRAMLISTING"
765>typedef struct {
766#ifdef WORDS_BIGENDIAN
767        unsigned short  version:2;      /* RTP version            */
768        unsigned short  p:1;            /* padding flag           */
769        unsigned short  subtype:5;      /* application dependent  */
770#else
771        unsigned short  subtype:5;      /* application dependent  */
772        unsigned short  p:1;            /* padding flag           */
773        unsigned short  version:2;      /* RTP version            */
774#endif
775        unsigned short  pt:8;           /* packet type            */
776        uint16_t        length;         /* packet length          */
777        uint32_t        ssrc;
778        char            name[4];        /* four ASCII characters  */
779        char            data[1];        /* variable length field  */
780} rtcp_app;</PRE
781></TD
782></TR
783></TABLE
784><P
785></P
786></DIV
787><HR><DIV
788CLASS="REFSECT2"
789><A
790NAME="AEN631"
791></A
792><H3
793><A
794NAME="RTCP-APP-CALLBACK"
795></A
796>rtcp_app_callback ()</H3
797><TABLE
798BORDER="0"
799BGCOLOR="#D6E8FF"
800WIDTH="100%"
801CELLPADDING="6"
802><TR
803><TD
804><PRE
805CLASS="PROGRAMLISTING"
806><A
807HREF="uclmmbase-rtp.html#RTCP-APP"
808>rtcp_app</A
809>*   (*rtcp_app_callback)            (struct <GTKDOCLINK
810HREF="RTP"
811>rtp</GTKDOCLINK
812> *session,
813                                             <GTKDOCLINK
814HREF="UINT32-T"
815>uint32_t</GTKDOCLINK
816> rtp_ts,
817                                             int max_size);</PRE
818></TD
819></TR
820></TABLE
821><P
822></P
823><DIV
824CLASS="INFORMALTABLE"
825><A
826NAME="AEN639"
827></A
828><P
829></P
830><TABLE
831BORDER="0"
832WIDTH="100%"
833BGCOLOR="#FFD0D0"
834CELLSPACING="0"
835CELLPADDING="4"
836CLASS="CALSTABLE"
837><TBODY
838><TR
839><TD
840WIDTH="20%"
841ALIGN="RIGHT"
842VALIGN="TOP"
843><TT
844CLASS="PARAMETER"
845><I
846>session</I
847></TT
848>&nbsp;:</TD
849><TD
850WIDTH="80%"
851ALIGN="LEFT"
852VALIGN="TOP"
853>&nbsp;</TD
854></TR
855><TR
856><TD
857WIDTH="20%"
858ALIGN="RIGHT"
859VALIGN="TOP"
860><TT
861CLASS="PARAMETER"
862><I
863>rtp_ts</I
864></TT
865>&nbsp;:</TD
866><TD
867WIDTH="80%"
868ALIGN="LEFT"
869VALIGN="TOP"
870>&nbsp;</TD
871></TR
872><TR
873><TD
874WIDTH="20%"
875ALIGN="RIGHT"
876VALIGN="TOP"
877><TT
878CLASS="PARAMETER"
879><I
880>max_size</I
881></TT
882>&nbsp;:</TD
883><TD
884WIDTH="80%"
885ALIGN="LEFT"
886VALIGN="TOP"
887>&nbsp;</TD
888></TR
889><TR
890><TD
891WIDTH="20%"
892ALIGN="RIGHT"
893VALIGN="TOP"
894><I
895CLASS="EMPHASIS"
896>Returns</I
897> :</TD
898><TD
899WIDTH="80%"
900ALIGN="LEFT"
901VALIGN="TOP"
902>&nbsp;</TD
903></TR
904></TBODY
905></TABLE
906><P
907></P
908></DIV
909></DIV
910><HR><DIV
911CLASS="REFSECT2"
912><A
913NAME="AEN660"
914></A
915><H3
916><A
917NAME="RTP-EVENT-TYPE"
918></A
919>enum rtp_event_type</H3
920><TABLE
921BORDER="0"
922BGCOLOR="#D6E8FF"
923WIDTH="100%"
924CELLPADDING="6"
925><TR
926><TD
927><PRE
928CLASS="PROGRAMLISTING"
929>typedef enum {
930        RX_RTP,
931        RX_SR,
932        RX_RR,
933        RX_SDES,
934        RX_BYE,         /* Source is leaving the session, database entry is still valid */
935        SOURCE_CREATED,
936        SOURCE_DELETED, /* Source has been removed from the database                    */
937        RX_RR_EMPTY,    /* We've received an empty reception report block                                               */
938        RX_RTCP_START,  /* Processing a compound RTCP packet about to start. The SSRC is not valid in this event. */
939        RX_RTCP_FINISH, /* Processing a compound RTCP packet finished. The SSRC is not valid in this event.  */
940        RR_TIMEOUT,
941        RX_APP
942} rtp_event_type;</PRE
943></TD
944></TR
945></TABLE
946><P
947></P
948></DIV
949><HR><DIV
950CLASS="REFSECT2"
951><A
952NAME="AEN665"
953></A
954><H3
955><A
956NAME="RTP-EVENT"
957></A
958>rtp_event</H3
959><TABLE
960BORDER="0"
961BGCOLOR="#D6E8FF"
962WIDTH="100%"
963CELLPADDING="6"
964><TR
965><TD
966><PRE
967CLASS="PROGRAMLISTING"
968>typedef struct {
969        uint32_t         ssrc;
970        rtp_event_type   type;
971        void            *data;
972        struct timeval  *ts;
973} rtp_event;</PRE
974></TD
975></TR
976></TABLE
977><P
978></P
979></DIV
980><HR><DIV
981CLASS="REFSECT2"
982><A
983NAME="AEN670"
984></A
985><H3
986><A
987NAME="RTP-CALLBACK"
988></A
989>rtp_callback ()</H3
990><TABLE
991BORDER="0"
992BGCOLOR="#D6E8FF"
993WIDTH="100%"
994CELLPADDING="6"
995><TR
996><TD
997><PRE
998CLASS="PROGRAMLISTING"
999>void        (*rtp_callback)                 (struct <GTKDOCLINK
1000HREF="RTP"
1001>rtp</GTKDOCLINK
1002> *session,
1003                                             <A
1004HREF="uclmmbase-rtp.html#RTP-EVENT"
1005>rtp_event</A
1006> *e);</PRE
1007></TD
1008></TR
1009></TABLE
1010><P
1011></P
1012><DIV
1013CLASS="INFORMALTABLE"
1014><A
1015NAME="AEN677"
1016></A
1017><P
1018></P
1019><TABLE
1020BORDER="0"
1021WIDTH="100%"
1022BGCOLOR="#FFD0D0"
1023CELLSPACING="0"
1024CELLPADDING="4"
1025CLASS="CALSTABLE"
1026><TBODY
1027><TR
1028><TD
1029WIDTH="20%"
1030ALIGN="RIGHT"
1031VALIGN="TOP"
1032><TT
1033CLASS="PARAMETER"
1034><I
1035>session</I
1036></TT
1037>&nbsp;:</TD
1038><TD
1039WIDTH="80%"
1040ALIGN="LEFT"
1041VALIGN="TOP"
1042>&nbsp;</TD
1043></TR
1044><TR
1045><TD
1046WIDTH="20%"
1047ALIGN="RIGHT"
1048VALIGN="TOP"
1049><TT
1050CLASS="PARAMETER"
1051><I
1052>e</I
1053></TT
1054>&nbsp;:</TD
1055><TD
1056WIDTH="80%"
1057ALIGN="LEFT"
1058VALIGN="TOP"
1059>&nbsp;</TD
1060></TR
1061></TBODY
1062></TABLE
1063><P
1064></P
1065></DIV
1066></DIV
1067><HR><DIV
1068CLASS="REFSECT2"
1069><A
1070NAME="AEN690"
1071></A
1072><H3
1073><A
1074NAME="RTP-OPTION"
1075></A
1076>enum rtp_option</H3
1077><TABLE
1078BORDER="0"
1079BGCOLOR="#D6E8FF"
1080WIDTH="100%"
1081CELLPADDING="6"
1082><TR
1083><TD
1084><PRE
1085CLASS="PROGRAMLISTING"
1086>typedef enum {
1087        RTP_OPT_PROMISC =           1,
1088        RTP_OPT_WEAK_VALIDATION =   2,
1089        RTP_OPT_FILTER_MY_PACKETS = 3
1090} rtp_option;</PRE
1091></TD
1092></TR
1093></TABLE
1094><P
1095></P
1096></DIV
1097><HR><DIV
1098CLASS="REFSECT2"
1099><A
1100NAME="AEN695"
1101></A
1102><H3
1103><A
1104NAME="RTCP-SDES-TYPE"
1105></A
1106>enum rtcp_sdes_type</H3
1107><TABLE
1108BORDER="0"
1109BGCOLOR="#D6E8FF"
1110WIDTH="100%"
1111CELLPADDING="6"
1112><TR
1113><TD
1114><PRE
1115CLASS="PROGRAMLISTING"
1116>typedef enum {
1117        RTCP_SDES_END   = 0,
1118        RTCP_SDES_CNAME = 1,
1119        RTCP_SDES_NAME  = 2,
1120        RTCP_SDES_EMAIL = 3,
1121        RTCP_SDES_PHONE = 4,
1122        RTCP_SDES_LOC   = 5,
1123        RTCP_SDES_TOOL  = 6,
1124        RTCP_SDES_NOTE  = 7,
1125        RTCP_SDES_PRIV  = 8
1126} rtcp_sdes_type;</PRE
1127></TD
1128></TR
1129></TABLE
1130><P
1131></P
1132></DIV
1133><HR><DIV
1134CLASS="REFSECT2"
1135><A
1136NAME="AEN700"
1137></A
1138><H3
1139><A
1140NAME="RTP-SEND-BYE"
1141></A
1142>rtp_send_bye ()</H3
1143><TABLE
1144BORDER="0"
1145BGCOLOR="#D6E8FF"
1146WIDTH="100%"
1147CELLPADDING="6"
1148><TR
1149><TD
1150><PRE
1151CLASS="PROGRAMLISTING"
1152>void        rtp_send_bye                    (struct <GTKDOCLINK
1153HREF="RTP"
1154>rtp</GTKDOCLINK
1155> *session);</PRE
1156></TD
1157></TR
1158></TABLE
1159><P
1160></P
1161><DIV
1162CLASS="INFORMALTABLE"
1163><A
1164NAME="AEN706"
1165></A
1166><P
1167></P
1168><TABLE
1169BORDER="0"
1170WIDTH="100%"
1171BGCOLOR="#FFD0D0"
1172CELLSPACING="0"
1173CELLPADDING="4"
1174CLASS="CALSTABLE"
1175><TBODY
1176><TR
1177><TD
1178WIDTH="20%"
1179ALIGN="RIGHT"
1180VALIGN="TOP"
1181><TT
1182CLASS="PARAMETER"
1183><I
1184>session</I
1185></TT
1186>&nbsp;:</TD
1187><TD
1188WIDTH="80%"
1189ALIGN="LEFT"
1190VALIGN="TOP"
1191>&nbsp;</TD
1192></TR
1193></TBODY
1194></TABLE
1195><P
1196></P
1197></DIV
1198></DIV
1199><HR><DIV
1200CLASS="REFSECT2"
1201><A
1202NAME="AEN715"
1203></A
1204><H3
1205><A
1206NAME="RTP-DONE"
1207></A
1208>rtp_done ()</H3
1209><TABLE
1210BORDER="0"
1211BGCOLOR="#D6E8FF"
1212WIDTH="100%"
1213CELLPADDING="6"
1214><TR
1215><TD
1216><PRE
1217CLASS="PROGRAMLISTING"
1218>void        rtp_done                        (struct <GTKDOCLINK
1219HREF="RTP"
1220>rtp</GTKDOCLINK
1221> *session);</PRE
1222></TD
1223></TR
1224></TABLE
1225><P
1226>Frees state associated with given RTP session</P
1227><P
1228></P
1229><DIV
1230CLASS="INFORMALTABLE"
1231><A
1232NAME="AEN722"
1233></A
1234><P
1235></P
1236><TABLE
1237BORDER="0"
1238WIDTH="100%"
1239BGCOLOR="#FFD0D0"
1240CELLSPACING="0"
1241CELLPADDING="4"
1242CLASS="CALSTABLE"
1243><TBODY
1244><TR
1245><TD
1246WIDTH="20%"
1247ALIGN="RIGHT"
1248VALIGN="TOP"
1249><TT
1250CLASS="PARAMETER"
1251><I
1252>session</I
1253></TT
1254>&nbsp;:</TD
1255><TD
1256WIDTH="80%"
1257ALIGN="LEFT"
1258VALIGN="TOP"
1259> the RTP session to finish</TD
1260></TR
1261></TBODY
1262></TABLE
1263><P
1264></P
1265></DIV
1266></DIV
1267><HR><DIV
1268CLASS="REFSECT2"
1269><A
1270NAME="AEN731"
1271></A
1272><H3
1273><A
1274NAME="RTP-SET-OPTION"
1275></A
1276>rtp_set_option ()</H3
1277><TABLE
1278BORDER="0"
1279BGCOLOR="#D6E8FF"
1280WIDTH="100%"
1281CELLPADDING="6"
1282><TR
1283><TD
1284><PRE
1285CLASS="PROGRAMLISTING"
1286>int         rtp_set_option                  (struct <GTKDOCLINK
1287HREF="RTP"
1288>rtp</GTKDOCLINK
1289> *session,
1290                                             <A
1291HREF="uclmmbase-rtp.html#RTP-OPTION"
1292>rtp_option</A
1293> optname,
1294                                             int optval);</PRE
1295></TD
1296></TR
1297></TABLE
1298><P
1299></P
1300><DIV
1301CLASS="INFORMALTABLE"
1302><A
1303NAME="AEN738"
1304></A
1305><P
1306></P
1307><TABLE
1308BORDER="0"
1309WIDTH="100%"
1310BGCOLOR="#FFD0D0"
1311CELLSPACING="0"
1312CELLPADDING="4"
1313CLASS="CALSTABLE"
1314><TBODY
1315><TR
1316><TD
1317WIDTH="20%"
1318ALIGN="RIGHT"
1319VALIGN="TOP"
1320><TT
1321CLASS="PARAMETER"
1322><I
1323>session</I
1324></TT
1325>&nbsp;:</TD
1326><TD
1327WIDTH="80%"
1328ALIGN="LEFT"
1329VALIGN="TOP"
1330>&nbsp;</TD
1331></TR
1332><TR
1333><TD
1334WIDTH="20%"
1335ALIGN="RIGHT"
1336VALIGN="TOP"
1337><TT
1338CLASS="PARAMETER"
1339><I
1340>optname</I
1341></TT
1342>&nbsp;:</TD
1343><TD
1344WIDTH="80%"
1345ALIGN="LEFT"
1346VALIGN="TOP"
1347>&nbsp;</TD
1348></TR
1349><TR
1350><TD
1351WIDTH="20%"
1352ALIGN="RIGHT"
1353VALIGN="TOP"
1354><TT
1355CLASS="PARAMETER"
1356><I
1357>optval</I
1358></TT
1359>&nbsp;:</TD
1360><TD
1361WIDTH="80%"
1362ALIGN="LEFT"
1363VALIGN="TOP"
1364>&nbsp;</TD
1365></TR
1366><TR
1367><TD
1368WIDTH="20%"
1369ALIGN="RIGHT"
1370VALIGN="TOP"
1371><I
1372CLASS="EMPHASIS"
1373>Returns</I
1374> :</TD
1375><TD
1376WIDTH="80%"
1377ALIGN="LEFT"
1378VALIGN="TOP"
1379>&nbsp;</TD
1380></TR
1381></TBODY
1382></TABLE
1383><P
1384></P
1385></DIV
1386></DIV
1387><HR><DIV
1388CLASS="REFSECT2"
1389><A
1390NAME="AEN759"
1391></A
1392><H3
1393><A
1394NAME="RTP-GET-OPTION"
1395></A
1396>rtp_get_option ()</H3
1397><TABLE
1398BORDER="0"
1399BGCOLOR="#D6E8FF"
1400WIDTH="100%"
1401CELLPADDING="6"
1402><TR
1403><TD
1404><PRE
1405CLASS="PROGRAMLISTING"
1406>int         rtp_get_option                  (struct <GTKDOCLINK
1407HREF="RTP"
1408>rtp</GTKDOCLINK
1409> *session,
1410                                             <A
1411HREF="uclmmbase-rtp.html#RTP-OPTION"
1412>rtp_option</A
1413> optname,
1414                                             int *optval);</PRE
1415></TD
1416></TR
1417></TABLE
1418><P
1419></P
1420><DIV
1421CLASS="INFORMALTABLE"
1422><A
1423NAME="AEN766"
1424></A
1425><P
1426></P
1427><TABLE
1428BORDER="0"
1429WIDTH="100%"
1430BGCOLOR="#FFD0D0"
1431CELLSPACING="0"
1432CELLPADDING="4"
1433CLASS="CALSTABLE"
1434><TBODY
1435><TR
1436><TD
1437WIDTH="20%"
1438ALIGN="RIGHT"
1439VALIGN="TOP"
1440><TT
1441CLASS="PARAMETER"
1442><I
1443>session</I
1444></TT
1445>&nbsp;:</TD
1446><TD
1447WIDTH="80%"
1448ALIGN="LEFT"
1449VALIGN="TOP"
1450>&nbsp;</TD
1451></TR
1452><TR
1453><TD
1454WIDTH="20%"
1455ALIGN="RIGHT"
1456VALIGN="TOP"
1457><TT
1458CLASS="PARAMETER"
1459><I
1460>optname</I
1461></TT
1462>&nbsp;:</TD
1463><TD
1464WIDTH="80%"
1465ALIGN="LEFT"
1466VALIGN="TOP"
1467>&nbsp;</TD
1468></TR
1469><TR
1470><TD
1471WIDTH="20%"
1472ALIGN="RIGHT"
1473VALIGN="TOP"
1474><TT
1475CLASS="PARAMETER"
1476><I
1477>optval</I
1478></TT
1479>&nbsp;:</TD
1480><TD
1481WIDTH="80%"
1482ALIGN="LEFT"
1483VALIGN="TOP"
1484>&nbsp;</TD
1485></TR
1486><TR
1487><TD
1488WIDTH="20%"
1489ALIGN="RIGHT"
1490VALIGN="TOP"
1491><I
1492CLASS="EMPHASIS"
1493>Returns</I
1494> :</TD
1495><TD
1496WIDTH="80%"
1497ALIGN="LEFT"
1498VALIGN="TOP"
1499>&nbsp;</TD
1500></TR
1501></TBODY
1502></TABLE
1503><P
1504></P
1505></DIV
1506></DIV
1507><HR><DIV
1508CLASS="REFSECT2"
1509><A
1510NAME="AEN787"
1511></A
1512><H3
1513><A
1514NAME="RTP-RECV"
1515></A
1516>rtp_recv ()</H3
1517><TABLE
1518BORDER="0"
1519BGCOLOR="#D6E8FF"
1520WIDTH="100%"
1521CELLPADDING="6"
1522><TR
1523><TD
1524><PRE
1525CLASS="PROGRAMLISTING"
1526>int         rtp_recv                        (struct <GTKDOCLINK
1527HREF="RTP"
1528>rtp</GTKDOCLINK
1529> *session,
1530                                             struct <GTKDOCLINK
1531HREF="TIMEVAL"
1532>timeval</GTKDOCLINK
1533> *timeout,
1534                                             <GTKDOCLINK
1535HREF="UINT32-T"
1536>uint32_t</GTKDOCLINK
1537> curr_rtp_ts);</PRE
1538></TD
1539></TR
1540></TABLE
1541><P
1542></P
1543><DIV
1544CLASS="INFORMALTABLE"
1545><A
1546NAME="AEN795"
1547></A
1548><P
1549></P
1550><TABLE
1551BORDER="0"
1552WIDTH="100%"
1553BGCOLOR="#FFD0D0"
1554CELLSPACING="0"
1555CELLPADDING="4"
1556CLASS="CALSTABLE"
1557><TBODY
1558><TR
1559><TD
1560WIDTH="20%"
1561ALIGN="RIGHT"
1562VALIGN="TOP"
1563><TT
1564CLASS="PARAMETER"
1565><I
1566>session</I
1567></TT
1568>&nbsp;:</TD
1569><TD
1570WIDTH="80%"
1571ALIGN="LEFT"
1572VALIGN="TOP"
1573>&nbsp;</TD
1574></TR
1575><TR
1576><TD
1577WIDTH="20%"
1578ALIGN="RIGHT"
1579VALIGN="TOP"
1580><TT
1581CLASS="PARAMETER"
1582><I
1583>timeout</I
1584></TT
1585>&nbsp;:</TD
1586><TD
1587WIDTH="80%"
1588ALIGN="LEFT"
1589VALIGN="TOP"
1590>&nbsp;</TD
1591></TR
1592><TR
1593><TD
1594WIDTH="20%"
1595ALIGN="RIGHT"
1596VALIGN="TOP"
1597><TT
1598CLASS="PARAMETER"
1599><I
1600>curr_rtp_ts</I
1601></TT
1602>&nbsp;:</TD
1603><TD
1604WIDTH="80%"
1605ALIGN="LEFT"
1606VALIGN="TOP"
1607>&nbsp;</TD
1608></TR
1609><TR
1610><TD
1611WIDTH="20%"
1612ALIGN="RIGHT"
1613VALIGN="TOP"
1614><I
1615CLASS="EMPHASIS"
1616>Returns</I
1617> :</TD
1618><TD
1619WIDTH="80%"
1620ALIGN="LEFT"
1621VALIGN="TOP"
1622>&nbsp;</TD
1623></TR
1624></TBODY
1625></TABLE
1626><P
1627></P
1628></DIV
1629></DIV
1630><HR><DIV
1631CLASS="REFSECT2"
1632><A
1633NAME="AEN816"
1634></A
1635><H3
1636><A
1637NAME="RTP-SEND-DATA"
1638></A
1639>rtp_send_data ()</H3
1640><TABLE
1641BORDER="0"
1642BGCOLOR="#D6E8FF"
1643WIDTH="100%"
1644CELLPADDING="6"
1645><TR
1646><TD
1647><PRE
1648CLASS="PROGRAMLISTING"
1649>int         rtp_send_data                   (struct <GTKDOCLINK
1650HREF="RTP"
1651>rtp</GTKDOCLINK
1652> *session,
1653                                             <GTKDOCLINK
1654HREF="UINT32-T"
1655>uint32_t</GTKDOCLINK
1656> rtp_ts,
1657                                             char pt,
1658                                             int m,
1659                                             int cc,
1660                                             <GTKDOCLINK
1661HREF="UINT32-T"
1662>uint32_t</GTKDOCLINK
1663> csrc[],
1664                                             char *data,
1665                                             int data_len,
1666                                             char *extn,
1667                                             <GTKDOCLINK
1668HREF="UINT16-T"
1669>uint16_t</GTKDOCLINK
1670> extn_len,
1671                                             <GTKDOCLINK
1672HREF="UINT16-T"
1673>uint16_t</GTKDOCLINK
1674> extn_type);</PRE
1675></TD
1676></TR
1677></TABLE
1678><P
1679></P
1680><DIV
1681CLASS="INFORMALTABLE"
1682><A
1683NAME="AEN826"
1684></A
1685><P
1686></P
1687><TABLE
1688BORDER="0"
1689WIDTH="100%"
1690BGCOLOR="#FFD0D0"
1691CELLSPACING="0"
1692CELLPADDING="4"
1693CLASS="CALSTABLE"
1694><TBODY
1695><TR
1696><TD
1697WIDTH="20%"
1698ALIGN="RIGHT"
1699VALIGN="TOP"
1700><TT
1701CLASS="PARAMETER"
1702><I
1703>session</I
1704></TT
1705>&nbsp;:</TD
1706><TD
1707WIDTH="80%"
1708ALIGN="LEFT"
1709VALIGN="TOP"
1710>&nbsp;</TD
1711></TR
1712><TR
1713><TD
1714WIDTH="20%"
1715ALIGN="RIGHT"
1716VALIGN="TOP"
1717><TT
1718CLASS="PARAMETER"
1719><I
1720>rtp_ts</I
1721></TT
1722>&nbsp;:</TD
1723><TD
1724WIDTH="80%"
1725ALIGN="LEFT"
1726VALIGN="TOP"
1727>&nbsp;</TD
1728></TR
1729><TR
1730><TD
1731WIDTH="20%"
1732ALIGN="RIGHT"
1733VALIGN="TOP"
1734><TT
1735CLASS="PARAMETER"
1736><I
1737>pt</I
1738></TT
1739>&nbsp;:</TD
1740><TD
1741WIDTH="80%"
1742ALIGN="LEFT"
1743VALIGN="TOP"
1744>&nbsp;</TD
1745></TR
1746><TR
1747><TD
1748WIDTH="20%"
1749ALIGN="RIGHT"
1750VALIGN="TOP"
1751><TT
1752CLASS="PARAMETER"
1753><I
1754>m</I
1755></TT
1756>&nbsp;:</TD
1757><TD
1758WIDTH="80%"
1759ALIGN="LEFT"
1760VALIGN="TOP"
1761>&nbsp;</TD
1762></TR
1763><TR
1764><TD
1765WIDTH="20%"
1766ALIGN="RIGHT"
1767VALIGN="TOP"
1768><TT
1769CLASS="PARAMETER"
1770><I
1771>cc</I
1772></TT
1773>&nbsp;:</TD
1774><TD
1775WIDTH="80%"
1776ALIGN="LEFT"
1777VALIGN="TOP"
1778>&nbsp;</TD
1779></TR
1780><TR
1781><TD
1782WIDTH="20%"
1783ALIGN="RIGHT"
1784VALIGN="TOP"
1785><TT
1786CLASS="PARAMETER"
1787><I
1788>csrc</I
1789></TT
1790>&nbsp;:</TD
1791><TD
1792WIDTH="80%"
1793ALIGN="LEFT"
1794VALIGN="TOP"
1795>&nbsp;</TD
1796></TR
1797><TR
1798><TD
1799WIDTH="20%"
1800ALIGN="RIGHT"
1801VALIGN="TOP"
1802><TT
1803CLASS="PARAMETER"
1804><I
1805>data</I
1806></TT
1807>&nbsp;:</TD
1808><TD
1809WIDTH="80%"
1810ALIGN="LEFT"
1811VALIGN="TOP"
1812>&nbsp;</TD
1813></TR
1814><TR
1815><TD
1816WIDTH="20%"
1817ALIGN="RIGHT"
1818VALIGN="TOP"
1819><TT
1820CLASS="PARAMETER"
1821><I
1822>data_len</I
1823></TT
1824>&nbsp;:</TD
1825><TD
1826WIDTH="80%"
1827ALIGN="LEFT"
1828VALIGN="TOP"
1829>&nbsp;</TD
1830></TR
1831><TR
1832><TD
1833WIDTH="20%"
1834ALIGN="RIGHT"
1835VALIGN="TOP"
1836><TT
1837CLASS="PARAMETER"
1838><I
1839>extn</I
1840></TT
1841>&nbsp;:</TD
1842><TD
1843WIDTH="80%"
1844ALIGN="LEFT"
1845VALIGN="TOP"
1846>&nbsp;</TD
1847></TR
1848><TR
1849><TD
1850WIDTH="20%"
1851ALIGN="RIGHT"
1852VALIGN="TOP"
1853><TT
1854CLASS="PARAMETER"
1855><I
1856>extn_len</I
1857></TT
1858>&nbsp;:</TD
1859><TD
1860WIDTH="80%"
1861ALIGN="LEFT"
1862VALIGN="TOP"
1863>&nbsp;</TD
1864></TR
1865><TR
1866><TD
1867WIDTH="20%"
1868ALIGN="RIGHT"
1869VALIGN="TOP"
1870><TT
1871CLASS="PARAMETER"
1872><I
1873>extn_type</I
1874></TT
1875>&nbsp;:</TD
1876><TD
1877WIDTH="80%"
1878ALIGN="LEFT"
1879VALIGN="TOP"
1880>&nbsp;</TD
1881></TR
1882><TR
1883><TD
1884WIDTH="20%"
1885ALIGN="RIGHT"
1886VALIGN="TOP"
1887><I
1888CLASS="EMPHASIS"
1889>Returns</I
1890> :</TD
1891><TD
1892WIDTH="80%"
1893ALIGN="LEFT"
1894VALIGN="TOP"
1895>&nbsp;</TD
1896></TR
1897></TBODY
1898></TABLE
1899><P
1900></P
1901></DIV
1902></DIV
1903><HR><DIV
1904CLASS="REFSECT2"
1905><A
1906NAME="AEN879"
1907></A
1908><H3
1909><A
1910NAME="RTP-SEND-CTRL"
1911></A
1912>rtp_send_ctrl ()</H3
1913><TABLE
1914BORDER="0"
1915BGCOLOR="#D6E8FF"
1916WIDTH="100%"
1917CELLPADDING="6"
1918><TR
1919><TD
1920><PRE
1921CLASS="PROGRAMLISTING"
1922>void        rtp_send_ctrl                   (struct <GTKDOCLINK
1923HREF="RTP"
1924>rtp</GTKDOCLINK
1925> *session,
1926                                             <GTKDOCLINK
1927HREF="UINT32-T"
1928>uint32_t</GTKDOCLINK
1929> rtp_ts,
1930                                             <A
1931HREF="uclmmbase-rtp.html#RTCP-APP-CALLBACK"
1932>rtcp_app_callback</A
1933> callback);</PRE
1934></TD
1935></TR
1936></TABLE
1937><P
1938></P
1939><DIV
1940CLASS="INFORMALTABLE"
1941><A
1942NAME="AEN887"
1943></A
1944><P
1945></P
1946><TABLE
1947BORDER="0"
1948WIDTH="100%"
1949BGCOLOR="#FFD0D0"
1950CELLSPACING="0"
1951CELLPADDING="4"
1952CLASS="CALSTABLE"
1953><TBODY
1954><TR
1955><TD
1956WIDTH="20%"
1957ALIGN="RIGHT"
1958VALIGN="TOP"
1959><TT
1960CLASS="PARAMETER"
1961><I
1962>session</I
1963></TT
1964>&nbsp;:</TD
1965><TD
1966WIDTH="80%"
1967ALIGN="LEFT"
1968VALIGN="TOP"
1969>&nbsp;</TD
1970></TR
1971><TR
1972><TD
1973WIDTH="20%"
1974ALIGN="RIGHT"
1975VALIGN="TOP"
1976><TT
1977CLASS="PARAMETER"
1978><I
1979>rtp_ts</I
1980></TT
1981>&nbsp;:</TD
1982><TD
1983WIDTH="80%"
1984ALIGN="LEFT"
1985VALIGN="TOP"
1986>&nbsp;</TD
1987></TR
1988><TR
1989><TD
1990WIDTH="20%"
1991ALIGN="RIGHT"
1992VALIGN="TOP"
1993><TT
1994CLASS="PARAMETER"
1995><I
1996>callback</I
1997></TT
1998>&nbsp;:</TD
1999><TD
2000WIDTH="80%"
2001ALIGN="LEFT"
2002VALIGN="TOP"
2003>&nbsp;</TD
2004></TR
2005></TBODY
2006></TABLE
2007><P
2008></P
2009></DIV
2010></DIV
2011><HR><DIV
2012CLASS="REFSECT2"
2013><A
2014NAME="AEN904"
2015></A
2016><H3
2017><A
2018NAME="RTP-UPDATE"
2019></A
2020>rtp_update ()</H3
2021><TABLE
2022BORDER="0"
2023BGCOLOR="#D6E8FF"
2024WIDTH="100%"
2025CELLPADDING="6"
2026><TR
2027><TD
2028><PRE
2029CLASS="PROGRAMLISTING"
2030>void        rtp_update                      (struct <GTKDOCLINK
2031HREF="RTP"
2032>rtp</GTKDOCLINK
2033> *session);</PRE
2034></TD
2035></TR
2036></TABLE
2037><P
2038></P
2039><DIV
2040CLASS="INFORMALTABLE"
2041><A
2042NAME="AEN910"
2043></A
2044><P
2045></P
2046><TABLE
2047BORDER="0"
2048WIDTH="100%"
2049BGCOLOR="#FFD0D0"
2050CELLSPACING="0"
2051CELLPADDING="4"
2052CLASS="CALSTABLE"
2053><TBODY
2054><TR
2055><TD
2056WIDTH="20%"
2057ALIGN="RIGHT"
2058VALIGN="TOP"
2059><TT
2060CLASS="PARAMETER"
2061><I
2062>session</I
2063></TT
2064>&nbsp;:</TD
2065><TD
2066WIDTH="80%"
2067ALIGN="LEFT"
2068VALIGN="TOP"
2069>&nbsp;</TD
2070></TR
2071></TBODY
2072></TABLE
2073><P
2074></P
2075></DIV
2076></DIV
2077><HR><DIV
2078CLASS="REFSECT2"
2079><A
2080NAME="AEN919"
2081></A
2082><H3
2083><A
2084NAME="RTP-MY-SSRC"
2085></A
2086>rtp_my_ssrc ()</H3
2087><TABLE
2088BORDER="0"
2089BGCOLOR="#D6E8FF"
2090WIDTH="100%"
2091CELLPADDING="6"
2092><TR
2093><TD
2094><PRE
2095CLASS="PROGRAMLISTING"
2096><GTKDOCLINK
2097HREF="UINT32-T"
2098>uint32_t</GTKDOCLINK
2099>    rtp_my_ssrc                     (struct <GTKDOCLINK
2100HREF="RTP"
2101>rtp</GTKDOCLINK
2102> *session);</PRE
2103></TD
2104></TR
2105></TABLE
2106><P
2107></P
2108><DIV
2109CLASS="INFORMALTABLE"
2110><A
2111NAME="AEN926"
2112></A
2113><P
2114></P
2115><TABLE
2116BORDER="0"
2117WIDTH="100%"
2118BGCOLOR="#FFD0D0"
2119CELLSPACING="0"
2120CELLPADDING="4"
2121CLASS="CALSTABLE"
2122><TBODY
2123><TR
2124><TD
2125WIDTH="20%"
2126ALIGN="RIGHT"
2127VALIGN="TOP"
2128><TT
2129CLASS="PARAMETER"
2130><I
2131>session</I
2132></TT
2133>&nbsp;:</TD
2134><TD
2135WIDTH="80%"
2136ALIGN="LEFT"
2137VALIGN="TOP"
2138>&nbsp;</TD
2139></TR
2140><TR
2141><TD
2142WIDTH="20%"
2143ALIGN="RIGHT"
2144VALIGN="TOP"
2145><I
2146CLASS="EMPHASIS"
2147>Returns</I
2148> :</TD
2149><TD
2150WIDTH="80%"
2151ALIGN="LEFT"
2152VALIGN="TOP"
2153>&nbsp;</TD
2154></TR
2155></TBODY
2156></TABLE
2157><P
2158></P
2159></DIV
2160></DIV
2161><HR><DIV
2162CLASS="REFSECT2"
2163><A
2164NAME="AEN939"
2165></A
2166><H3
2167><A
2168NAME="RTP-ADD-CSRC"
2169></A
2170>rtp_add_csrc ()</H3
2171><TABLE
2172BORDER="0"
2173BGCOLOR="#D6E8FF"
2174WIDTH="100%"
2175CELLPADDING="6"
2176><TR
2177><TD
2178><PRE
2179CLASS="PROGRAMLISTING"
2180>int         rtp_add_csrc                    (struct <GTKDOCLINK
2181HREF="RTP"
2182>rtp</GTKDOCLINK
2183> *session,
2184                                             <GTKDOCLINK
2185HREF="UINT32-T"
2186>uint32_t</GTKDOCLINK
2187> csrc);</PRE
2188></TD
2189></TR
2190></TABLE
2191><P
2192></P
2193><DIV
2194CLASS="INFORMALTABLE"
2195><A
2196NAME="AEN946"
2197></A
2198><P
2199></P
2200><TABLE
2201BORDER="0"
2202WIDTH="100%"
2203BGCOLOR="#FFD0D0"
2204CELLSPACING="0"
2205CELLPADDING="4"
2206CLASS="CALSTABLE"
2207><TBODY
2208><TR
2209><TD
2210WIDTH="20%"
2211ALIGN="RIGHT"
2212VALIGN="TOP"
2213><TT
2214CLASS="PARAMETER"
2215><I
2216>session</I
2217></TT
2218>&nbsp;:</TD
2219><TD
2220WIDTH="80%"
2221ALIGN="LEFT"
2222VALIGN="TOP"
2223>&nbsp;</TD
2224></TR
2225><TR
2226><TD
2227WIDTH="20%"
2228ALIGN="RIGHT"
2229VALIGN="TOP"
2230><TT
2231CLASS="PARAMETER"
2232><I
2233>csrc</I
2234></TT
2235>&nbsp;:</TD
2236><TD
2237WIDTH="80%"
2238ALIGN="LEFT"
2239VALIGN="TOP"
2240>&nbsp;</TD
2241></TR
2242><TR
2243><TD
2244WIDTH="20%"
2245ALIGN="RIGHT"
2246VALIGN="TOP"
2247><I
2248CLASS="EMPHASIS"
2249>Returns</I
2250> :</TD
2251><TD
2252WIDTH="80%"
2253ALIGN="LEFT"
2254VALIGN="TOP"
2255>&nbsp;</TD
2256></TR
2257></TBODY
2258></TABLE
2259><P
2260></P
2261></DIV
2262></DIV
2263><HR><DIV
2264CLASS="REFSECT2"
2265><A
2266NAME="AEN963"
2267></A
2268><H3
2269><A
2270NAME="RTP-DEL-CSRC"
2271></A
2272>rtp_del_csrc ()</H3
2273><TABLE
2274BORDER="0"
2275BGCOLOR="#D6E8FF"
2276WIDTH="100%"
2277CELLPADDING="6"
2278><TR
2279><TD
2280><PRE
2281CLASS="PROGRAMLISTING"
2282>int         rtp_del_csrc                    (struct <GTKDOCLINK
2283HREF="RTP"
2284>rtp</GTKDOCLINK
2285> *session,
2286                                             <GTKDOCLINK
2287HREF="UINT32-T"
2288>uint32_t</GTKDOCLINK
2289> csrc);</PRE
2290></TD
2291></TR
2292></TABLE
2293><P
2294></P
2295><DIV
2296CLASS="INFORMALTABLE"
2297><A
2298NAME="AEN970"
2299></A
2300><P
2301></P
2302><TABLE
2303BORDER="0"
2304WIDTH="100%"
2305BGCOLOR="#FFD0D0"
2306CELLSPACING="0"
2307CELLPADDING="4"
2308CLASS="CALSTABLE"
2309><TBODY
2310><TR
2311><TD
2312WIDTH="20%"
2313ALIGN="RIGHT"
2314VALIGN="TOP"
2315><TT
2316CLASS="PARAMETER"
2317><I
2318>session</I
2319></TT
2320>&nbsp;:</TD
2321><TD
2322WIDTH="80%"
2323ALIGN="LEFT"
2324VALIGN="TOP"
2325>&nbsp;</TD
2326></TR
2327><TR
2328><TD
2329WIDTH="20%"
2330ALIGN="RIGHT"
2331VALIGN="TOP"
2332><TT
2333CLASS="PARAMETER"
2334><I
2335>csrc</I
2336></TT
2337>&nbsp;:</TD
2338><TD
2339WIDTH="80%"
2340ALIGN="LEFT"
2341VALIGN="TOP"
2342>&nbsp;</TD
2343></TR
2344><TR
2345><TD
2346WIDTH="20%"
2347ALIGN="RIGHT"
2348VALIGN="TOP"
2349><I
2350CLASS="EMPHASIS"
2351>Returns</I
2352> :</TD
2353><TD
2354WIDTH="80%"
2355ALIGN="LEFT"
2356VALIGN="TOP"
2357>&nbsp;</TD
2358></TR
2359></TBODY
2360></TABLE
2361><P
2362></P
2363></DIV
2364></DIV
2365><HR><DIV
2366CLASS="REFSECT2"
2367><A
2368NAME="AEN987"
2369></A
2370><H3
2371><A
2372NAME="RTP-VALID-SSRC"
2373></A
2374>rtp_valid_ssrc ()</H3
2375><TABLE
2376BORDER="0"
2377BGCOLOR="#D6E8FF"
2378WIDTH="100%"
2379CELLPADDING="6"
2380><TR
2381><TD
2382><PRE
2383CLASS="PROGRAMLISTING"
2384>int         rtp_valid_ssrc                  (struct <GTKDOCLINK
2385HREF="RTP"
2386>rtp</GTKDOCLINK
2387> *session,
2388                                             <GTKDOCLINK
2389HREF="UINT32-T"
2390>uint32_t</GTKDOCLINK
2391> ssrc);</PRE
2392></TD
2393></TR
2394></TABLE
2395><P
2396></P
2397><DIV
2398CLASS="INFORMALTABLE"
2399><A
2400NAME="AEN994"
2401></A
2402><P
2403></P
2404><TABLE
2405BORDER="0"
2406WIDTH="100%"
2407BGCOLOR="#FFD0D0"
2408CELLSPACING="0"
2409CELLPADDING="4"
2410CLASS="CALSTABLE"
2411><TBODY
2412><TR
2413><TD
2414WIDTH="20%"
2415ALIGN="RIGHT"
2416VALIGN="TOP"
2417><TT
2418CLASS="PARAMETER"
2419><I
2420>session</I
2421></TT
2422>&nbsp;:</TD
2423><TD
2424WIDTH="80%"
2425ALIGN="LEFT"
2426VALIGN="TOP"
2427>&nbsp;</TD
2428></TR
2429><TR
2430><TD
2431WIDTH="20%"
2432ALIGN="RIGHT"
2433VALIGN="TOP"
2434><TT
2435CLASS="PARAMETER"
2436><I
2437>ssrc</I
2438></TT
2439>&nbsp;:</TD
2440><TD
2441WIDTH="80%"
2442ALIGN="LEFT"
2443VALIGN="TOP"
2444>&nbsp;</TD
2445></TR
2446><TR
2447><TD
2448WIDTH="20%"
2449ALIGN="RIGHT"
2450VALIGN="TOP"
2451><I
2452CLASS="EMPHASIS"
2453>Returns</I
2454> :</TD
2455><TD
2456WIDTH="80%"
2457ALIGN="LEFT"
2458VALIGN="TOP"
2459>&nbsp;</TD
2460></TR
2461></TBODY
2462></TABLE
2463><P
2464></P
2465></DIV
2466></DIV
2467><HR><DIV
2468CLASS="REFSECT2"
2469><A
2470NAME="AEN1011"
2471></A
2472><H3
2473><A
2474NAME="RTP-SET-SDES"
2475></A
2476>rtp_set_sdes ()</H3
2477><TABLE
2478BORDER="0"
2479BGCOLOR="#D6E8FF"
2480WIDTH="100%"
2481CELLPADDING="6"
2482><TR
2483><TD
2484><PRE
2485CLASS="PROGRAMLISTING"
2486>int         rtp_set_sdes                    (struct <GTKDOCLINK
2487HREF="RTP"
2488>rtp</GTKDOCLINK
2489> *session,
2490                                             <GTKDOCLINK
2491HREF="UINT32-T"
2492>uint32_t</GTKDOCLINK
2493> ssrc,
2494                                             <A
2495HREF="uclmmbase-rtp.html#RTCP-SDES-TYPE"
2496>rtcp_sdes_type</A
2497> type,
2498                                             char *value,
2499                                             int length);</PRE
2500></TD
2501></TR
2502></TABLE
2503><P
2504></P
2505><DIV
2506CLASS="INFORMALTABLE"
2507><A
2508NAME="AEN1019"
2509></A
2510><P
2511></P
2512><TABLE
2513BORDER="0"
2514WIDTH="100%"
2515BGCOLOR="#FFD0D0"
2516CELLSPACING="0"
2517CELLPADDING="4"
2518CLASS="CALSTABLE"
2519><TBODY
2520><TR
2521><TD
2522WIDTH="20%"
2523ALIGN="RIGHT"
2524VALIGN="TOP"
2525><TT
2526CLASS="PARAMETER"
2527><I
2528>session</I
2529></TT
2530>&nbsp;:</TD
2531><TD
2532WIDTH="80%"
2533ALIGN="LEFT"
2534VALIGN="TOP"
2535>&nbsp;</TD
2536></TR
2537><TR
2538><TD
2539WIDTH="20%"
2540ALIGN="RIGHT"
2541VALIGN="TOP"
2542><TT
2543CLASS="PARAMETER"
2544><I
2545>ssrc</I
2546></TT
2547>&nbsp;:</TD
2548><TD
2549WIDTH="80%"
2550ALIGN="LEFT"
2551VALIGN="TOP"
2552>&nbsp;</TD
2553></TR
2554><TR
2555><TD
2556WIDTH="20%"
2557ALIGN="RIGHT"
2558VALIGN="TOP"
2559><TT
2560CLASS="PARAMETER"
2561><I
2562>type</I
2563></TT
2564>&nbsp;:</TD
2565><TD
2566WIDTH="80%"
2567ALIGN="LEFT"
2568VALIGN="TOP"
2569>&nbsp;</TD
2570></TR
2571><TR
2572><TD
2573WIDTH="20%"
2574ALIGN="RIGHT"
2575VALIGN="TOP"
2576><TT
2577CLASS="PARAMETER"
2578><I
2579>value</I
2580></TT
2581>&nbsp;:</TD
2582><TD
2583WIDTH="80%"
2584ALIGN="LEFT"
2585VALIGN="TOP"
2586>&nbsp;</TD
2587></TR
2588><TR
2589><TD
2590WIDTH="20%"
2591ALIGN="RIGHT"
2592VALIGN="TOP"
2593><TT
2594CLASS="PARAMETER"
2595><I
2596>length</I
2597></TT
2598>&nbsp;:</TD
2599><TD
2600WIDTH="80%"
2601ALIGN="LEFT"
2602VALIGN="TOP"
2603>&nbsp;</TD
2604></TR
2605><TR
2606><TD
2607WIDTH="20%"
2608ALIGN="RIGHT"
2609VALIGN="TOP"
2610><I
2611CLASS="EMPHASIS"
2612>Returns</I
2613> :</TD
2614><TD
2615WIDTH="80%"
2616ALIGN="LEFT"
2617VALIGN="TOP"
2618>&nbsp;</TD
2619></TR
2620></TBODY
2621></TABLE
2622><P
2623></P
2624></DIV
2625></DIV
2626><HR><DIV
2627CLASS="REFSECT2"
2628><A
2629NAME="AEN1048"
2630></A
2631><H3
2632><A
2633NAME="RTP-GET-SDES"
2634></A
2635>rtp_get_sdes ()</H3
2636><TABLE
2637BORDER="0"
2638BGCOLOR="#D6E8FF"
2639WIDTH="100%"
2640CELLPADDING="6"
2641><TR
2642><TD
2643><PRE
2644CLASS="PROGRAMLISTING"
2645>const char* rtp_get_sdes                    (struct <GTKDOCLINK
2646HREF="RTP"
2647>rtp</GTKDOCLINK
2648> *session,
2649                                             <GTKDOCLINK
2650HREF="UINT32-T"
2651>uint32_t</GTKDOCLINK
2652> ssrc,
2653                                             <A
2654HREF="uclmmbase-rtp.html#RTCP-SDES-TYPE"
2655>rtcp_sdes_type</A
2656> type);</PRE
2657></TD
2658></TR
2659></TABLE
2660><P
2661></P
2662><DIV
2663CLASS="INFORMALTABLE"
2664><A
2665NAME="AEN1056"
2666></A
2667><P
2668></P
2669><TABLE
2670BORDER="0"
2671WIDTH="100%"
2672BGCOLOR="#FFD0D0"
2673CELLSPACING="0"
2674CELLPADDING="4"
2675CLASS="CALSTABLE"
2676><TBODY
2677><TR
2678><TD
2679WIDTH="20%"
2680ALIGN="RIGHT"
2681VALIGN="TOP"
2682><TT
2683CLASS="PARAMETER"
2684><I
2685>session</I
2686></TT
2687>&nbsp;:</TD
2688><TD
2689WIDTH="80%"
2690ALIGN="LEFT"
2691VALIGN="TOP"
2692>&nbsp;</TD
2693></TR
2694><TR
2695><TD
2696WIDTH="20%"
2697ALIGN="RIGHT"
2698VALIGN="TOP"
2699><TT
2700CLASS="PARAMETER"
2701><I
2702>ssrc</I
2703></TT
2704>&nbsp;:</TD
2705><TD
2706WIDTH="80%"
2707ALIGN="LEFT"
2708VALIGN="TOP"
2709>&nbsp;</TD
2710></TR
2711><TR
2712><TD
2713WIDTH="20%"
2714ALIGN="RIGHT"
2715VALIGN="TOP"
2716><TT
2717CLASS="PARAMETER"
2718><I
2719>type</I
2720></TT
2721>&nbsp;:</TD
2722><TD
2723WIDTH="80%"
2724ALIGN="LEFT"
2725VALIGN="TOP"
2726>&nbsp;</TD
2727></TR
2728><TR
2729><TD
2730WIDTH="20%"
2731ALIGN="RIGHT"
2732VALIGN="TOP"
2733><I
2734CLASS="EMPHASIS"
2735>Returns</I
2736> :</TD
2737><TD
2738WIDTH="80%"
2739ALIGN="LEFT"
2740VALIGN="TOP"
2741>&nbsp;</TD
2742></TR
2743></TBODY
2744></TABLE
2745><P
2746></P
2747></DIV
2748></DIV
2749><HR><DIV
2750CLASS="REFSECT2"
2751><A
2752NAME="AEN1077"
2753></A
2754><H3
2755><A
2756NAME="RTP-GET-SR"
2757></A
2758>rtp_get_sr ()</H3
2759><TABLE
2760BORDER="0"
2761BGCOLOR="#D6E8FF"
2762WIDTH="100%"
2763CELLPADDING="6"
2764><TR
2765><TD
2766><PRE
2767CLASS="PROGRAMLISTING"
2768>const <A
2769HREF="uclmmbase-rtp.html#RTCP-SR"
2770>rtcp_sr</A
2771>* rtp_get_sr                   (struct <GTKDOCLINK
2772HREF="RTP"
2773>rtp</GTKDOCLINK
2774> *session,
2775                                             <GTKDOCLINK
2776HREF="UINT32-T"
2777>uint32_t</GTKDOCLINK
2778> ssrc);</PRE
2779></TD
2780></TR
2781></TABLE
2782><P
2783></P
2784><DIV
2785CLASS="INFORMALTABLE"
2786><A
2787NAME="AEN1085"
2788></A
2789><P
2790></P
2791><TABLE
2792BORDER="0"
2793WIDTH="100%"
2794BGCOLOR="#FFD0D0"
2795CELLSPACING="0"
2796CELLPADDING="4"
2797CLASS="CALSTABLE"
2798><TBODY
2799><TR
2800><TD
2801WIDTH="20%"
2802ALIGN="RIGHT"
2803VALIGN="TOP"
2804><TT
2805CLASS="PARAMETER"
2806><I
2807>session</I
2808></TT
2809>&nbsp;:</TD
2810><TD
2811WIDTH="80%"
2812ALIGN="LEFT"
2813VALIGN="TOP"
2814>&nbsp;</TD
2815></TR
2816><TR
2817><TD
2818WIDTH="20%"
2819ALIGN="RIGHT"
2820VALIGN="TOP"
2821><TT
2822CLASS="PARAMETER"
2823><I
2824>ssrc</I
2825></TT
2826>&nbsp;:</TD
2827><TD
2828WIDTH="80%"
2829ALIGN="LEFT"
2830VALIGN="TOP"
2831>&nbsp;</TD
2832></TR
2833><TR
2834><TD
2835WIDTH="20%"
2836ALIGN="RIGHT"
2837VALIGN="TOP"
2838><I
2839CLASS="EMPHASIS"
2840>Returns</I
2841> :</TD
2842><TD
2843WIDTH="80%"
2844ALIGN="LEFT"
2845VALIGN="TOP"
2846>&nbsp;</TD
2847></TR
2848></TBODY
2849></TABLE
2850><P
2851></P
2852></DIV
2853></DIV
2854><HR><DIV
2855CLASS="REFSECT2"
2856><A
2857NAME="AEN1102"
2858></A
2859><H3
2860><A
2861NAME="RTP-GET-RR"
2862></A
2863>rtp_get_rr ()</H3
2864><TABLE
2865BORDER="0"
2866BGCOLOR="#D6E8FF"
2867WIDTH="100%"
2868CELLPADDING="6"
2869><TR
2870><TD
2871><PRE
2872CLASS="PROGRAMLISTING"
2873>const <A
2874HREF="uclmmbase-rtp.html#RTCP-RR"
2875>rtcp_rr</A
2876>* rtp_get_rr                   (struct <GTKDOCLINK
2877HREF="RTP"
2878>rtp</GTKDOCLINK
2879> *session,
2880                                             <GTKDOCLINK
2881HREF="UINT32-T"
2882>uint32_t</GTKDOCLINK
2883> reporter,
2884                                             <GTKDOCLINK
2885HREF="UINT32-T"
2886>uint32_t</GTKDOCLINK
2887> reportee);</PRE
2888></TD
2889></TR
2890></TABLE
2891><P
2892></P
2893><DIV
2894CLASS="INFORMALTABLE"
2895><A
2896NAME="AEN1111"
2897></A
2898><P
2899></P
2900><TABLE
2901BORDER="0"
2902WIDTH="100%"
2903BGCOLOR="#FFD0D0"
2904CELLSPACING="0"
2905CELLPADDING="4"
2906CLASS="CALSTABLE"
2907><TBODY
2908><TR
2909><TD
2910WIDTH="20%"
2911ALIGN="RIGHT"
2912VALIGN="TOP"
2913><TT
2914CLASS="PARAMETER"
2915><I
2916>session</I
2917></TT
2918>&nbsp;:</TD
2919><TD
2920WIDTH="80%"
2921ALIGN="LEFT"
2922VALIGN="TOP"
2923>&nbsp;</TD
2924></TR
2925><TR
2926><TD
2927WIDTH="20%"
2928ALIGN="RIGHT"
2929VALIGN="TOP"
2930><TT
2931CLASS="PARAMETER"
2932><I
2933>reporter</I
2934></TT
2935>&nbsp;:</TD
2936><TD
2937WIDTH="80%"
2938ALIGN="LEFT"
2939VALIGN="TOP"
2940>&nbsp;</TD
2941></TR
2942><TR
2943><TD
2944WIDTH="20%"
2945ALIGN="RIGHT"
2946VALIGN="TOP"
2947><TT
2948CLASS="PARAMETER"
2949><I
2950>reportee</I
2951></TT
2952>&nbsp;:</TD
2953><TD
2954WIDTH="80%"
2955ALIGN="LEFT"
2956VALIGN="TOP"
2957>&nbsp;</TD
2958></TR
2959><TR
2960><TD
2961WIDTH="20%"
2962ALIGN="RIGHT"
2963VALIGN="TOP"
2964><I
2965CLASS="EMPHASIS"
2966>Returns</I
2967> :</TD
2968><TD
2969WIDTH="80%"
2970ALIGN="LEFT"
2971VALIGN="TOP"
2972>&nbsp;</TD
2973></TR
2974></TBODY
2975></TABLE
2976><P
2977></P
2978></DIV
2979></DIV
2980><HR><DIV
2981CLASS="REFSECT2"
2982><A
2983NAME="AEN1132"
2984></A
2985><H3
2986><A
2987NAME="RTP-SET-ENCRYPTION-KEY"
2988></A
2989>rtp_set_encryption_key ()</H3
2990><TABLE
2991BORDER="0"
2992BGCOLOR="#D6E8FF"
2993WIDTH="100%"
2994CELLPADDING="6"
2995><TR
2996><TD
2997><PRE
2998CLASS="PROGRAMLISTING"
2999>int         rtp_set_encryption_key          (struct <GTKDOCLINK
3000HREF="RTP"
3001>rtp</GTKDOCLINK
3002> *session,
3003                                             const char *passphrase);</PRE
3004></TD
3005></TR
3006></TABLE
3007><P
3008></P
3009><DIV
3010CLASS="INFORMALTABLE"
3011><A
3012NAME="AEN1138"
3013></A
3014><P
3015></P
3016><TABLE
3017BORDER="0"
3018WIDTH="100%"
3019BGCOLOR="#FFD0D0"
3020CELLSPACING="0"
3021CELLPADDING="4"
3022CLASS="CALSTABLE"
3023><TBODY
3024><TR
3025><TD
3026WIDTH="20%"
3027ALIGN="RIGHT"
3028VALIGN="TOP"
3029><TT
3030CLASS="PARAMETER"
3031><I
3032>session</I
3033></TT
3034>&nbsp;:</TD
3035><TD
3036WIDTH="80%"
3037ALIGN="LEFT"
3038VALIGN="TOP"
3039>&nbsp;</TD
3040></TR
3041><TR
3042><TD
3043WIDTH="20%"
3044ALIGN="RIGHT"
3045VALIGN="TOP"
3046><TT
3047CLASS="PARAMETER"
3048><I
3049>passphrase</I
3050></TT
3051>&nbsp;:</TD
3052><TD
3053WIDTH="80%"
3054ALIGN="LEFT"
3055VALIGN="TOP"
3056>&nbsp;</TD
3057></TR
3058><TR
3059><TD
3060WIDTH="20%"
3061ALIGN="RIGHT"
3062VALIGN="TOP"
3063><I
3064CLASS="EMPHASIS"
3065>Returns</I
3066> :</TD
3067><TD
3068WIDTH="80%"
3069ALIGN="LEFT"
3070VALIGN="TOP"
3071>&nbsp;</TD
3072></TR
3073></TBODY
3074></TABLE
3075><P
3076></P
3077></DIV
3078></DIV
3079><HR><DIV
3080CLASS="REFSECT2"
3081><A
3082NAME="AEN1155"
3083></A
3084><H3
3085><A
3086NAME="RTP-SET-MY-SSRC"
3087></A
3088>rtp_set_my_ssrc ()</H3
3089><TABLE
3090BORDER="0"
3091BGCOLOR="#D6E8FF"
3092WIDTH="100%"
3093CELLPADDING="6"
3094><TR
3095><TD
3096><PRE
3097CLASS="PROGRAMLISTING"
3098>int         rtp_set_my_ssrc                 (struct <GTKDOCLINK
3099HREF="RTP"
3100>rtp</GTKDOCLINK
3101> *session,
3102                                             <GTKDOCLINK
3103HREF="UINT32-T"
3104>uint32_t</GTKDOCLINK
3105> ssrc);</PRE
3106></TD
3107></TR
3108></TABLE
3109><P
3110>This function coerces the local SSRC identifer to be ssrc.  For
3111this function to succeed it must be called immediately after
3112rtp_init or rtp_init_if.  The intended purpose of this
3113function is to co-ordinate SSRC's between layered sessions, it
3114should not be used otherwise.</P
3115><P
3116></P
3117><DIV
3118CLASS="INFORMALTABLE"
3119><A
3120NAME="AEN1163"
3121></A
3122><P
3123></P
3124><TABLE
3125BORDER="0"
3126WIDTH="100%"
3127BGCOLOR="#FFD0D0"
3128CELLSPACING="0"
3129CELLPADDING="4"
3130CLASS="CALSTABLE"
3131><TBODY
3132><TR
3133><TD
3134WIDTH="20%"
3135ALIGN="RIGHT"
3136VALIGN="TOP"
3137><TT
3138CLASS="PARAMETER"
3139><I
3140>session</I
3141></TT
3142>&nbsp;:</TD
3143><TD
3144WIDTH="80%"
3145ALIGN="LEFT"
3146VALIGN="TOP"
3147> the RTP session </TD
3148></TR
3149><TR
3150><TD
3151WIDTH="20%"
3152ALIGN="RIGHT"
3153VALIGN="TOP"
3154><TT
3155CLASS="PARAMETER"
3156><I
3157>ssrc</I
3158></TT
3159>&nbsp;:</TD
3160><TD
3161WIDTH="80%"
3162ALIGN="LEFT"
3163VALIGN="TOP"
3164> the SSRC to be used by the RTP session</TD
3165></TR
3166><TR
3167><TD
3168WIDTH="20%"
3169ALIGN="RIGHT"
3170VALIGN="TOP"
3171><I
3172CLASS="EMPHASIS"
3173>Returns</I
3174> :</TD
3175><TD
3176WIDTH="80%"
3177ALIGN="LEFT"
3178VALIGN="TOP"
3179> TRUE on success, FALSE otherwise.  </TD
3180></TR
3181></TBODY
3182></TABLE
3183><P
3184></P
3185></DIV
3186></DIV
3187><HR><DIV
3188CLASS="REFSECT2"
3189><A
3190NAME="AEN1180"
3191></A
3192><H3
3193><A
3194NAME="RTP-GET-ADDR"
3195></A
3196>rtp_get_addr ()</H3
3197><TABLE
3198BORDER="0"
3199BGCOLOR="#D6E8FF"
3200WIDTH="100%"
3201CELLPADDING="6"
3202><TR
3203><TD
3204><PRE
3205CLASS="PROGRAMLISTING"
3206>char*       rtp_get_addr                    (struct <GTKDOCLINK
3207HREF="RTP"
3208>rtp</GTKDOCLINK
3209> *session);</PRE
3210></TD
3211></TR
3212></TABLE
3213><P
3214></P
3215><DIV
3216CLASS="INFORMALTABLE"
3217><A
3218NAME="AEN1186"
3219></A
3220><P
3221></P
3222><TABLE
3223BORDER="0"
3224WIDTH="100%"
3225BGCOLOR="#FFD0D0"
3226CELLSPACING="0"
3227CELLPADDING="4"
3228CLASS="CALSTABLE"
3229><TBODY
3230><TR
3231><TD
3232WIDTH="20%"
3233ALIGN="RIGHT"
3234VALIGN="TOP"
3235><TT
3236CLASS="PARAMETER"
3237><I
3238>session</I
3239></TT
3240>&nbsp;:</TD
3241><TD
3242WIDTH="80%"
3243ALIGN="LEFT"
3244VALIGN="TOP"
3245>&nbsp;</TD
3246></TR
3247><TR
3248><TD
3249WIDTH="20%"
3250ALIGN="RIGHT"
3251VALIGN="TOP"
3252><I
3253CLASS="EMPHASIS"
3254>Returns</I
3255> :</TD
3256><TD
3257WIDTH="80%"
3258ALIGN="LEFT"
3259VALIGN="TOP"
3260>&nbsp;</TD
3261></TR
3262></TBODY
3263></TABLE
3264><P
3265></P
3266></DIV
3267></DIV
3268><HR><DIV
3269CLASS="REFSECT2"
3270><A
3271NAME="AEN1199"
3272></A
3273><H3
3274><A
3275NAME="RTP-GET-RX-PORT"
3276></A
3277>rtp_get_rx_port ()</H3
3278><TABLE
3279BORDER="0"
3280BGCOLOR="#D6E8FF"
3281WIDTH="100%"
3282CELLPADDING="6"
3283><TR
3284><TD
3285><PRE
3286CLASS="PROGRAMLISTING"
3287><GTKDOCLINK
3288HREF="UINT16-T"
3289>uint16_t</GTKDOCLINK
3290>    rtp_get_rx_port                 (struct <GTKDOCLINK
3291HREF="RTP"
3292>rtp</GTKDOCLINK
3293> *session);</PRE
3294></TD
3295></TR
3296></TABLE
3297><P
3298></P
3299><DIV
3300CLASS="INFORMALTABLE"
3301><A
3302NAME="AEN1206"
3303></A
3304><P
3305></P
3306><TABLE
3307BORDER="0"
3308WIDTH="100%"
3309BGCOLOR="#FFD0D0"
3310CELLSPACING="0"
3311CELLPADDING="4"
3312CLASS="CALSTABLE"
3313><TBODY
3314><TR
3315><TD
3316WIDTH="20%"
3317ALIGN="RIGHT"
3318VALIGN="TOP"
3319><TT
3320CLASS="PARAMETER"
3321><I
3322>session</I
3323></TT
3324>&nbsp;:</TD
3325><TD
3326WIDTH="80%"
3327ALIGN="LEFT"
3328VALIGN="TOP"
3329>&nbsp;</TD
3330></TR
3331><TR
3332><TD
3333WIDTH="20%"
3334ALIGN="RIGHT"
3335VALIGN="TOP"
3336><I
3337CLASS="EMPHASIS"
3338>Returns</I
3339> :</TD
3340><TD
3341WIDTH="80%"
3342ALIGN="LEFT"
3343VALIGN="TOP"
3344>&nbsp;</TD
3345></TR
3346></TBODY
3347></TABLE
3348><P
3349></P
3350></DIV
3351></DIV
3352><HR><DIV
3353CLASS="REFSECT2"
3354><A
3355NAME="AEN1219"
3356></A
3357><H3
3358><A
3359NAME="RTP-GET-TX-PORT"
3360></A
3361>rtp_get_tx_port ()</H3
3362><TABLE
3363BORDER="0"
3364BGCOLOR="#D6E8FF"
3365WIDTH="100%"
3366CELLPADDING="6"
3367><TR
3368><TD
3369><PRE
3370CLASS="PROGRAMLISTING"
3371><GTKDOCLINK
3372HREF="UINT16-T"
3373>uint16_t</GTKDOCLINK
3374>    rtp_get_tx_port                 (struct <GTKDOCLINK
3375HREF="RTP"
3376>rtp</GTKDOCLINK
3377> *session);</PRE
3378></TD
3379></TR
3380></TABLE
3381><P
3382></P
3383><DIV
3384CLASS="INFORMALTABLE"
3385><A
3386NAME="AEN1226"
3387></A
3388><P
3389></P
3390><TABLE
3391BORDER="0"
3392WIDTH="100%"
3393BGCOLOR="#FFD0D0"
3394CELLSPACING="0"
3395CELLPADDING="4"
3396CLASS="CALSTABLE"
3397><TBODY
3398><TR
3399><TD
3400WIDTH="20%"
3401ALIGN="RIGHT"
3402VALIGN="TOP"
3403><TT
3404CLASS="PARAMETER"
3405><I
3406>session</I
3407></TT
3408>&nbsp;:</TD
3409><TD
3410WIDTH="80%"
3411ALIGN="LEFT"
3412VALIGN="TOP"
3413>&nbsp;</TD
3414></TR
3415><TR
3416><TD
3417WIDTH="20%"
3418ALIGN="RIGHT"
3419VALIGN="TOP"
3420><I
3421CLASS="EMPHASIS"
3422>Returns</I
3423> :</TD
3424><TD
3425WIDTH="80%"
3426ALIGN="LEFT"
3427VALIGN="TOP"
3428>&nbsp;</TD
3429></TR
3430></TBODY
3431></TABLE
3432><P
3433></P
3434></DIV
3435></DIV
3436><HR><DIV
3437CLASS="REFSECT2"
3438><A
3439NAME="AEN1239"
3440></A
3441><H3
3442><A
3443NAME="RTP-GET-TTL"
3444></A
3445>rtp_get_ttl ()</H3
3446><TABLE
3447BORDER="0"
3448BGCOLOR="#D6E8FF"
3449WIDTH="100%"
3450CELLPADDING="6"
3451><TR
3452><TD
3453><PRE
3454CLASS="PROGRAMLISTING"
3455>int         rtp_get_ttl                     (struct <GTKDOCLINK
3456HREF="RTP"
3457>rtp</GTKDOCLINK
3458> *session);</PRE
3459></TD
3460></TR
3461></TABLE
3462><P
3463></P
3464><DIV
3465CLASS="INFORMALTABLE"
3466><A
3467NAME="AEN1245"
3468></A
3469><P
3470></P
3471><TABLE
3472BORDER="0"
3473WIDTH="100%"
3474BGCOLOR="#FFD0D0"
3475CELLSPACING="0"
3476CELLPADDING="4"
3477CLASS="CALSTABLE"
3478><TBODY
3479><TR
3480><TD
3481WIDTH="20%"
3482ALIGN="RIGHT"
3483VALIGN="TOP"
3484><TT
3485CLASS="PARAMETER"
3486><I
3487>session</I
3488></TT
3489>&nbsp;:</TD
3490><TD
3491WIDTH="80%"
3492ALIGN="LEFT"
3493VALIGN="TOP"
3494>&nbsp;</TD
3495></TR
3496><TR
3497><TD
3498WIDTH="20%"
3499ALIGN="RIGHT"
3500VALIGN="TOP"
3501><I
3502CLASS="EMPHASIS"
3503>Returns</I
3504> :</TD
3505><TD
3506WIDTH="80%"
3507ALIGN="LEFT"
3508VALIGN="TOP"
3509>&nbsp;</TD
3510></TR
3511></TBODY
3512></TABLE
3513><P
3514></P
3515></DIV
3516></DIV
3517><HR><DIV
3518CLASS="REFSECT2"
3519><A
3520NAME="AEN1258"
3521></A
3522><H3
3523><A
3524NAME="RTP-GET-USERDATA"
3525></A
3526>rtp_get_userdata ()</H3
3527><TABLE
3528BORDER="0"
3529BGCOLOR="#D6E8FF"
3530WIDTH="100%"
3531CELLPADDING="6"
3532><TR
3533><TD
3534><PRE
3535CLASS="PROGRAMLISTING"
3536>void*       rtp_get_userdata                (struct <GTKDOCLINK
3537HREF="RTP"
3538>rtp</GTKDOCLINK
3539> *session);</PRE
3540></TD
3541></TR
3542></TABLE
3543><P
3544></P
3545><DIV
3546CLASS="INFORMALTABLE"
3547><A
3548NAME="AEN1264"
3549></A
3550><P
3551></P
3552><TABLE
3553BORDER="0"
3554WIDTH="100%"
3555BGCOLOR="#FFD0D0"
3556CELLSPACING="0"
3557CELLPADDING="4"
3558CLASS="CALSTABLE"
3559><TBODY
3560><TR
3561><TD
3562WIDTH="20%"
3563ALIGN="RIGHT"
3564VALIGN="TOP"
3565><TT
3566CLASS="PARAMETER"
3567><I
3568>session</I
3569></TT
3570>&nbsp;:</TD
3571><TD
3572WIDTH="80%"
3573ALIGN="LEFT"
3574VALIGN="TOP"
3575>&nbsp;</TD
3576></TR
3577></TBODY
3578></TABLE
3579><P
3580></P
3581></DIV
3582></DIV
3583></DIV
3584><DIV
3585CLASS="REFSECT1"
3586><A
3587NAME="AEN1273"
3588></A
3589><H2
3590>See Also</H2
3591><P
3592></P
3593><UL
3594><LI
3595><P
3596><A
3597HREF="http://www.ietf.org/rfc/rfc1889.txt"
3598TARGET="_top"
3599>RFC1889 - RTP: A Transport Protocol for Real-Time Applications </A
3600></P
3601></LI
3602><LI
3603><P
3604><A
3605HREF="http://www.ietf.org/rfc/rfc1890.txt"
3606TARGET="_top"
3607>RFC1890 - RTP Profile for Audio and Video Conferences with Minimal Control </A
3608></P
3609></LI
3610><LI
3611><P
3612><A
3613HREF="http://www.ietf.org/html.charters/avt-charter.html"
3614TARGET="_top"
3615> IETF Audio/Video Transport Group</A
3616></P
3617></LI
3618></UL
3619></DIV
3620><DIV
3621CLASS="NAVFOOTER"
3622><BR
3623CLEAR="all"><BR><TABLE
3624WIDTH="100%"
3625BORDER="0"
3626BGCOLOR="#000000"
3627CELLPADDING="1"
3628CELLSPACING="0"
3629><TR
3630><TD
3631WIDTH="25%"
3632BGCOLOR="#C00000"
3633ALIGN="left"
3634><A
3635HREF="uclmmbase-net-udp.html"
3636><FONT
3637COLOR="#FFFFFF"
3638SIZE="3"
3639><B
3640>&#60;&#60;&#60; Previous Page</B
3641></FONT
3642></A
3643></TD
3644><TD
3645WIDTH="25%"
3646BGCOLOR="#0000C0"
3647ALIGN="center"
3648><FONT
3649COLOR="#FFFFFF"
3650SIZE="3"
3651><B
3652><A
3653HREF="book1.html"
3654><FONT
3655COLOR="#FFFFFF"
3656SIZE="3"
3657><B
3658>Home</B
3659></FONT
3660></A
3661></B
3662></FONT
3663></TD
3664><TD
3665WIDTH="25%"
3666BGCOLOR="#00C000"
3667ALIGN="center"
3668><FONT
3669COLOR="#FFFFFF"
3670SIZE="3"
3671><B
3672><A
3673HREF="uclmmbase.html"
3674><FONT
3675COLOR="#FFFFFF"
3676SIZE="3"
3677><B
3678>Up</B
3679></FONT
3680></A
3681></B
3682></FONT
3683></TD
3684><TD
3685WIDTH="25%"
3686BGCOLOR="#C00000"
3687ALIGN="right"
3688>&nbsp;</TD
3689></TR
3690><TR
3691><TD
3692COLSPAN="2"
3693ALIGN="left"
3694><FONT
3695COLOR="#FFFFFF"
3696SIZE="3"
3697><B
3698>NETUDP</B
3699></FONT
3700></TD
3701><TD
3702COLSPAN="2"
3703ALIGN="right"
3704>&nbsp;</TD
3705></TR
3706></TABLE
3707></DIV
3708></BODY
3709></HTML
3710>
Note: See TracBrowser for help on using the browser.