#ifndef _rtp_packet_h_ #define _rtp_packet_h_ #include "rtp-header.h" #define RTP_FIXED_HEADER 12 struct rtp_packet_t { rtp_header_t rtp; uint32_t csrc[16]; const void* extension; // extension(valid only if rtp.x = 1) uint16_t extlen; // extension length in bytes uint16_t extprofile; // extension reserved const void* payload; // payload int payloadlen; // payload length in bytes }; ///@return 0-ok, other-error int rtp_packet_deserialize(struct rtp_packet_t *pkt, const void* data, int bytes); ///@return <0-error, >0-rtp packet size, =0-impossible int rtp_packet_serialize(const struct rtp_packet_t *pkt, void* data, int bytes); #endif /* !_rtp_packet_h_ */