Changeset 3960 for pjproject/branches/1.x/pjmedia/include/pjmedia/rtcp.h
- Timestamp:
- Feb 27, 2012 2:41:21 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/branches/1.x/pjmedia/include/pjmedia/rtcp.h
r3553 r3960 55 55 */ 56 56 57 57 58 #pragma pack(1) 58 59 … … 60 61 * RTCP sender report. 61 62 */ 62 struct pjmedia_rtcp_sr63 typedef struct pjmedia_rtcp_sr 63 64 { 64 65 pj_uint32_t ntp_sec; /**< NTP time, seconds part. */ … … 67 68 pj_uint32_t sender_pcount; /**< Sender packet cound. */ 68 69 pj_uint32_t sender_bcount; /**< Sender octet/bytes count. */ 69 }; 70 71 /** 72 * @see pjmedia_rtcp_sr 73 */ 74 typedef struct pjmedia_rtcp_sr pjmedia_rtcp_sr; 70 } pjmedia_rtcp_sr; 71 75 72 76 73 /** 77 74 * RTCP receiver report. 78 75 */ 79 struct pjmedia_rtcp_rr76 typedef struct pjmedia_rtcp_rr 80 77 { 81 78 pj_uint32_t ssrc; /**< SSRC identification. */ … … 95 92 pj_uint32_t lsr; /**< Last SR. */ 96 93 pj_uint32_t dlsr; /**< Delay since last SR. */ 97 }; 98 99 /** 100 * @see pjmedia_rtcp_rr 101 */ 102 typedef struct pjmedia_rtcp_rr pjmedia_rtcp_rr; 94 } pjmedia_rtcp_rr; 103 95 104 96 … … 106 98 * RTCP common header. 107 99 */ 108 struct pjmedia_rtcp_common100 typedef struct pjmedia_rtcp_common 109 101 { 110 102 #if defined(PJ_IS_BIG_ENDIAN) && PJ_IS_BIG_ENDIAN!=0 … … 121 113 unsigned length:16; /**< packet length */ 122 114 pj_uint32_t ssrc; /**< SSRC identification */ 123 }; 124 125 /** 126 * @see pjmedia_rtcp_common 127 */ 128 typedef struct pjmedia_rtcp_common pjmedia_rtcp_common; 115 } pjmedia_rtcp_common; 116 129 117 130 118 /** … … 154 142 155 143 /** 144 * RTCP SDES structure. 145 */ 146 typedef struct pjmedia_rtcp_sdes 147 { 148 pj_str_t cname; /**< RTCP SDES type CNAME. */ 149 pj_str_t name; /**< RTCP SDES type NAME. */ 150 pj_str_t email; /**< RTCP SDES type EMAIL. */ 151 pj_str_t phone; /**< RTCP SDES type PHONE. */ 152 pj_str_t loc; /**< RTCP SDES type LOC. */ 153 pj_str_t tool; /**< RTCP SDES type TOOL. */ 154 pj_str_t note; /**< RTCP SDES type NOTE. */ 155 } pjmedia_rtcp_sdes; 156 157 158 /** 156 159 * NTP time representation. 157 160 */ 158 struct pjmedia_rtcp_ntp_rec161 typedef struct pjmedia_rtcp_ntp_rec 159 162 { 160 163 pj_uint32_t hi; /**< High order 32-bit part. */ 161 164 pj_uint32_t lo; /**< Lo order 32-bit part. */ 162 }; 163 164 /** 165 * @see pjmedia_rtcp_ntp_rec 166 */ 167 typedef struct pjmedia_rtcp_ntp_rec pjmedia_rtcp_ntp_rec; 168 165 } pjmedia_rtcp_ntp_rec; 169 166 170 167 … … 172 169 * Unidirectional RTP stream statistics. 173 170 */ 174 struct pjmedia_rtcp_stream_stat171 typedef struct pjmedia_rtcp_stream_stat 175 172 { 176 173 pj_time_val update; /**< Time of last update. */ … … 191 188 192 189 pj_math_stat jitter; /**< Jitter statistics (in usec) */ 193 }; 194 195 196 /** 197 * @see pjmedia_rtcp_stream_stat 198 */ 199 typedef struct pjmedia_rtcp_stream_stat pjmedia_rtcp_stream_stat; 200 190 191 } pjmedia_rtcp_stream_stat; 201 192 202 193 … … 204 195 * Bidirectional RTP stream statistics. 205 196 */ 206 struct pjmedia_rtcp_stat197 typedef struct pjmedia_rtcp_stat 207 198 { 208 199 pj_time_val start; /**< Time when session was created */ … … 227 218 (in usec). */ 228 219 #endif 229 }; 230 231 232 /** 233 * @see pjmedia_rtcp_stat 234 */ 235 typedef struct pjmedia_rtcp_stat pjmedia_rtcp_stat; 220 221 pjmedia_rtcp_sdes peer_sdes; /**< Peer SDES. */ 222 char peer_sdes_buf_[PJMEDIA_RTCP_RX_SDES_BUF_LEN]; 223 /**< Peer SDES buffer. */ 224 225 } pjmedia_rtcp_stat; 236 226 237 227 … … 240 230 * should only be one RTCP session for a bidirectional RTP streams. 241 231 */ 242 struct pjmedia_rtcp_session232 typedef struct pjmedia_rtcp_session 243 233 { 244 234 char *name; /**< Name identification. */ … … 279 269 pjmedia_rtcp_xr_session xr_session; 280 270 #endif 281 }; 282 283 /** 284 * @see pjmedia_rtcp_session 285 */ 286 typedef struct pjmedia_rtcp_session pjmedia_rtcp_session; 271 } pjmedia_rtcp_session; 287 272 288 273 … … 440 425 441 426 /** 427 * Build an RTCP SDES (source description) packet. This packet can be 428 * appended to other RTCP packets, e.g: RTCP RR/SR, to compose a compound 429 * RTCP packet. 430 * 431 * @param session The RTCP session. 432 * @param buf The buffer to receive RTCP SDES packet. 433 * @param length On input, it will contain the buffer length. 434 * On output, it will contain the generated RTCP SDES 435 * packet length. 436 * @param sdes The source description, see #pjmedia_rtcp_sdes. 437 * 438 * @return PJ_SUCCESS on success. 439 */ 440 PJ_DECL(pj_status_t) pjmedia_rtcp_build_rtcp_sdes( 441 pjmedia_rtcp_session *session, 442 void *buf, 443 pj_size_t *length, 444 const pjmedia_rtcp_sdes *sdes); 445 446 /** 447 * Build an RTCP BYE packet. This packet can be appended to other RTCP 448 * packets, e.g: RTCP RR/SR, to compose a compound RTCP packet. 449 * 450 * @param session The RTCP session. 451 * @param buf The buffer to receive RTCP BYE packet. 452 * @param length On input, it will contain the buffer length. 453 * On output, it will contain the generated RTCP BYE 454 * packet length. 455 * @param reason Optional, the BYE reason. 456 * 457 * @return PJ_SUCCESS on success. 458 */ 459 PJ_DECL(pj_status_t) pjmedia_rtcp_build_rtcp_bye( 460 pjmedia_rtcp_session *session, 461 void *buf, 462 pj_size_t *length, 463 const pj_str_t *reason); 464 465 466 /** 442 467 * Call this function if RTCP XR needs to be enabled/disabled in the 443 468 * RTCP session.
Note: See TracChangeset
for help on using the changeset viewer.