/*! the rate of the frame */
uint32_t rate;
/*! the payload of the frame */
- uint32_t payload;
+ switch_payload_t payload;
/*! the timestamp of the frame */
uint32_t timestamp;
/*! frame flags */
/*! enumeration defining the type of the codec */
const switch_codec_type codec_type;
/*! the IANA code number */
- uint8_t ianacode;
+ switch_payload_t ianacode;
/*! the IANA code name */
char *iananame;
/*! a list of codec implementations related to the codec */
\return the new RTP session or NULL on failure
*/
SWITCH_DECLARE(switch_status)switch_rtp_create(switch_rtp **new_rtp_session,
- uint8_t payload,
+ switch_payload_t payload,
uint32_t packet_size,
uint32_t ms_per_packet,
switch_rtp_flag_t flags,
switch_port_t rx_port,
char *tx_host,
switch_port_t tx_port,
- uint8_t payload,
+ switch_payload_t payload,
uint32_t packet_size,
uint32_t ms_per_packet,
switch_rtp_flag_t flags,
\param rtp_session the RTP session to set the payload number on
\param payload the new default payload number
*/
-SWITCH_DECLARE(void) switch_rtp_set_default_payload(switch_rtp *rtp_session, uint8_t payload);
+SWITCH_DECLARE(void) switch_rtp_set_default_payload(switch_rtp *rtp_session, switch_payload_t payload);
/*!
\brief Get the default payload number for a given RTP session
\param flags flags
\return the number of bytes read
*/
-SWITCH_DECLARE(switch_status) switch_rtp_read(switch_rtp *rtp_session, void *data, uint32_t *datalen, int *payload_type, switch_frame_flag *flags);
+SWITCH_DECLARE(switch_status) switch_rtp_read(switch_rtp *rtp_session, void *data, uint32_t *datalen, switch_payload_t *payload_type, switch_frame_flag *flags);
/*!
\brief Read data from a given RTP session without copying
\param flags flags
\return the number of bytes read
*/
-SWITCH_DECLARE(switch_status) switch_rtp_zerocopy_read(switch_rtp *rtp_session, void **data, uint32_t *datalen, int *payload_type, switch_frame_flag *flags);
+SWITCH_DECLARE(switch_status) switch_rtp_zerocopy_read(switch_rtp *rtp_session, void **data, uint32_t *datalen, switch_payload_t *payload_type, switch_frame_flag *flags);
/*!
\brief Read data from a given RTP session without copying
\param flags frame flags
\return the number of bytes written
*/
-SWITCH_DECLARE(int) switch_rtp_write_payload(switch_rtp *rtp_session, void *data, uint16_t datalen, uint8_t payload, uint32_t ts, uint16_t mseq, switch_frame_flag *flags);
+SWITCH_DECLARE(int) switch_rtp_write_payload(switch_rtp *rtp_session, void *data, uint16_t datalen, switch_payload_t payload, uint32_t ts, uint16_t mseq, switch_frame_flag *flags);
/*!
\brief Retrieve the SSRC from a given RTP session
SWITCH_EVENT_ALL
} switch_event_t;
+typedef uint8_t switch_payload_t;
typedef struct switch_rtp switch_rtp;
typedef struct switch_core_session_message switch_core_session_message;
typedef struct switch_audio_resampler switch_audio_resampler;
int32_t timestamp_dtmf;
uint32_t last_read;
char *codec_name;
- uint8_t codec_num;
+ switch_payload_t codec_num;
switch_time_t next_desc;
switch_time_t next_cand;
char *stun_ip;
uint32_t bytes = 0;
switch_size_t samples = 0, frames = 0, ms = 0;
switch_channel *channel = NULL;
- int payload = 0;
+ switch_payload_t payload = 0;
switch_status status;
channel = switch_core_session_get_channel(session);
while (!switch_test_flag(tech_pvt, TFLAG_BYE) && switch_test_flag(tech_pvt, TFLAG_IO) && tech_pvt->read_frame.datalen == 0) {
- payload = -1;
tech_pvt->read_frame.flags = 0;
status = switch_rtp_zerocopy_read_frame(tech_pvt->rtp_session, &tech_pvt->read_frame);
srtp_ctx_t *recv_ctx;
uint16_t seq;
- uint8_t payload;
+ switch_payload_t payload;
switch_rtp_invalid_handler invalid_handler;
void *private_data;
}
SWITCH_DECLARE(switch_status) switch_rtp_create(switch_rtp **new_rtp_session,
- uint8_t payload,
+ switch_payload_t payload,
uint32_t packet_size,
uint32_t ms_per_packet,
switch_rtp_flag_t flags,
rtp_session->send_msg.header.ts = 0;
rtp_session->send_msg.header.seq = (uint16_t) rand();
rtp_session->send_msg.header.m = 0;
- rtp_session->send_msg.header.pt = (uint8_t)htonl(payload);
+ rtp_session->send_msg.header.pt = (switch_payload_t)htonl(payload);
rtp_session->send_msg.header.version = 2;
rtp_session->send_msg.header.p = 0;
rtp_session->send_msg.header.x = 0;
rtp_session->recv_msg.header.ts = 0;
rtp_session->recv_msg.header.seq = 0;
rtp_session->recv_msg.header.m = 0;
- rtp_session->recv_msg.header.pt = (uint8_t)htonl(payload);
+ rtp_session->recv_msg.header.pt = (switch_payload_t)htonl(payload);
rtp_session->recv_msg.header.version = 2;
rtp_session->recv_msg.header.p = 0;
rtp_session->recv_msg.header.x = 0;
switch_port_t rx_port,
char *tx_host,
switch_port_t tx_port,
- uint8_t payload,
+ switch_payload_t payload,
uint32_t packet_size,
uint32_t ms_per_packet,
switch_rtp_flag_t flags,
return rtp_session->packet_size;
}
-SWITCH_DECLARE(void) switch_rtp_set_default_payload(switch_rtp *rtp_session, uint8_t payload)
+SWITCH_DECLARE(void) switch_rtp_set_default_payload(switch_rtp *rtp_session, switch_payload_t payload)
{
rtp_session->payload = payload;
}
}
-static int rtp_common_read(switch_rtp *rtp_session, int *payload_type, switch_frame_flag *flags)
+static int rtp_common_read(switch_rtp *rtp_session, switch_payload_t *payload_type, switch_frame_flag *flags)
{
switch_size_t bytes;
switch_status status;
return (int) bytes;
}
-SWITCH_DECLARE(switch_status) switch_rtp_read(switch_rtp *rtp_session, void *data, uint32_t *datalen, int *payload_type, switch_frame_flag *flags)
+SWITCH_DECLARE(switch_status) switch_rtp_read(switch_rtp *rtp_session, void *data, uint32_t *datalen, switch_payload_t *payload_type, switch_frame_flag *flags)
{
int bytes = rtp_common_read(rtp_session, payload_type, flags);
}
-SWITCH_DECLARE(switch_status) switch_rtp_zerocopy_read(switch_rtp *rtp_session, void **data, uint32_t *datalen, int *payload_type, switch_frame_flag *flags)
+SWITCH_DECLARE(switch_status) switch_rtp_zerocopy_read(switch_rtp *rtp_session, void **data, uint32_t *datalen, switch_payload_t *payload_type, switch_frame_flag *flags)
{
int bytes = rtp_common_read(rtp_session, payload_type, flags);
return SWITCH_STATUS_SUCCESS;
}
-static int rtp_common_write(switch_rtp *rtp_session, void *data, uint32_t datalen, uint8_t payload, switch_frame_flag *flags)
+static int rtp_common_write(switch_rtp *rtp_session, void *data, uint32_t datalen, switch_payload_t payload, switch_frame_flag *flags)
{
switch_size_t bytes;
uint8_t packetize = (rtp_session->packet_size > datalen && (payload == rtp_session->payload)) ? 1 : 0;