Rename frame types more logically

This commit is contained in:
Aaro Altonen 2020-01-17 10:18:11 +02:00
parent 84715a77a6
commit 8fae92b4e1
3 changed files with 30 additions and 29 deletions

View File

@ -94,7 +94,7 @@ kvz_rtp::frame::rtcp_sender_frame *kvz_rtp::frame::alloc_rtcp_sender_frame(size_
frame->header.version = 2; frame->header.version = 2;
frame->header.padding = 0; frame->header.padding = 0;
frame->header.pkt_type = kvz_rtp::frame::FRAME_TYPE_SR; frame->header.pkt_type = kvz_rtp::frame::RTCP_FT_SR;
frame->header.length = total_size; frame->header.length = total_size;
frame->header.count = nblocks; frame->header.count = nblocks;
@ -130,7 +130,7 @@ kvz_rtp::frame::rtcp_receiver_frame *kvz_rtp::frame::alloc_rtcp_receiver_frame(s
frame->header.version = 2; frame->header.version = 2;
frame->header.padding = 0; frame->header.padding = 0;
frame->header.pkt_type = kvz_rtp::frame::FRAME_TYPE_RR; frame->header.pkt_type = kvz_rtp::frame::RTCP_FT_RR;
frame->header.length = total_size; frame->header.length = total_size;
frame->header.count = nblocks; frame->header.count = nblocks;
@ -160,7 +160,7 @@ kvz_rtp::frame::rtcp_sdes_frame *kvz_rtp::frame::alloc_rtcp_sdes_frame(size_t ss
frame->header.version = 2; frame->header.version = 2;
frame->header.padding = 0; frame->header.padding = 0;
frame->header.pkt_type = kvz_rtp::frame::FRAME_TYPE_SDES; frame->header.pkt_type = kvz_rtp::frame::RTCP_FT_SDES;
frame->header.length = total_size; frame->header.length = total_size;
frame->header.count = ssrc_count; frame->header.count = ssrc_count;
@ -189,7 +189,7 @@ kvz_rtp::frame::rtcp_bye_frame *kvz_rtp::frame::alloc_rtcp_bye_frame(size_t ssrc
frame->header.version = 2; frame->header.version = 2;
frame->header.padding = 0; frame->header.padding = 0;
frame->header.pkt_type = kvz_rtp::frame::FRAME_TYPE_BYE; frame->header.pkt_type = kvz_rtp::frame::RTCP_FT_BYE;
frame->header.length = total_size; frame->header.length = total_size;
frame->header.count = ssrc_count; frame->header.count = ssrc_count;
@ -214,7 +214,7 @@ kvz_rtp::frame::rtcp_app_frame *kvz_rtp::frame::alloc_rtcp_app_frame(std::string
frame->version = 2; frame->version = 2;
frame->padding = 0; frame->padding = 0;
frame->pkt_type = kvz_rtp::frame::FRAME_TYPE_APP; frame->pkt_type = kvz_rtp::frame::RTCP_FT_APP;
frame->pkt_subtype = subtype; frame->pkt_subtype = subtype;
frame->length = total_size; frame->length = total_size;
@ -278,7 +278,7 @@ uint8_t *kvz_rtp::frame::get_rtp_header(kvz_rtp::frame::rtp_frame *frame)
uint8_t *kvz_rtp::frame::get_opus_header(kvz_rtp::frame::rtp_frame *frame) uint8_t *kvz_rtp::frame::get_opus_header(kvz_rtp::frame::rtp_frame *frame)
{ {
if (!frame || !frame->payload || frame->type != FRAME_TYPE_OPUS) { if (!frame || !frame->payload || frame->type != RTP_FT_OPUS) {
rtp_errno = RTP_INVALID_VALUE; rtp_errno = RTP_INVALID_VALUE;
return nullptr; return nullptr;
} }
@ -288,7 +288,7 @@ uint8_t *kvz_rtp::frame::get_opus_header(kvz_rtp::frame::rtp_frame *frame)
uint8_t *kvz_rtp::frame::get_hevc_nal_header(kvz_rtp::frame::rtp_frame *frame) uint8_t *kvz_rtp::frame::get_hevc_nal_header(kvz_rtp::frame::rtp_frame *frame)
{ {
if (!frame || !frame->payload || frame->type != FRAME_TYPE_HEVC_FU) { if (!frame || !frame->payload || frame->type != RTP_FT_HEVC_FU) {
rtp_errno = RTP_INVALID_VALUE; rtp_errno = RTP_INVALID_VALUE;
return nullptr; return nullptr;
} }
@ -298,7 +298,7 @@ uint8_t *kvz_rtp::frame::get_hevc_nal_header(kvz_rtp::frame::rtp_frame *frame)
uint8_t *kvz_rtp::frame::get_hevc_fu_header(kvz_rtp::frame::rtp_frame *frame) uint8_t *kvz_rtp::frame::get_hevc_fu_header(kvz_rtp::frame::rtp_frame *frame)
{ {
if (!frame || !frame->payload || frame->type != FRAME_TYPE_HEVC_FU) { if (!frame || !frame->payload || frame->type != RTP_FT_HEVC_FU) {
rtp_errno = RTP_INVALID_VALUE; rtp_errno = RTP_INVALID_VALUE;
return nullptr; return nullptr;
} }

View File

@ -10,7 +10,7 @@
#include "util.hh" #include "util.hh"
#define INVALID_FRAME_TYPE(ft) (ft < FRAME_TYPE_GENERIC || ft > FRAME_TYPE_HEVC_FU) #define INVALID_FRAME_TYPE(ft) (ft < RTP_FT_GENERIC|| ft > RTP_FT_HEVC_FU)
namespace kvz_rtp { namespace kvz_rtp {
namespace frame { namespace frame {
@ -21,19 +21,19 @@ namespace kvz_rtp {
HEADER_SIZE_HEVC_FU = 1, HEADER_SIZE_HEVC_FU = 1,
}; };
typedef enum RTP_FRAME_TYPE { enum RTP_FRAME_TYPE {
FRAME_TYPE_GENERIC = 0, /* payload length + RTP Header size (N + 12) */ RTP_FT_GENERIC = 0, /* payload length + RTP Header size (N + 12) */
FRAME_TYPE_OPUS = 1, /* payload length + RTP Header size + Opus header (N + 12 + 0 [for now]) */ RTP_FT_OPUS = 1, /* payload length + RTP Header size + Opus header (N + 12 + 0 [for now]) */
FRAME_TYPE_HEVC_FU = 2, /* payload length + RTP Header size + HEVC NAL Header + FU Header (N + 12 + 2 + 1) */ RTP_FT_HEVC_FU = 2, /* payload length + RTP Header size + HEVC NAL Header + FU Header (N + 12 + 2 + 1) */
} rtp_type_t; };
typedef enum RTCP_FRAME_TYPE { enum RTCP_FRAME_TYPE {
FRAME_TYPE_SR = 200, /* Sender report */ RTCP_FT_SR = 200, /* Sender report */
FRAME_TYPE_RR = 201, /* Receiver report */ RTCP_FT_RR = 201, /* Receiver report */
FRAME_TYPE_SDES = 202, /* Source description */ RTCP_FT_SDES = 202, /* Source description */
FRAME_TYPE_BYE = 203, /* Goodbye */ RTCP_FT_BYE = 203, /* Goodbye */
FRAME_TYPE_APP = 204 /* Application-specific message */ RTCP_FT_APP = 204 /* Application-specific message */
} rtcp_type_t; };
PACKED_STRUCT(rtp_header) { PACKED_STRUCT(rtp_header) {
uint8_t version:2; uint8_t version:2;
@ -76,7 +76,7 @@ namespace kvz_rtp {
uint8_t *payload; uint8_t *payload;
rtp_format_t format; rtp_format_t format;
rtp_type_t type; int type;
sockaddr_in src_addr; sockaddr_in src_addr;
}; };
@ -151,6 +151,7 @@ namespace kvz_rtp {
rtp_frame *alloc_rtp_frame(); rtp_frame *alloc_rtp_frame();
rtp_frame *alloc_rtp_frame(size_t payload_len); rtp_frame *alloc_rtp_frame(size_t payload_len);
rtp_frame *alloc_rtp_frame(size_t payload_len, size_t pz_size); rtp_frame *alloc_rtp_frame(size_t payload_len, size_t pz_size);
zrtp_frame *alloc_zrtp_frame(int mtype);
rtcp_app_frame *alloc_rtcp_app_frame(std::string name, uint8_t subtype, size_t payload_len); rtcp_app_frame *alloc_rtcp_app_frame(std::string name, uint8_t subtype, size_t payload_len);
rtcp_sdes_frame *alloc_rtcp_sdes_frame(size_t ssrc_count, size_t total_len); rtcp_sdes_frame *alloc_rtcp_sdes_frame(size_t ssrc_count, size_t total_len);
rtcp_receiver_frame *alloc_rtcp_receiver_frame(size_t nblocks); rtcp_receiver_frame *alloc_rtcp_receiver_frame(size_t nblocks);

View File

@ -1013,8 +1013,8 @@ rtp_error_t kvz_rtp::rtcp::handle_incoming_packet(uint8_t *buffer, size_t size)
return RTP_INVALID_VALUE; return RTP_INVALID_VALUE;
} }
if (header->pkt_type > kvz_rtp::frame::FRAME_TYPE_BYE || if (header->pkt_type > kvz_rtp::frame::RTCP_FT_BYE ||
header->pkt_type < kvz_rtp::frame::FRAME_TYPE_SR) { header->pkt_type < kvz_rtp::frame::RTCP_FT_SR) {
LOG_ERROR("Invalid packet type (%u)!", header->pkt_type); LOG_ERROR("Invalid packet type (%u)!", header->pkt_type);
return RTP_INVALID_VALUE; return RTP_INVALID_VALUE;
} }
@ -1024,23 +1024,23 @@ rtp_error_t kvz_rtp::rtcp::handle_incoming_packet(uint8_t *buffer, size_t size)
rtp_error_t ret = RTP_INVALID_VALUE; rtp_error_t ret = RTP_INVALID_VALUE;
switch (header->pkt_type) { switch (header->pkt_type) {
case kvz_rtp::frame::FRAME_TYPE_SR: case kvz_rtp::frame::RTCP_FT_SR:
ret = handle_sender_report_packet((kvz_rtp::frame::rtcp_sender_frame *)buffer, size); ret = handle_sender_report_packet((kvz_rtp::frame::rtcp_sender_frame *)buffer, size);
break; break;
case kvz_rtp::frame::FRAME_TYPE_RR: case kvz_rtp::frame::RTCP_FT_RR:
ret = handle_receiver_report_packet((kvz_rtp::frame::rtcp_receiver_frame *)buffer, size); ret = handle_receiver_report_packet((kvz_rtp::frame::rtcp_receiver_frame *)buffer, size);
break; break;
case kvz_rtp::frame::FRAME_TYPE_SDES: case kvz_rtp::frame::RTCP_FT_SDES:
ret = handle_sdes_packet((kvz_rtp::frame::rtcp_sdes_frame *)buffer, size); ret = handle_sdes_packet((kvz_rtp::frame::rtcp_sdes_frame *)buffer, size);
break; break;
case kvz_rtp::frame::FRAME_TYPE_BYE: case kvz_rtp::frame::RTCP_FT_BYE:
ret = handle_bye_packet((kvz_rtp::frame::rtcp_bye_frame *)buffer, size); ret = handle_bye_packet((kvz_rtp::frame::rtcp_bye_frame *)buffer, size);
break; break;
case kvz_rtp::frame::FRAME_TYPE_APP: case kvz_rtp::frame::RTCP_FT_APP:
ret = handle_app_packet((kvz_rtp::frame::rtcp_app_frame *)buffer, size); ret = handle_app_packet((kvz_rtp::frame::rtcp_app_frame *)buffer, size);
break; break;
} }