Skip to content

Commit

Permalink
rtp_media_server: clang-format for coherent indentation and coding style
Browse files Browse the repository at this point in the history
  • Loading branch information
linuxmaniac committed May 18, 2023
1 parent 135d551 commit 5f48f91
Show file tree
Hide file tree
Showing 6 changed files with 172 additions and 122 deletions.
43 changes: 28 additions & 15 deletions src/modules/rtp_media_server/rms_dialog_info.c
Expand Up @@ -28,7 +28,8 @@ gen_lock_t *dialog_list_mutex = NULL;
static void rms_action_free(rms_dialog_info_t *si)
{
rms_action_t *a, *tmp;
if (!si->action.prev) return;
if(!si->action.prev)
return;
clist_foreach(&si->action, a, next)
{
tmp = a;
Expand Down Expand Up @@ -64,26 +65,36 @@ int rms_dialog_list_init()
void rms_dialog_list_free()
{
lock_destroy(dialog_list_mutex);
lock_dealloc((void*)dialog_list_mutex);
lock_dealloc((void *)dialog_list_mutex);
shm_free(rms_dialog_list);
}

char *rms_dialog_state_toa(rms_dialog_state_t state) {
if (state == 0) return "RMS_ST_DEFAULT";
else if (state == 1) return "RMS_ST_CONNECTING";
else if (state == 2) return "RMS_ST_CONNECTED";
else if (state == 3) return "RMS_ST_CONNECTED_ACK";
else if (state == 4) return "RMS_ST_DISCONNECTING";
else if (state == 5) return "RMS_ST_DISCONNECTED";
char *rms_dialog_state_toa(rms_dialog_state_t state)
{
if(state == 0)
return "RMS_ST_DEFAULT";
else if(state == 1)
return "RMS_ST_CONNECTING";
else if(state == 2)
return "RMS_ST_CONNECTED";
else if(state == 3)
return "RMS_ST_CONNECTED_ACK";
else if(state == 4)
return "RMS_ST_DISCONNECTING";
else if(state == 5)
return "RMS_ST_DISCONNECTED";
return "RMS_ST_UNKNOWN";
}

int rms_dialog_info_set_state(rms_dialog_info_t *di, rms_dialog_state_t state)
{
if (state <= di->state) {
LM_ERR("[%s] >> [%s] (invalid state transition) call-id[%s]\n", rms_dialog_state_toa(di->state), rms_dialog_state_toa(state), di->callid.s);
if(state <= di->state) {
LM_ERR("[%s] >> [%s] (invalid state transition) call-id[%s]\n",
rms_dialog_state_toa(di->state), rms_dialog_state_toa(state),
di->callid.s);
} else {
LM_NOTICE("[%s] >> [%s] call-id[%s]\n", rms_dialog_state_toa(di->state), rms_dialog_state_toa(state), di->callid.s);
LM_NOTICE("[%s] >> [%s] call-id[%s]\n", rms_dialog_state_toa(di->state),
rms_dialog_state_toa(state), di->callid.s);
di->state = state;
}
return 1;
Expand Down Expand Up @@ -130,7 +141,7 @@ rms_dialog_info_t *rms_dialog_search_sync(struct sip_msg *msg)

void rms_dialog_add(rms_dialog_info_t *si)
{
if (in_rms_process) {
if(in_rms_process) {
clist_append(rms_dialog_list, si, next, prev);
} else {
lock(dialog_list_mutex);
Expand All @@ -141,7 +152,7 @@ void rms_dialog_add(rms_dialog_info_t *si)

void rms_dialog_rm(rms_dialog_info_t *si)
{
if (in_rms_process) {
if(in_rms_process) {
clist_append(rms_dialog_list, si, next, prev);
} else {
lock(dialog_list_mutex);
Expand All @@ -156,7 +167,9 @@ int rms_dialog_free(rms_dialog_info_t *si)
rms_sdp_info_free(&si->sdp_info_offer);
rms_sdp_info_free(&si->sdp_info_answer);
if(si->media.pt) {
shm_free(si->media.pt); // TODO: should be destroyed in compatible way from MS manager process
shm_free(
si->media
.pt); // TODO: should be destroyed in compatible way from MS manager process
si->media.pt = NULL;
}
if(si->callid.s) {
Expand Down
6 changes: 4 additions & 2 deletions src/modules/rtp_media_server/rms_dialog_info.h
Expand Up @@ -27,7 +27,8 @@ typedef struct rms_dialog_info rms_dialog_info_t;
// struct call_leg_media;
// typedef struct call_leg_media call_leg_media_t;

typedef enum rms_action_type {
typedef enum rms_action_type
{
RMS_NONE,
RMS_START,
RMS_STOP,
Expand Down Expand Up @@ -77,7 +78,8 @@ typedef struct ms_res
RtpProfile *rtp_profile;
} ms_res_t;

typedef enum rms_dialog_state {
typedef enum rms_dialog_state
{
RMS_ST_DEFAULT,
RMS_ST_CONNECTING,
RMS_ST_CONNECTED,
Expand Down
64 changes: 38 additions & 26 deletions src/modules/rtp_media_server/rms_media.c
Expand Up @@ -48,10 +48,7 @@ MSFilterDesc *rms_ms_filter_descs[] = {&ms_alaw_dec_desc, &ms_alaw_enc_desc,
&ms_equalizer_desc, &ms_channel_adapter_desc, &ms_audio_mixer_desc,
&ms_tone_detector_desc, &ms_speex_dec_desc, &ms_speex_enc_desc,
&ms_speex_ec_desc, &ms_file_player_desc, &ms_file_rec_desc,
&ms_resample_desc,
&ms_opus_dec_desc,
&ms_opus_enc_desc,
NULL};
&ms_resample_desc, &ms_opus_dec_desc, &ms_opus_enc_desc, NULL};

static MSFactory *rms_create_factory()
{
Expand Down Expand Up @@ -97,10 +94,12 @@ void rms_media_destroy(call_leg_media_t *m)
m->ms_factory = NULL;
}

int create_session_payload(call_leg_media_t *m) {
int create_session_payload(call_leg_media_t *m)
{
LM_INFO("RTP [%p][%d]\n", m->pt, m->pt->type);
m->rtp_profile=rtp_profile_new("Call profile");
if(!m->rtp_profile) return 0;
m->rtp_profile = rtp_profile_new("Call profile");
if(!m->rtp_profile)
return 0;
rtp_profile_set_payload(m->rtp_profile, m->pt->type, m->pt);
rtp_session_set_profile(m->rtps, m->rtp_profile);
rtp_session_set_payload_type(m->rtps, m->pt->type);
Expand All @@ -109,7 +108,7 @@ int create_session_payload(call_leg_media_t *m) {

int create_call_leg_media(call_leg_media_t *m)
{
if (!m) {
if(!m) {
return 0;
}
rms_stop_media(m);
Expand Down Expand Up @@ -176,16 +175,21 @@ int rms_playfile(call_leg_media_t *m, rms_action_t *a)
ms_filter_call_method(
m->ms_player, MS_FILE_PLAYER_OPEN, (void *)a->param.s);
ms_filter_call_method(m->ms_player, MS_FILE_PLAYER_START, NULL);
ms_filter_call_method(m->ms_player, MS_FILTER_GET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(
m->ms_player, MS_FILTER_GET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(m->ms_player, MS_FILTER_GET_NCHANNELS, &channels);

if (m->ms_resampler) {
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
if(m->ms_resampler) {
ms_filter_call_method(
m->ms_resampler, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
LM_INFO("clock[%d]file[%d]\n", m->pt->clock_rate, file_sample_rate);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_SAMPLE_RATE, &m->pt->clock_rate);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_NCHANNELS, &m->pt->channels);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_SAMPLE_RATE,
&m->pt->clock_rate);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_NCHANNELS,
&m->pt->channels);
}
LM_INFO("[%s]clock[%d][%d]\n", m->pt->mime_type, m->pt->clock_rate, file_sample_rate);
LM_INFO("[%s]clock[%d][%d]\n", m->pt->mime_type, m->pt->clock_rate,
file_sample_rate);
return 1;
}

Expand All @@ -195,7 +199,7 @@ int rms_start_media(call_leg_media_t *m, char *file_name)
int channels = 1;
int file_sample_rate = 8000;

if (!m) {
if(!m) {
goto error;
}
rms_stop_media(m);
Expand All @@ -214,26 +218,34 @@ int rms_start_media(call_leg_media_t *m, char *file_name)
goto error;
LM_INFO("m[%p]call-id[%p]pt[%s]\n", m, m->di->callid.s, m->pt->mime_type);

ms_filter_call_method(m->ms_player, MS_FILTER_SET_OUTPUT_NCHANNELS, &channels);
ms_filter_call_method(
m->ms_player, MS_FILTER_SET_OUTPUT_NCHANNELS, &channels);
ms_filter_call_method_noarg(m->ms_player, MS_FILE_PLAYER_START);
ms_filter_call_method(m->ms_player, MS_FILTER_GET_SAMPLE_RATE, &file_sample_rate);
if (strcasecmp(m->pt->mime_type,"opus") == 0) {
ms_filter_call_method(m->ms_encoder, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(m->ms_encoder, MS_FILTER_SET_NCHANNELS, &channels);
ms_filter_call_method(
m->ms_player, MS_FILTER_GET_SAMPLE_RATE, &file_sample_rate);
if(strcasecmp(m->pt->mime_type, "opus") == 0) {
ms_filter_call_method(
m->ms_encoder, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(
m->ms_encoder, MS_FILTER_SET_NCHANNELS, &channels);
} else {
m->ms_resampler = ms_factory_create_filter(m->ms_factory, MS_RESAMPLE_ID);
if (!m->ms_resampler) goto error;
m->ms_resampler =
ms_factory_create_filter(m->ms_factory, MS_RESAMPLE_ID);
if(!m->ms_resampler)
goto error;
}

if (m->ms_resampler) {
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_SAMPLE_RATE, &m->pt->clock_rate);
if(m->ms_resampler) {
ms_filter_call_method(
m->ms_resampler, MS_FILTER_SET_SAMPLE_RATE, &file_sample_rate);
ms_filter_call_method(m->ms_resampler, MS_FILTER_SET_OUTPUT_SAMPLE_RATE,
&m->pt->clock_rate);
}

// sending graph
ms_connection_helper_start(&h);
ms_connection_helper_link(&h, m->ms_player, -1, 0);
if (m->ms_resampler)
if(m->ms_resampler)
ms_connection_helper_link(&h, m->ms_resampler, 0, 0);
ms_connection_helper_link(&h, m->ms_encoder, 0, 0);
ms_connection_helper_link(&h, m->ms_rtpsend, 0, -1);
Expand Down
49 changes: 27 additions & 22 deletions src/modules/rtp_media_server/rms_sdp.c
Expand Up @@ -154,15 +154,17 @@ int rms_sdp_prepare_new_body(rms_sdp_info_t *sdp_info, PayloadType *pt)
body->len += strlen(sdp_c);

char sdp_m[128];
snprintf(sdp_m, 128, "m=audio %d RTP/AVP %d\r\n", sdp_info->udp_local_port, pt->type);
snprintf(sdp_m, 128, "m=audio %d RTP/AVP %d\r\n", sdp_info->udp_local_port,
pt->type);
body->len += strlen(sdp_m);

char sdp_a[128];
if (pt->type >= 96) {
if (strcasecmp(pt->mime_type,"opus") == 0) {
if(pt->type >= 96) {
if(strcasecmp(pt->mime_type, "opus") == 0) {
snprintf(sdp_a, 128, "a=rtpmap:%d opus/48000/2\r\n", pt->type);
} else {
snprintf(sdp_a, 128, "a=rtpmap:%d %s/%d/%d\r\n", pt->type, pt->mime_type, pt->clock_rate, pt->channels);
snprintf(sdp_a, 128, "a=rtpmap:%d %s/%d/%d\r\n", pt->type,
pt->mime_type, pt->clock_rate, pt->channels);
}
body->len += strlen(sdp_a);
}
Expand All @@ -177,7 +179,7 @@ int rms_sdp_prepare_new_body(rms_sdp_info_t *sdp_info, PayloadType *pt)
strcat(body->s, sdp_t);
strcat(body->s, sdp_m);

if (pt->type >= 96) {
if(pt->type >= 96) {
strcat(body->s, sdp_a);
}
return 1;
Expand All @@ -200,42 +202,44 @@ PayloadType *rms_sdp_check_payload_type(PayloadType *pt, rms_sdp_info_t *sdp)
pt->clock_rate = 8000;
pt->channels = 1;
pt->mime_type = NULL;
if (pt->type > 127) {
if(pt->type > 127) {
return NULL;
} else if (pt->type >= 96) {
} else if(pt->type >= 96) {
char *rtpmap = rms_sdp_get_rtpmap(sdp->recv_body, pt->type);
if (!rtpmap) return NULL;
char *s_mime_type = strtok(rtpmap,"/");
if (!s_mime_type) {
if(!rtpmap)
return NULL;
char *s_mime_type = strtok(rtpmap, "/");
if(!s_mime_type) {
shm_free(rtpmap);
return NULL;
}
if (strcasecmp(s_mime_type,"opus") == 0) {
if(strcasecmp(s_mime_type, "opus") == 0) {
int payload_type = pt->type;
memcpy(pt, &payload_type_opus, sizeof(PayloadType));
pt->type = payload_type;
char * s_clock_rate = strtok(NULL,"/");
char * s_channels = strtok(NULL,"/");
if (s_clock_rate) {
char *s_clock_rate = strtok(NULL, "/");
char *s_channels = strtok(NULL, "/");
if(s_clock_rate) {
pt->clock_rate = atoi(s_clock_rate);
} else {
pt->clock_rate = 8000;
}
if (s_channels) {
if(s_channels) {
pt->channels = atoi(s_channels);
} else {
pt->channels = 2;
}
shm_free(rtpmap);
LM_INFO("[%p][%d][%s|%d|%d]\n", pt, pt->type, pt->mime_type, pt->clock_rate, pt->channels);
LM_INFO("[%p][%d][%s|%d|%d]\n", pt, pt->type, pt->mime_type,
pt->clock_rate, pt->channels);
return pt;
}
shm_free(pt->mime_type);
shm_free(rtpmap);

} else if (pt->type == 0) {
} else if(pt->type == 0) {
pt->mime_type = rms_char_dup("pcmu", 1); /* ia=rtpmap:0 PCMU/8000*/
} else if (pt->type == 8) {
} else if(pt->type == 8) {
pt->mime_type = rms_char_dup("pcma", 1);
}
// } else if (pt->type == 9) {
Expand All @@ -254,16 +258,17 @@ PayloadType *rms_sdp_select_payload(rms_sdp_info_t *sdp)
char *payloads = sdp->payloads.s;
char *payload_type_number = strtok(payloads, " ");

if (!pt) {
if(!pt) {
return NULL;
}
while (payload_type_number) {
while(payload_type_number) {
pt->type = atoi(payload_type_number);
pt = rms_sdp_check_payload_type(pt, sdp);
if (pt->mime_type) return pt;
if(pt->mime_type)
return pt;
payload_type_number = strtok(NULL, " ");
}
if (!pt->mime_type) {
if(!pt->mime_type) {
LM_INFO("unsuported codec\n");
shm_free(pt); // payload_type_destroy(pt);
return NULL;
Expand Down

0 comments on commit 5f48f91

Please sign in to comment.