Main Page | Data Structures | File List | Data Fields | Globals

rtp_api.h File Reference

Go to the source code of this file.

Data Structures

struct  hashsearch
struct  member_iterator
struct  ntp64
struct  receiver_report
struct  rtcp_app
struct  rtcp_bye_block
struct  rtcp_common
struct  rtcp_packet
struct  rtcp_report_block
struct  rtcp_rr
struct  rtcp_sdes_item
struct  rtcp_sr
struct  rtp_hdr_ext
struct  rtp_hdr_t
struct  rtp_packet

Defines

#define BITFIELD(field, mask, shift)   (((field) & (mask)) >> (shift))
#define SET_BITFIELD(field, val, mask, shift)
#define RTCP_PACKET_SR   200
#define RTCP_PACKET_RR   201
#define RTCP_PACKET_SDES   202
#define RTCP_PACKET_BYE   203
#define RTCP_PACKET_APP   204
#define RTP_VERSION(hdr)   BITFIELD((hdr).flags, 0xC0, 6)
#define SET_RTP_VERSION(hdr, val)   SET_BITFIELD((hdr).flags, (val), 0xC0, 6)
#define RTP_P(hdr)   BITFIELD((hdr).flags, 0x20, 5)
#define SET_RTP_P(hdr, val)   SET_BITFIELD((hdr).flags, (val), 0x20, 5)
#define RTP_X(hdr)   BITFIELD((hdr).flags, 0x10, 4)
#define SET_RTP_X(hdr, val)   SET_BITFIELD((hdr).flags, (val), 0x10, 4)
#define RTP_CC(hdr)   BITFIELD((hdr).flags, 0x0F, 0)
#define SET_RTP_CC(hdr, val)   SET_BITFIELD((hdr).flags, (val), 0x0F, 0)
#define RTP_M(hdr)   BITFIELD((hdr).mpt, 0x80, 7)
#define SET_RTP_M(hdr, val)   SET_BITFIELD((hdr).mpt, (val), 0x80, 7)
#define RTP_PT(hdr)   BITFIELD((hdr).mpt, 0x7F, 0)
#define SET_RTP_PT(hdr, val)   SET_BITFIELD((hdr).mpt, (val), 0x7F, 0)
#define RTCP_REPORT_BLOCK_SIZE   (6 * 4)
#define RTCP_BYE_BLOCK_SIZE   4
#define RTCP_COMMON_SIZE   4
#define RTCP_VERSION(com)   BITFIELD((com).flags, 0xC0, 6)
#define SET_RTCP_VERSION(com, val)   SET_BITFIELD((com).flags, (val), 0xC0, 6)
#define RTCP_P(com)   BITFIELD((com).flags, 0x20, 5)
#define SET_RTCP_P(com, val)   SET_BITFIELD((com).flags, (val), 0x20, 5)
#define RTCP_RC(com)   BITFIELD((com).flags, 0x1F, 0)
#define SET_RTCP_RC(com, val)   SET_BITFIELD((com).flags, (val), 0x1F, 0)
#define RTCP_SR_SIZE   (6 * 4)
#define RTCP_RR_SIZE   4
#define RTCP_APP_SIZE   (2 * 4)
#define EM_MASK(BITS, SHIFT)   (((1U << (BITS)) - 1) << (SHIFT))
#define EM_CODE_SHIFT   0U
#define EM_CODE_BITS   16U
#define EM_CODE_MASK   EM_MASK(EM_CODE_BITS,EM_CODE_SHIFT)
#define EM_FACILITY_SUB_CODE_SHIFT   16U
#define EM_FACILITY_SUB_CODE_BITS   8U
#define EM_FACILITY_SUB_CODE_MASK
#define EM_FACILITY_CODE_SHIFT   24U
#define EM_FACILITY_CODE_BITS   6U
#define EM_FACILITY_CODE_MASK
#define EM_SEVERITY_SHIFT   30U
#define EM_SEVERITY_BITS   2U
#define EM_SEVERITY_MASK
#define EM_SEVERITY_SUCCESS   0U
#define EM_SEVERITY_INFORMATIONAL   1U
#define EM_SEVERITY_WARNING   2U
#define EM_SEVERITY_ERROR   3U
#define EM_PENDING   1U
#define EM_INVALID_PARAM   2U
#define EM_NOT_IMPLEMENTED   3U
#define EM_MEM_ALLOC_FAILED   4U
#define EM_UNKNOWN_ERROR   5U
#define EM_NOT_SUPPORTED   6U
#define EM_NOT_PRESENT   7U
#define EM_BUFFER_TOO_SMALL   8U
#define EM_SOFTWARE_EXPIRED   9U
#define EM_INVALID_FSM_STIMULUS   10U
#define EM_INVALID_RESULT_ARG   11U
#define EM_LIBRARY_NOT_INTIALIZED   12U
#define EM_INSUFFICIENT_INFO   13U
#define EM_INVALID_SEQ_NUMBER   14U
#define EM_FSM_NO_OPERATION   15U
#define EM_CODE_MAX   256U
#define FACILITY_RTP   3U
#define EM_STATUS(SEV, FAC, SUB, CODE)
#define RTP_SUCC(CODE)   EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
#define RTP_WARN(CODE)   EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
#define RTP_INFO(CODE)   EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
#define RTP_ERR(CODE)   EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
#define EM_RTP_TOO_MANY_CONTEXTS   (EM_CODE_MAX + 1)
#define EM_RTP_UNKNOWN_CONTEXT   (EM_CODE_MAX + 2)
#define EM_RTP_NOSOCKET   (EM_CODE_MAX + 3)
#define EM_RTP_CANT_GET_SOCKET   (EM_CODE_MAX + 4)
#define EM_RTP_CANT_BIND_SOCKET   (EM_CODE_MAX + 5)
#define EM_RTP_CANT_SET_SOCKOPT   (EM_CODE_MAX + 6)
#define EM_RTP_SOCKET_WRITE_FAILURE   (EM_CODE_MAX + 7)
#define EM_RTP_SOCKET_READ_FAILURE   (EM_CODE_MAX + 8)
#define EM_RTP_SOCKET_MISMATCH   (EM_CODE_MAX + 9)
#define EM_RTP_FIXED_WHEN_OPEN   (EM_CODE_MAX + 10)
#define EM_RTP_BAD_ADDR   (EM_CODE_MAX + 11)
#define EM_RTP_BAD_PORT   (EM_CODE_MAX + 12)
#define EM_RTP_CANT_SEND   (EM_CODE_MAX + 13)
#define EM_RTP_CANT_CLOSE_SESSION   (EM_CODE_MAX + 14)
#define EM_RTP_BAD_MI   (EM_CODE_MAX + 15)
#define EM_RTP_BAD_PROFILE   (EM_CODE_MAX + 16)
#define EM_RTP_SOCKET_EMPTY   (EM_CODE_MAX + 17)
#define EM_RTP_PACKET_LOOPBACK   (EM_CODE_MAX + 18)
#define EM_RTP_CSRC_LIST_NOT_SET   (EM_CODE_MAX + 19)
#define EM_RTP_CSRC_APPEARS_TWICE   (EM_CODE_MAX + 20)
#define EM_RTP_BAD_PACKET_FORMAT   (EM_CODE_MAX + 21)
#define EM_RTP_NO_SUCH_PERSON   (EM_CODE_MAX + 22)
#define EM_RTP_PERSON_DATA_PROTECTED   (EM_CODE_MAX + 23)
#define EM_RTP_NO_SUCH_SENDER   (EM_CODE_MAX + 24)
#define EM_RTP_NO_SUCH_SDES   (EM_CODE_MAX + 25)
#define EM_RTP_CANT_USE_ENCRYPTION   (EM_CODE_MAX + 26)
#define EM_RTP_DECRYPTION_FAILURE   (EM_CODE_MAX + 27)
#define EM_RTP_END_OF_LIST   (EM_CODE_MAX + 28)
#define EM_RTP_CANT_CALL_FUNCTION   (EM_CODE_MAX + 29)
#define EM_RTP_SSRC_IN_USE   (EM_CODE_MAX + 30)
#define EM_RTP_CANT_GETSOCKNAME   (EM_CODE_MAX + 31)
#define EM_RTP_NO_SUCH_CONTRIBUTOR   (EM_CODE_MAX + 32)
#define EM_RTP_CSRC_LIST_FULL   (EM_CODE_MAX + 33)
#define EM_RTP_DONT_SEND_NOW   (EM_CODE_MAX + 34)
#define EM_RTP_CANT_SEND_BYE   (EM_CODE_MAX + 35)

Typedefs

typedef long int context
typedef long int person
typedef long int int32
typedef short int int16
typedef signed char int8
typedef unsigned long int u_int32
typedef unsigned short int u_int16
typedef unsigned char u_int8
typedef hashsearch receiver_report_iterator
typedef u_int8 memberinfo

Enumerations

enum  memberstatus {
  RTP_MEMBER_PENDING, RTP_MEMBER_CONFIRMED, RTP_MEMBER_EXPIRED, RTP_MEMBER_PENDING_CONTRIBUTOR,
  RTP_MEMBER_CONFIRMED_CONTRIBUTOR, RTP_MEMBER_EXPIRED_CONTRIBUTOR
}
enum  senderstatus { RTP_SENDER_NOT, RTP_SENDER_PURPORTED, RTP_SENDER_CONFIRMED }
enum  {
  RTP_MI_CNAME = 1, RTP_MI_NAME = 2, RTP_MI_EMAIL = 3, RTP_MI_PHONE = 4,
  RTP_MI_LOC = 5, RTP_MI_TOOL = 6, RTP_MI_NOTE = 7, RTP_MI_PRIV = 8,
  RTP_MI_H323_CADDR = 9
}
enum  reconsideration_t { RTP_RECONSIDERATION_UNCONDITIONAL, RTP_RECONSIDERATION_CONDITIONAL, RTP_RECONSIDERATION_OFF }
enum  encryption_t { RTP_ENCRYPTION_FULL, RTP_ENCRYPTION_PARTIAL, RTP_ENCRYPTION_NONE }
enum  rtperror {
  RTP_OK = 0, RTP_CANT_ALLOC_MEM = RTP_ERR(EM_MEM_ALLOC_FAILED), RTP_TOO_MANY_CONTEXTS = RTP_ERR(EM_RTP_TOO_MANY_CONTEXTS), RTP_UNKNOWN_CONTEXT = RTP_ERR(EM_RTP_UNKNOWN_CONTEXT),
  RTP_NOSOCKET = RTP_ERR(EM_RTP_NOSOCKET), RTP_CANT_GET_SOCKET = RTP_ERR(EM_RTP_CANT_GET_SOCKET), RTP_CANT_BIND_SOCKET = RTP_ERR(EM_RTP_CANT_BIND_SOCKET), RTP_CANT_SET_SOCKOPT = RTP_ERR(EM_RTP_CANT_SET_SOCKOPT),
  RTP_SOCKET_WRITE_FAILURE = RTP_ERR(EM_RTP_SOCKET_WRITE_FAILURE), RTP_SOCKET_READ_FAILURE = RTP_ERR(EM_RTP_SOCKET_READ_FAILURE), RTP_SOCKET_MISMATCH = RTP_ERR(EM_RTP_SOCKET_MISMATCH), RTP_FIXED_WHEN_OPEN = RTP_ERR(EM_RTP_FIXED_WHEN_OPEN),
  RTP_BAD_ADDR = RTP_ERR(EM_RTP_BAD_ADDR), RTP_BAD_PORT = RTP_ERR(EM_RTP_BAD_PORT), RTP_CANT_SEND = RTP_ERR(EM_RTP_CANT_SEND), RTP_CANT_CLOSE_SESSION = RTP_ERR(EM_RTP_CANT_CLOSE_SESSION),
  RTP_BAD_MI = RTP_ERR(EM_RTP_BAD_MI), RTP_BAD_PROFILE = RTP_ERR(EM_RTP_BAD_PROFILE), RTP_SOCKET_EMPTY = RTP_WARN(EM_RTP_SOCKET_EMPTY), RTP_PACKET_LOOPBACK = RTP_WARN(EM_RTP_PACKET_LOOPBACK),
  RTP_INSUFFICIENT_BUFFER = RTP_ERR(EM_BUFFER_TOO_SMALL), RTP_CSRC_LIST_NOT_SET = RTP_ERR(EM_RTP_CSRC_LIST_NOT_SET), RTP_CSRC_APPEARS_TWICE = RTP_WARN(EM_RTP_CSRC_APPEARS_TWICE), RTP_BAD_PACKET_FORMAT = RTP_WARN(EM_RTP_BAD_PACKET_FORMAT),
  RTP_NO_SUCH_PERSON = RTP_ERR(EM_RTP_NO_SUCH_PERSON), RTP_PERSON_DATA_PROTECTED = RTP_ERR(EM_RTP_PERSON_DATA_PROTECTED), RTP_NO_SUCH_SENDER = RTP_ERR(EM_RTP_NO_SUCH_SENDER), RTP_NO_SUCH_SDES = RTP_ERR(EM_RTP_NO_SUCH_SDES),
  RTP_CANT_USE_ENCRYPTION = RTP_ERR(EM_RTP_CANT_USE_ENCRYPTION), RTP_DECRYPTION_FAILURE = RTP_ERR(EM_RTP_DECRYPTION_FAILURE), RTP_END_OF_LIST = RTP_INFO(EM_RTP_END_OF_LIST), RTP_CANT_CALL_FUNCTION = RTP_WARN(EM_RTP_CANT_CALL_FUNCTION),
  RTP_SSRC_IN_USE = RTP_WARN(EM_RTP_SSRC_IN_USE), RTP_CANT_GETSOCKNAME = RTP_ERR(EM_RTP_CANT_GETSOCKNAME), RTP_BAD_VALUE = RTP_ERR(EM_INVALID_PARAM), RTP_NO_SUCH_CONTRIBUTOR = RTP_ERR(EM_RTP_NO_SUCH_CONTRIBUTOR),
  RTP_CSRC_LIST_FULL = RTP_ERR(EM_RTP_CSRC_LIST_FULL), RTP_DONT_SEND_NOW = RTP_INFO(EM_RTP_DONT_SEND_NOW), RTP_ERROR_CANT_SEND_BYE = RTP_INFO(EM_RTP_CANT_SEND_BYE)
}
enum  rtpflag {
  RTP_FLAG_NEW_MEMBER, RTP_FLAG_NEW_SENDER, RTP_FLAG_EXPIRED_MEMBER, RTP_FLAG_EXPIRED_SENDER,
  RTP_FLAG_MEMBER_LEAVES, RTP_FLAG_OBSERVE_COLLISION, RTP_FLAG_A_CSRC_COLLIDES, RTP_FLAG_UNIQUE_ID_REMAP,
  RTP_FLAG_MEMBER_INFO_CHANGES, RTP_FLAG_MEMBER_ALIVE, RTP_FLAG_MEMBER_CONFIRMED, RTP_FLAG_DELETED_PENDING,
  RTP_FLAG_DELETED_MEMBER, RTP_FLAG_ADDRESS_CHANGES, RTP_FLAG_COLLIDE_WITH_ME, RTP_FLAG_PURPORTED_SENDER,
  RTP_FLAG_DELETED_SENDER, RTP_FLAG_NONE
}

Functions

rtperror RTPSessionSetRTPStampRate (context cid, int32 payload_type, int32 usec)
rtperror RTPSessionGetRTPStampRate (context cid, int32 payload_type, int32 *usec)
rtperror RTPSessionSetKey (context cid, void *value)
rtperror RTPSessionGetKey (context cid, void **value)
rtperror RTPSessionSetReconsideration (context cid, reconsideration_t value)
rtperror RTPSessionGetReconsideration (context cid, reconsideration_t *value)
rtperror RTPSessionSetExtension (context cid, rtp_hdr_ext *the_ext)
rtperror RTPSessionGetExtension (context cid, rtp_hdr_ext **the_ext)
rtperror RTPSessionSetBandwidth (context cid, float session_bwidth, float rtcp_fraction)
rtperror RTPSessionGetBandwidth (context cid, float *session_bwidth, float *rtcp_fraction)
rtperror RTPSessionSetUserInfo (context cid, void *info)
rtperror RTPSessionGetUserInfo (context cid, void **info)
rtperror RTPSessionAddToCSRCList (context cid, u_int32 ssrc)
rtperror RTPSessionRemoveFromCSRCList (context cid, u_int32 ssrc)
rtperror RTPSessionAddToContributorList (context cid, u_int32 ssrc)
rtperror RTPSessionGetCSRCList (context cid, u_int32 *value, int32 *size)
rtperror RTPSessionGetUniqueIDForCSRC (context cid, u_int32 ssrc, person *p)
rtperror RTPSessionGetMemberList (context cid, member_iterator *iter)
rtperror RTPSessionGetMemberListLen (context cid, long *the_len)
rtperror RTPSetUpdateMemberCallBack (context cid, void(*f)(context, person, rtpflag, char *))
rtperror RTPSetChangedMemberInfoCallBack (context cid, void(*f)(context, person, memberinfo, char *, rtpflag))
rtperror RTPSetCollidedMemberCallBack (context cid, void(*f)(context, person, person, rtpflag))
rtperror RTPSetRevertingIDCallBack (context cid, void(*f)(context, person, person, void *, rtpflag))
rtperror RTPCurrentMember (context cid, member_iterator *iter, person *the_member)
rtperror RTPNextMember (context cid, member_iterator *iter, person *the_member)
rtp_packet RTPGetRTPPacket (char *rtppacket, long pktlen)
u_int32 RTPPacketGetCSRC (rtp_packet *rtppkt, int csrc_no)
int RTPSplitCompoundRTCP (char *rtcppacket, char *indpkts[], long len)
rtcp_packet RTPGetRTCPPacket (char *rtcppacket)
void GetFirstSDESItemForSSRC (rtcp_sdes_item *the_item, char *startpoint)
rtcp_sdes_item InitSDESItemIter (rtcp_packet *rtcpsdes)
rtcp_sdes_item GetNextItem (rtcp_sdes_item *prev_item)
rtcp_report_block RTPGetReportBlock (rtcp_packet *rtcprrsr, int blockno)
rtcp_bye_block RTPGetByeBlock (rtcp_packet *rtcpbye, int blockno)
rtperror RTPMemberInfoGetStatus (context cid, person p, memberstatus *s, senderstatus *sender)
rtperror RTPMemberInfoSetSDES (context cid, person p, memberinfo SDES_field, char *the_info)
rtperror RTPMemberInfoGetSDES (context cid, person p, memberinfo SDES_field, char *the_info)
rtperror RTPMemberInfoSetNTP (context cid, person p, ntp64 NTP_time)
rtperror RTPMemberInfoGetNTP (context cid, person p, ntp64 *NTP_time)
rtperror RTPMemberInfoSetRTP (context cid, person p, int32 rtp_stamp)
rtperror RTPMemberInfoGetRTP (context cid, person p, int32 *RTP_time)
rtperror RTPMemberInfoSetPktCount (context cid, person p, int32 count)
rtperror RTPMemberInfoGetPktCount (context cid, person p, int32 *count)
rtperror RTPMemberInfoSetRTCPPktCount (context cid, person p, int32 count)
rtperror RTPMemberInfoGetRTCPPktCount (context cid, person p, int32 *count)
rtperror RTPMemberInfoSetOctCount (context cid, person p, int32 count)
rtperror RTPMemberInfoGetOctCount (context cid, person p, int32 *count)
rtperror RTPMemberInfoSetSSRC (context cid, u_int32 ssrc, u_int32 mask)
rtperror RTPMemberInfoGetSSRC (context cid, person p, u_int32 *ssrc)
rtperror RTPMemberInfoSetUserInfo (context cid, person p, void *info)
rtperror RTPMemberInfoGetUserInfo (context cid, person p, void **info)
rtperror RTPSenderInfoGetFirstReceiverReport (context cid, person p, receiver_report_iterator *the_iterator, receiver_report *report)
rtperror RTPSenderInfoGetNextReceiverReport (context cid, person p, receiver_report_iterator *the_iterator, receiver_report *report)
rtperror RTPSenderInfoGetLocalReception (context cid, person p, receiver_report *report)
rtperror RTPFindMember (context cid, memberinfo mi, char *sdes_field, person *p)
rtperror RTPMostRecentRTPTime (context cid, person p, struct timeval *the_time)
rtperror RTPMostRecentRTCPTime (context cid, person p, struct timeval *the_time)
rtperror RTPMostRecentRTPPerson (context cid, person *p)
rtperror RTPMostRecentRTCPPerson (context cid, person *p)
char * RTPStrError (rtperror err)
char * RTPDebugStr (void)


Define Documentation

#define BITFIELD field,
mask,
shift   )     (((field) & (mask)) >> (shift))
 

Definition at line 10 of file rtp_api.h.

#define EM_BUFFER_TOO_SMALL   8U
 

Definition at line 382 of file rtp_api.h.

#define EM_CODE_BITS   16U
 

Definition at line 350 of file rtp_api.h.

#define EM_CODE_MASK   EM_MASK(EM_CODE_BITS,EM_CODE_SHIFT)
 

Definition at line 351 of file rtp_api.h.

#define EM_CODE_MAX   256U
 

Definition at line 390 of file rtp_api.h.

#define EM_CODE_SHIFT   0U
 

Definition at line 349 of file rtp_api.h.

#define EM_FACILITY_CODE_BITS   6U
 

Definition at line 358 of file rtp_api.h.

#define EM_FACILITY_CODE_MASK
 

Value:

EM_MASK(EM_FACILITY_CODE_BITS,\
                                                                                        EM_FACILITY_CODE_SHIFT)

Definition at line 359 of file rtp_api.h.

#define EM_FACILITY_CODE_SHIFT   24U
 

Definition at line 357 of file rtp_api.h.

#define EM_FACILITY_SUB_CODE_BITS   8U
 

Definition at line 354 of file rtp_api.h.

#define EM_FACILITY_SUB_CODE_MASK
 

Value:

EM_MASK(EM_FACILITY_SUB_CODE_BITS,\
                                                                                        EM_FACILITY_SUB_CODE_SHIFT)

Definition at line 355 of file rtp_api.h.

#define EM_FACILITY_SUB_CODE_SHIFT   16U
 

Definition at line 353 of file rtp_api.h.

#define EM_FSM_NO_OPERATION   15U
 

Definition at line 389 of file rtp_api.h.

#define EM_INSUFFICIENT_INFO   13U
 

Definition at line 387 of file rtp_api.h.

#define EM_INVALID_FSM_STIMULUS   10U
 

Definition at line 384 of file rtp_api.h.

#define EM_INVALID_PARAM   2U
 

Definition at line 376 of file rtp_api.h.

#define EM_INVALID_RESULT_ARG   11U
 

Definition at line 385 of file rtp_api.h.

#define EM_INVALID_SEQ_NUMBER   14U
 

Definition at line 388 of file rtp_api.h.

#define EM_LIBRARY_NOT_INTIALIZED   12U
 

Definition at line 386 of file rtp_api.h.

#define EM_MASK BITS,
SHIFT   )     (((1U << (BITS)) - 1) << (SHIFT))
 

Definition at line 347 of file rtp_api.h.

#define EM_MEM_ALLOC_FAILED   4U
 

Definition at line 378 of file rtp_api.h.

#define EM_NOT_IMPLEMENTED   3U
 

Definition at line 377 of file rtp_api.h.

#define EM_NOT_PRESENT   7U
 

Definition at line 381 of file rtp_api.h.

#define EM_NOT_SUPPORTED   6U
 

Definition at line 380 of file rtp_api.h.

#define EM_PENDING   1U
 

Definition at line 375 of file rtp_api.h.

#define EM_RTP_BAD_ADDR   (EM_CODE_MAX + 11)
 

Definition at line 421 of file rtp_api.h.

#define EM_RTP_BAD_MI   (EM_CODE_MAX + 15)
 

Definition at line 425 of file rtp_api.h.

#define EM_RTP_BAD_PACKET_FORMAT   (EM_CODE_MAX + 21)
 

Definition at line 431 of file rtp_api.h.

#define EM_RTP_BAD_PORT   (EM_CODE_MAX + 12)
 

Definition at line 422 of file rtp_api.h.

#define EM_RTP_BAD_PROFILE   (EM_CODE_MAX + 16)
 

Definition at line 426 of file rtp_api.h.

#define EM_RTP_CANT_BIND_SOCKET   (EM_CODE_MAX + 5)
 

Definition at line 415 of file rtp_api.h.

#define EM_RTP_CANT_CALL_FUNCTION   (EM_CODE_MAX + 29)
 

Definition at line 439 of file rtp_api.h.

#define EM_RTP_CANT_CLOSE_SESSION   (EM_CODE_MAX + 14)
 

Definition at line 424 of file rtp_api.h.

#define EM_RTP_CANT_GET_SOCKET   (EM_CODE_MAX + 4)
 

Definition at line 414 of file rtp_api.h.

#define EM_RTP_CANT_GETSOCKNAME   (EM_CODE_MAX + 31)
 

Definition at line 441 of file rtp_api.h.

#define EM_RTP_CANT_SEND   (EM_CODE_MAX + 13)
 

Definition at line 423 of file rtp_api.h.

#define EM_RTP_CANT_SEND_BYE   (EM_CODE_MAX + 35)
 

Definition at line 445 of file rtp_api.h.

#define EM_RTP_CANT_SET_SOCKOPT   (EM_CODE_MAX + 6)
 

Definition at line 416 of file rtp_api.h.

#define EM_RTP_CANT_USE_ENCRYPTION   (EM_CODE_MAX + 26)
 

Definition at line 436 of file rtp_api.h.

#define EM_RTP_CSRC_APPEARS_TWICE   (EM_CODE_MAX + 20)
 

Definition at line 430 of file rtp_api.h.

#define EM_RTP_CSRC_LIST_FULL   (EM_CODE_MAX + 33)
 

Definition at line 443 of file rtp_api.h.

#define EM_RTP_CSRC_LIST_NOT_SET   (EM_CODE_MAX + 19)
 

Definition at line 429 of file rtp_api.h.

#define EM_RTP_DECRYPTION_FAILURE   (EM_CODE_MAX + 27)
 

Definition at line 437 of file rtp_api.h.

#define EM_RTP_DONT_SEND_NOW   (EM_CODE_MAX + 34)
 

Definition at line 444 of file rtp_api.h.

#define EM_RTP_END_OF_LIST   (EM_CODE_MAX + 28)
 

Definition at line 438 of file rtp_api.h.

#define EM_RTP_FIXED_WHEN_OPEN   (EM_CODE_MAX + 10)
 

Definition at line 420 of file rtp_api.h.

#define EM_RTP_NO_SUCH_CONTRIBUTOR   (EM_CODE_MAX + 32)
 

Definition at line 442 of file rtp_api.h.

#define EM_RTP_NO_SUCH_PERSON   (EM_CODE_MAX + 22)
 

Definition at line 432 of file rtp_api.h.

#define EM_RTP_NO_SUCH_SDES   (EM_CODE_MAX + 25)
 

Definition at line 435 of file rtp_api.h.

#define EM_RTP_NO_SUCH_SENDER   (EM_CODE_MAX + 24)
 

Definition at line 434 of file rtp_api.h.

#define EM_RTP_NOSOCKET   (EM_CODE_MAX + 3)
 

Definition at line 413 of file rtp_api.h.

#define EM_RTP_PACKET_LOOPBACK   (EM_CODE_MAX + 18)
 

Definition at line 428 of file rtp_api.h.

#define EM_RTP_PERSON_DATA_PROTECTED   (EM_CODE_MAX + 23)
 

Definition at line 433 of file rtp_api.h.

#define EM_RTP_SOCKET_EMPTY   (EM_CODE_MAX + 17)
 

Definition at line 427 of file rtp_api.h.

#define EM_RTP_SOCKET_MISMATCH   (EM_CODE_MAX + 9)
 

Definition at line 419 of file rtp_api.h.

#define EM_RTP_SOCKET_READ_FAILURE   (EM_CODE_MAX + 8)
 

Definition at line 418 of file rtp_api.h.

#define EM_RTP_SOCKET_WRITE_FAILURE   (EM_CODE_MAX + 7)
 

Definition at line 417 of file rtp_api.h.

#define EM_RTP_SSRC_IN_USE   (EM_CODE_MAX + 30)
 

Definition at line 440 of file rtp_api.h.

#define EM_RTP_TOO_MANY_CONTEXTS   (EM_CODE_MAX + 1)
 

Definition at line 411 of file rtp_api.h.

#define EM_RTP_UNKNOWN_CONTEXT   (EM_CODE_MAX + 2)
 

Definition at line 412 of file rtp_api.h.

#define EM_SEVERITY_BITS   2U
 

Definition at line 362 of file rtp_api.h.

#define EM_SEVERITY_ERROR   3U
 

Definition at line 371 of file rtp_api.h.

#define EM_SEVERITY_INFORMATIONAL   1U
 

Definition at line 369 of file rtp_api.h.

#define EM_SEVERITY_MASK
 

Value:

EM_MASK(EM_SEVERITY_BITS,\
                                                                                EM_SEVERITY_SHIFT)

Definition at line 363 of file rtp_api.h.

#define EM_SEVERITY_SHIFT   30U
 

Definition at line 361 of file rtp_api.h.

#define EM_SEVERITY_SUCCESS   0U
 

Definition at line 368 of file rtp_api.h.

#define EM_SEVERITY_WARNING   2U
 

Definition at line 370 of file rtp_api.h.

#define EM_SOFTWARE_EXPIRED   9U
 

Definition at line 383 of file rtp_api.h.

#define EM_STATUS SEV,
FAC,
SUB,
CODE   ) 
 

Value:

Definition at line 398 of file rtp_api.h.

#define EM_UNKNOWN_ERROR   5U
 

Definition at line 379 of file rtp_api.h.

#define FACILITY_RTP   3U
 

Definition at line 396 of file rtp_api.h.

#define RTCP_APP_SIZE   (2 * 4)
 

Definition at line 197 of file rtp_api.h.

#define RTCP_BYE_BLOCK_SIZE   4
 

Definition at line 152 of file rtp_api.h.

#define RTCP_COMMON_SIZE   4
 

Definition at line 162 of file rtp_api.h.

#define RTCP_P com   )     BITFIELD((com).flags, 0x20, 5)
 

Definition at line 167 of file rtp_api.h.

#define RTCP_PACKET_APP   204
 

Definition at line 24 of file rtp_api.h.

#define RTCP_PACKET_BYE   203
 

Definition at line 23 of file rtp_api.h.

#define RTCP_PACKET_RR   201
 

Definition at line 21 of file rtp_api.h.

#define RTCP_PACKET_SDES   202
 

Definition at line 22 of file rtp_api.h.

#define RTCP_PACKET_SR   200
 

Definition at line 20 of file rtp_api.h.

#define RTCP_RC com   )     BITFIELD((com).flags, 0x1F, 0)
 

Definition at line 170 of file rtp_api.h.

#define RTCP_REPORT_BLOCK_SIZE   (6 * 4)
 

Definition at line 131 of file rtp_api.h.

#define RTCP_RR_SIZE   4
 

Definition at line 189 of file rtp_api.h.

#define RTCP_SR_SIZE   (6 * 4)
 

Definition at line 182 of file rtp_api.h.

#define RTCP_VERSION com   )     BITFIELD((com).flags, 0xC0, 6)
 

Definition at line 164 of file rtp_api.h.

#define RTP_CC hdr   )     BITFIELD((hdr).flags, 0x0F, 0)
 

Definition at line 92 of file rtp_api.h.

#define RTP_ERR CODE   )     EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
 

Definition at line 407 of file rtp_api.h.

#define RTP_INFO CODE   )     EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
 

Definition at line 406 of file rtp_api.h.

#define RTP_M hdr   )     BITFIELD((hdr).mpt, 0x80, 7)
 

Definition at line 96 of file rtp_api.h.

#define RTP_P hdr   )     BITFIELD((hdr).flags, 0x20, 5)
 

Definition at line 84 of file rtp_api.h.

#define RTP_PT hdr   )     BITFIELD((hdr).mpt, 0x7F, 0)
 

Definition at line 100 of file rtp_api.h.

#define RTP_SUCC CODE   )     EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
 

Definition at line 404 of file rtp_api.h.

#define RTP_VERSION hdr   )     BITFIELD((hdr).flags, 0xC0, 6)
 

Definition at line 80 of file rtp_api.h.

#define RTP_WARN CODE   )     EM_STATUS(EM_SEVERITY_SUCCESS, FACILITY_RTP, 0, CODE)
 

Definition at line 405 of file rtp_api.h.

#define RTP_X hdr   )     BITFIELD((hdr).flags, 0x10, 4)
 

Definition at line 88 of file rtp_api.h.

#define SET_BITFIELD field,
val,
mask,
shift   ) 
 

Value:

do { \
     (field) &= ~(mask); \
     (field) |= (((val) << (shift)) & (mask)); \
   } while (0)

Definition at line 12 of file rtp_api.h.

#define SET_RTCP_P com,
val   )     SET_BITFIELD((com).flags, (val), 0x20, 5)
 

Definition at line 168 of file rtp_api.h.

#define SET_RTCP_RC com,
val   )     SET_BITFIELD((com).flags, (val), 0x1F, 0)
 

Definition at line 171 of file rtp_api.h.

#define SET_RTCP_VERSION com,
val   )     SET_BITFIELD((com).flags, (val), 0xC0, 6)
 

Definition at line 165 of file rtp_api.h.

#define SET_RTP_CC hdr,
val   )     SET_BITFIELD((hdr).flags, (val), 0x0F, 0)
 

Definition at line 93 of file rtp_api.h.

#define SET_RTP_M hdr,
val   )     SET_BITFIELD((hdr).mpt, (val), 0x80, 7)
 

Definition at line 97 of file rtp_api.h.

#define SET_RTP_P hdr,
val   )     SET_BITFIELD((hdr).flags, (val), 0x20, 5)
 

Definition at line 85 of file rtp_api.h.

#define SET_RTP_PT hdr,
val   )     SET_BITFIELD((hdr).mpt, (val), 0x7F, 0)
 

Definition at line 101 of file rtp_api.h.

#define SET_RTP_VERSION hdr,
val   )     SET_BITFIELD((hdr).flags, (val), 0xC0, 6)
 

Definition at line 81 of file rtp_api.h.

#define SET_RTP_X hdr,
val   )     SET_BITFIELD((hdr).flags, (val), 0x10, 4)
 

Definition at line 89 of file rtp_api.h.


Typedef Documentation

typedef long int context
 

Definition at line 26 of file rtp_api.h.

Referenced by RTPSchedule().

typedef short int int16
 

Definition at line 31 of file rtp_api.h.

typedef long int int32
 

Definition at line 30 of file rtp_api.h.

typedef signed char int8
 

Definition at line 32 of file rtp_api.h.

typedef u_int8 memberinfo
 

Definition at line 278 of file rtp_api.h.

typedef long int person
 

Definition at line 27 of file rtp_api.h.

typedef struct hashsearch receiver_report_iterator
 

typedef unsigned short int u_int16
 

Definition at line 35 of file rtp_api.h.

typedef unsigned long int u_int32
 

Definition at line 34 of file rtp_api.h.

typedef unsigned char u_int8
 

Definition at line 36 of file rtp_api.h.


Enumeration Type Documentation

anonymous enum
 

Enumeration values:
RTP_MI_CNAME 
RTP_MI_NAME 
RTP_MI_EMAIL 
RTP_MI_PHONE 
RTP_MI_LOC 
RTP_MI_TOOL 
RTP_MI_NOTE 
RTP_MI_PRIV 
RTP_MI_H323_CADDR 

Definition at line 282 of file rtp_api.h.

enum encryption_t
 

Enumeration values:
RTP_ENCRYPTION_FULL 
RTP_ENCRYPTION_PARTIAL 
RTP_ENCRYPTION_NONE 

Definition at line 310 of file rtp_api.h.

enum memberstatus
 

Enumeration values:
RTP_MEMBER_PENDING 
RTP_MEMBER_CONFIRMED 
RTP_MEMBER_EXPIRED 
RTP_MEMBER_PENDING_CONTRIBUTOR 
RTP_MEMBER_CONFIRMED_CONTRIBUTOR 
RTP_MEMBER_EXPIRED_CONTRIBUTOR 

Definition at line 41 of file rtp_api.h.

enum reconsideration_t
 

Enumeration values:
RTP_RECONSIDERATION_UNCONDITIONAL 
RTP_RECONSIDERATION_CONDITIONAL 
RTP_RECONSIDERATION_OFF 

Definition at line 300 of file rtp_api.h.

enum rtperror
 

Enumeration values:
RTP_OK 
RTP_CANT_ALLOC_MEM 
RTP_TOO_MANY_CONTEXTS 
RTP_UNKNOWN_CONTEXT 
RTP_NOSOCKET 
RTP_CANT_GET_SOCKET 
RTP_CANT_BIND_SOCKET 
RTP_CANT_SET_SOCKOPT 
RTP_SOCKET_WRITE_FAILURE 
RTP_SOCKET_READ_FAILURE 
RTP_SOCKET_MISMATCH 
RTP_FIXED_WHEN_OPEN 
RTP_BAD_ADDR 
RTP_BAD_PORT 
RTP_CANT_SEND 
RTP_CANT_CLOSE_SESSION 
RTP_BAD_MI 
RTP_BAD_PROFILE 
RTP_SOCKET_EMPTY 
RTP_PACKET_LOOPBACK 
RTP_INSUFFICIENT_BUFFER 
RTP_CSRC_LIST_NOT_SET 
RTP_CSRC_APPEARS_TWICE 
RTP_BAD_PACKET_FORMAT 
RTP_NO_SUCH_PERSON 
RTP_PERSON_DATA_PROTECTED 
RTP_NO_SUCH_SENDER 
RTP_NO_SUCH_SDES 
RTP_CANT_USE_ENCRYPTION 
RTP_DECRYPTION_FAILURE 
RTP_END_OF_LIST 
RTP_CANT_CALL_FUNCTION 
RTP_SSRC_IN_USE 
RTP_CANT_GETSOCKNAME 
RTP_BAD_VALUE 
RTP_NO_SUCH_CONTRIBUTOR 
RTP_CSRC_LIST_FULL 
RTP_DONT_SEND_NOW 
RTP_ERROR_CANT_SEND_BYE 

Definition at line 449 of file rtp_api.h.

enum rtpflag
 

Enumeration values:
RTP_FLAG_NEW_MEMBER 
RTP_FLAG_NEW_SENDER 
RTP_FLAG_EXPIRED_MEMBER 
RTP_FLAG_EXPIRED_SENDER 
RTP_FLAG_MEMBER_LEAVES 
RTP_FLAG_OBSERVE_COLLISION 
RTP_FLAG_A_CSRC_COLLIDES 
RTP_FLAG_UNIQUE_ID_REMAP 
RTP_FLAG_MEMBER_INFO_CHANGES 
RTP_FLAG_MEMBER_ALIVE 
RTP_FLAG_MEMBER_CONFIRMED 
RTP_FLAG_DELETED_PENDING 
RTP_FLAG_DELETED_MEMBER 
RTP_FLAG_ADDRESS_CHANGES 
RTP_FLAG_COLLIDE_WITH_ME 
RTP_FLAG_PURPORTED_SENDER 
RTP_FLAG_DELETED_SENDER 
RTP_FLAG_NONE 

Definition at line 509 of file rtp_api.h.

enum senderstatus
 

Enumeration values:
RTP_SENDER_NOT 
RTP_SENDER_PURPORTED 
RTP_SENDER_CONFIRMED 

Definition at line 57 of file rtp_api.h.


Function Documentation

void GetFirstSDESItemForSSRC rtcp_sdes_item the_item,
char *  startpoint
 

rtcp_sdes_item GetNextItem rtcp_sdes_item prev_item  ) 
 

rtcp_sdes_item InitSDESItemIter rtcp_packet rtcpsdes  ) 
 

rtperror RTPCurrentMember context  cid,
member_iterator iter,
person the_member
 

char* RTPDebugStr void   ) 
 

rtperror RTPFindMember context  cid,
memberinfo  mi,
char *  sdes_field,
person p
 

rtcp_bye_block RTPGetByeBlock rtcp_packet rtcpbye,
int  blockno
 

rtcp_report_block RTPGetReportBlock rtcp_packet rtcprrsr,
int  blockno
 

rtcp_packet RTPGetRTCPPacket char *  rtcppacket  ) 
 

rtp_packet RTPGetRTPPacket char *  rtppacket,
long  pktlen
 

rtperror RTPMemberInfoGetNTP context  cid,
person  p,
ntp64 NTP_time
 

rtperror RTPMemberInfoGetOctCount context  cid,
person  p,
int32 count
 

rtperror RTPMemberInfoGetPktCount context  cid,
person  p,
int32 count
 

rtperror RTPMemberInfoGetRTCPPktCount context  cid,
person  p,
int32 count
 

rtperror RTPMemberInfoGetRTP context  cid,
person  p,
int32 RTP_time
 

rtperror RTPMemberInfoGetSDES context  cid,
person  p,
memberinfo  SDES_field,
char *  the_info
 

rtperror RTPMemberInfoGetSSRC context  cid,
person  p,
u_int32 ssrc
 

rtperror RTPMemberInfoGetStatus context  cid,
person  p,
memberstatus s,
senderstatus sender
 

rtperror RTPMemberInfoGetUserInfo context  cid,
person  p,
void **  info
 

rtperror RTPMemberInfoSetNTP context  cid,
person  p,
ntp64  NTP_time
 

rtperror RTPMemberInfoSetOctCount context  cid,
person  p,
int32  count
 

rtperror RTPMemberInfoSetPktCount context  cid,
person  p,
int32  count
 

rtperror RTPMemberInfoSetRTCPPktCount context  cid,
person  p,
int32  count
 

rtperror RTPMemberInfoSetRTP context  cid,
person  p,
int32  rtp_stamp
 

rtperror RTPMemberInfoSetSDES context  cid,
person  p,
memberinfo  SDES_field,
char *  the_info
 

rtperror RTPMemberInfoSetSSRC context  cid,
u_int32  ssrc,
u_int32  mask
 

rtperror RTPMemberInfoSetUserInfo context  cid,
person  p,
void *  info
 

rtperror RTPMostRecentRTCPPerson context  cid,
person p
 

rtperror RTPMostRecentRTCPTime context  cid,
person  p,
struct timeval *  the_time
 

rtperror RTPMostRecentRTPPerson context  cid,
person p
 

rtperror RTPMostRecentRTPTime context  cid,
person  p,
struct timeval *  the_time
 

rtperror RTPNextMember context  cid,
member_iterator iter,
person the_member
 

u_int32 RTPPacketGetCSRC rtp_packet rtppkt,
int  csrc_no
 

rtperror RTPSenderInfoGetFirstReceiverReport context  cid,
person  p,
receiver_report_iterator the_iterator,
receiver_report report
 

rtperror RTPSenderInfoGetLocalReception context  cid,
person  p,
receiver_report report
 

rtperror RTPSenderInfoGetNextReceiverReport context  cid,
person  p,
receiver_report_iterator the_iterator,
receiver_report report
 

rtperror RTPSessionAddToContributorList context  cid,
u_int32  ssrc
 

rtperror RTPSessionAddToCSRCList context  cid,
u_int32  ssrc
 

rtperror RTPSessionGetBandwidth context  cid,
float *  session_bwidth,
float *  rtcp_fraction
 

rtperror RTPSessionGetCSRCList context  cid,
u_int32 value,
int32 size
 

rtperror RTPSessionGetExtension context  cid,
rtp_hdr_ext **  the_ext
 

rtperror RTPSessionGetKey context  cid,
void **  value
 

rtperror RTPSessionGetMemberList context  cid,
member_iterator iter
 

rtperror RTPSessionGetMemberListLen context  cid,
long *  the_len
 

rtperror RTPSessionGetReconsideration context  cid,
reconsideration_t value
 

rtperror RTPSessionGetRTPStampRate context  cid,
int32  payload_type,
int32 usec
 

rtperror RTPSessionGetUniqueIDForCSRC context  cid,
u_int32  ssrc,
person p
 

rtperror RTPSessionGetUserInfo context  cid,
void **  info
 

rtperror RTPSessionRemoveFromCSRCList context  cid,
u_int32  ssrc
 

rtperror RTPSessionSetBandwidth context  cid,
float  session_bwidth,
float  rtcp_fraction
 

rtperror RTPSessionSetExtension context  cid,
rtp_hdr_ext the_ext
 

rtperror RTPSessionSetKey context  cid,
void *  value
 

rtperror RTPSessionSetReconsideration context  cid,
reconsideration_t  value
 

rtperror RTPSessionSetRTPStampRate context  cid,
int32  payload_type,
int32  usec
 

rtperror RTPSessionSetUserInfo context  cid,
void *  info
 

rtperror RTPSetChangedMemberInfoCallBack context  cid,
void(*  f)(context, person, memberinfo, char *, rtpflag)
 

rtperror RTPSetCollidedMemberCallBack context  cid,
void(*  f)(context, person, person, rtpflag)
 

rtperror RTPSetRevertingIDCallBack context  cid,
void(*  f)(context, person, person, void *, rtpflag)
 

rtperror RTPSetUpdateMemberCallBack context  cid,
void(*  f)(context, person, rtpflag, char *)
 

int RTPSplitCompoundRTCP char *  rtcppacket,
char *  indpkts[],
long  len
 

char* RTPStrError rtperror  err  ) 
 

Referenced by main(), and signal_handler().


Generated on Mon Apr 5 16:35:08 2004 for dvsend by doxygen 1.3.5