[Bugfix][API-782][rtp] add 1 set audio parameter for rtp
Change-Id: I3b75d4f3e65e6bafd297f3ee06f2c76a2614ab0f
diff --git a/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h b/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
index 21de03b..00f8f4c 100755
--- a/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
+++ b/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
@@ -151,7 +151,7 @@
typedef enum{
Rtp_Ssrc_random = 0,
- RTP_Ssrc_specific =1,
+ Rtp_Ssrc_specific =1,
}LYNQ_Rtp_Ssrc_Mode;
/*set*/
@@ -163,12 +163,12 @@
int lynq_set_call_rtp_ssrc(const LYNQ_Rtp_Ssrc_Mode ssrc_mode, const unsigned int ssrc);
/*get*/
-LYNQ_Audio_Mode lynq_get_voice_audio_mode();
+int lynq_get_voice_audio_mode(int* voice_audio_mode);
int lynq_get_remote_rtp_ip(char* ip, const int ip_length);
int lynq_get_vlan_info(char* vlan_info, const int vlan_info_length);
int lynq_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port);
int lynq_get_rtp_param(int* clock_rate,int* channels, int* latency);//only for client
-int lynq_get_call_rtp_ssrc(LYNQ_Rtp_Ssrc_Mode* ssrc_mod, unsigned int* ssrc);
+int lynq_get_call_rtp_ssrc(int* ssrc_mod, unsigned int* ssrc);
/*Audio Path setting end*/
void lynq_set_test_mode(const int test_mode);
diff --git a/src/lynq/lib/liblynq-call/lynq_call.cpp b/src/lynq/lib/liblynq-call/lynq_call.cpp
index d973bc7..65ce400 100755
--- a/src/lynq/lib/liblynq-call/lynq_call.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call.cpp
@@ -797,8 +797,6 @@
return LYNQ_E_INNER_ERROR;
}
- lynq_init_rtp();
-
g_module_init_flag = MODULE_RUNNING;
return 0;
}
@@ -810,8 +808,7 @@
LYERRLOG("module state is %d",g_module_init_flag);
return LYNQ_E_CONFLICT;
}
- lynq_call_hungup_all();
- lynq_set_voice_audio_mode(AUDIO_MODE_CODEC);
+ lynq_call_hungup_all();
g_module_init_flag = MODULE_SWITCHING;
lynq_close_all_urc_socket_thread();
lynq_close_all_rc_socket_thread();
diff --git a/src/lynq/lib/liblynq-call/lynq_call_common.h b/src/lynq/lib/liblynq-call/lynq_call_common.h
index 21077df..e65f243 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_common.h
+++ b/src/lynq/lib/liblynq-call/lynq_call_common.h
@@ -19,5 +19,5 @@
void urc_ecall_msg_process(Parcel *p);
#endif
-void lynq_init_rtp();
+int lynq_get_common_request(int request_id, int* status);
#endif
diff --git a/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp b/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
index b012907..3471245 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
@@ -483,7 +483,7 @@
}
if(enable<0)
{
- if(enable >-200)
+ if(enable >-300)
{
goto set_ivs_end;
// lynq_set_common_request(RIL_REQUEST_ECALL_SET_IVS,1,"%d",enable);
@@ -494,7 +494,7 @@
}
else
{
- s_ecall_whether_preempt= ((-200-enable) & 0x11);
+ s_ecall_whether_preempt= ((-300-enable) & 0x11);
}
return RESULT_OK;
}
diff --git a/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp b/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
index 9e0d546..ae3c536 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
@@ -17,208 +17,51 @@
#include "lynq_call.h"
#include "lynq_module_common.h"
#include "lynq_call_common.h"
-
-#define RTP_FROM_CMD "gst-launch-1.0 -v udpsrc port=%d caps=\'application/x-rtp, media=(string)audio, clock-rate=(int)%d, channels=(int)%d\' ! rtpjitterbuffer latency=%d ! rtppcmadepay ! alawdec ! audioresample ! audioconvert ! alsasink device=\'hw:0,2\'"
-#define RTP_TO_CMD "gst-launch-1.0 -v alsasrc device=\'hw:0,6\' ! audioconvert ! audioresample ! alawenc ! rtppcmapay ! %s udpsink host=%s %s auto-multicast=true port=%d"
-#define RTP_VLAN_INFO_FORMAT "multicast-iface=\"%s\""
-#define RTP_SSRC_INFO_FORMAT " rtpmux name=mux ssrc=%u !"
+#include "lynq_module_socket.h"
#define USER_LOG_TAG "LYNQ_CALL"
-typedef struct
-{
- char ip[MAX_IP_LENGTH];
- int port;
- LYNQ_Rtp_Ssrc_Mode ssrc_mode;
- unsigned int ssrc;
- char vlan_info[MAX_VLAN_INFO_LENGTH];
-}lynq_rtp_server_info;
+#define MAX_IP_LENGTH 128
+#define MAX_VLAN_INFO_LENGTH 128
-typedef struct
-{
- int port;
- int clockrate;
- int latency;
- int channels;
-}lynq_rtp_client_info;
-static lynq_rtp_client_info g_rtp_client_info;
-static lynq_rtp_server_info g_rtp_server_info;
+static char * lynqStrdupReadString(Parcel* &p) {
+ size_t stringlen;
+ const char16_t *s16;
-static pthread_t g_rtp_thread[RTP_MODE_MAX];
-static bool g_rtp_thread_valid[RTP_MODE_MAX];
-
-void lynq_init_rtp()
-{
- memset(&g_rtp_client_info,0,sizeof(g_rtp_client_info));
- memset(&g_rtp_server_info,0,sizeof(g_rtp_server_info));
-
-
- lynq_set_rtp_param(8000,1,400);
-
- for(int i=0;i<RTP_MODE_MAX;i++)
- {
- lynq_set_rtp_port(i,6666);
- g_rtp_thread_valid[i] = 0;
- }
-
- LYDBGLOG("lynq init rtp success!!!");
- return;
-}
-
-/*Audio Path setting begin*/
-/*sub function*/
-void lynq_set_rtp_mixer_ctrl(int enable_rtp)
-{
- char cmd[256];
- LYINFLOG("set_rtp_mixer_ctrl %d", enable_rtp);
- if(enable_rtp)
- {
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 1);
- system(cmd);
- }
- else
- {
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on\" %d", 1);
- system(cmd);
- }
-}
-
-void* lynq_start_rtp_cmd(void *arg)
-{
- int* rtp_mode= (int*) arg;
- char cmd[384];
- char vlan_para_string[sizeof(RTP_VLAN_INFO_FORMAT)+MAX_VLAN_INFO_LENGTH-2/*sizeof "%s"*/]={0};
- char ssrc_para_string[sizeof(RTP_SSRC_INFO_FORMAT)+MAX_SSRC_INFO_LENGTH-2/*sizeof "%u"*/]={0};
- LYINFLOG("lynq_start_rtp_cmd: rtp_mode is %d",(*rtp_mode));
- if ((*rtp_mode) == RTP_CLIENT)
- {
- sprintf(cmd,RTP_FROM_CMD, \
- g_rtp_client_info.port,g_rtp_client_info.clockrate,g_rtp_client_info.channels, \
- g_rtp_client_info.latency);
- // LYINFLOG("start from rtp play: cmd is %s",cmd);
- system(cmd);
- }
- else if ((*rtp_mode) == RTP_SERVER)
- {
- if(strlen(g_rtp_server_info.vlan_info)>0)
- {
- sprintf(vlan_para_string,RTP_VLAN_INFO_FORMAT,g_rtp_server_info.vlan_info);
- }
-
- if(g_rtp_server_info.ssrc_mode == RTP_Ssrc_specific)
- {
- sprintf(ssrc_para_string,RTP_SSRC_INFO_FORMAT,g_rtp_server_info.ssrc);
- }
- sprintf(cmd,RTP_TO_CMD, \
- ssrc_para_string, g_rtp_server_info.ip,vlan_para_string,g_rtp_server_info.port);
-
- LYINFLOG("start to rtp play: cmd is %s",cmd);
- system(cmd);
- }
- return NULL;
-}
-
-int lynq_start_rtp_thread(int rtp_mode)
-{
- int ret;
- pthread_attr_t attr;
- static int start_mode[RTP_MODE_MAX]={0,1};
-
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&(g_rtp_thread[rtp_mode]),&attr,lynq_start_rtp_cmd,&(start_mode[rtp_mode]));
- if(ret != 0)
- {
- g_rtp_thread_valid[rtp_mode]=0;
- LYERRLOG("rtp create %d pthread error, ret is %d",rtp_mode, ret);
- return ret;
- }
- g_rtp_thread_valid[rtp_mode]=1;
- return RESULT_OK;
+ s16 = p->readString16Inplace(&stringlen);
+ return strndup16to8(s16, stringlen);
}
/*set*/
int lynq_set_voice_audio_mode(const LYNQ_Audio_Mode audio_mode)
{
- int ret;
- int i;
-
- if(audio_mode==AUDIO_MODE_RTP)
+ if(g_module_init_flag != MODULE_RUNNING)
{
- lynq_set_rtp_mixer_ctrl(1);
- for(i=0;i<RTP_MODE_MAX;i++)
- {
- if(!g_rtp_thread_valid[i])
- {
- if(lynq_start_rtp_thread(i)!= 0)
- {
- LYERRLOG("start rtp %d fail",i);
- break;
- }
- else
- {
- LYINFLOG("start rtp %d suc",i);
- }
- }
- else
- {
- LYERRLOG("rtp %d needn't start",i);
- }
- }
- if(i!= RTP_MODE_MAX)
- {
- LYERRLOG("start rtp whole fail");
- lynq_set_voice_audio_mode(AUDIO_MODE_CODEC);
- return RESULT_ERROR;
- }
- LYINFLOG("start rtp whole suc");
- return RESULT_OK;
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
}
- else if(audio_mode==AUDIO_MODE_CODEC)
+ if(audio_mode > AUDIO_MODE_RTP || audio_mode < AUDIO_MODE_CODEC)
{
- for(i=0;i<RTP_MODE_MAX;i++)
- {
- if(g_rtp_thread_valid[i])
- {
- ret = pthread_cancel(g_rtp_thread[i]);
- LYINFLOG("pthread cancel rtp %d ret = %d",i,ret);
- ret = pthread_join(g_rtp_thread[i],NULL);
- LYINFLOG("pthread join rtp %d ret = %d",i,ret);
- g_rtp_thread_valid[i] = 0;
- }
- else
- {
- LYINFLOG("rtp %d needn't stop",i);
- }
- }
- lynq_set_rtp_mixer_ctrl(0);
- LYINFLOG("stop rtp suc");
+ return LYNQ_E_PARAMETER_ANONALY;
}
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,1,"%d",audio_mode);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
+
int lynq_set_remote_rtp_ip(const char* ip, const int ip_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
if (NULL == ip)
{
LYERRLOG("ip is NULL!!!");
@@ -230,15 +73,22 @@
return LYNQ_E_PARAMETER_ANONALY;
}
- bzero(g_rtp_server_info.ip,MAX_IP_LENGTH);
- strcpy(g_rtp_server_info.ip,ip);
-
- LYINFLOG("lynq_set_remote_rtp_ip suc: ip is %s, length is %d", ip,ip_length);
-
- return RESULT_OK;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_REMOTE_RTP_IP,1,"%s",ip);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
int lynq_set_vlan_info(const char* vlan_info, const int vlan_info_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if (NULL == vlan_info)
{
LYERRLOG("vlan_info is NULL!!!");
@@ -251,141 +101,258 @@
return LYNQ_E_PARAMETER_ANONALY;
}
-
- bzero(g_rtp_server_info.vlan_info,MAX_VLAN_INFO_LENGTH);
- strcpy(g_rtp_server_info.vlan_info,vlan_info);
-
- LYINFLOG("lynq_set_vlan_info suc: vlan is %s, length is %d", vlan_info,vlan_info_length);
-
- return RESULT_OK;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_VLAN_INFO,1,"%s",vlan_info);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
int lynq_set_rtp_port(const LYNQ_Rtp_Mode rtp_mode, const int port)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if (port < 0)
{
LYERRLOG("invalid port number %d", port);
return LYNQ_E_PARAMETER_ANONALY;
}
- if (rtp_mode == 0)
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_RTP_PORT,2,"%d %d",rtp_mode,port);
+ if(ret==RESULT_OK)
{
- g_rtp_client_info.port = port;
+ delete p;
}
- else if (rtp_mode == 1)
- {
- g_rtp_server_info.port = port;
- }
- LYINFLOG("lynq_set_rtp_port suc: LYNQ_Rtp_Mode is %d, port is %d", rtp_mode, port);
- return RESULT_OK;
+ return ret;
}
int lynq_set_rtp_param(const int clock_rate,const int channels,const int latency) //only for client mode
{
- g_rtp_client_info.clockrate = clock_rate;
- g_rtp_client_info.channels = channels;
- g_rtp_client_info.latency = latency;
- LYINFLOG("lynq_set_rtp_param suc: clockrate is %d, channels is %d, latency is %d", clock_rate, channels, latency);
- return RESULT_OK;
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_RTP_PARAM,3,"%d %d %d",clock_rate,channels,latency);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
+
int lynq_set_call_rtp_ssrc(const LYNQ_Rtp_Ssrc_Mode ssrc_mode,const unsigned int ssrc)
{
- if(ssrc_mode < Rtp_Ssrc_random || ssrc_mode > RTP_Ssrc_specific)
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
+ if(ssrc_mode < Rtp_Ssrc_random || ssrc_mode > Rtp_Ssrc_specific)
{
return LYNQ_E_PARAMETER_ANONALY;
}
- g_rtp_server_info.ssrc_mode = ssrc_mode;
- g_rtp_server_info.ssrc = ssrc ;
- LYINFLOG("%s suc: param is %d %d", __func__, ssrc_mode, ssrc);
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_CALL_RTP_SSRC,2,"%d %u",ssrc_mode,ssrc);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
/*get*/
-LYNQ_Audio_Mode lynq_get_voice_audio_mode()
+int lynq_get_voice_audio_mode(int* voice_audio_mode)
{
- if(g_rtp_thread_valid[0])
+ if(g_module_init_flag != MODULE_RUNNING)
{
- return AUDIO_MODE_RTP;
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
}
- else
- {
- return AUDIO_MODE_CODEC;
- }
+
+ return lynq_get_common_request(LYNQ_REQUEST_GET_VOICE_AUDIO_MODE,voice_audio_mode);
}
int lynq_get_remote_rtp_ip(char* ip, const int ip_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(ip==NULL)
{
LYERRLOG("ip is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- if(ip_length < strlen(g_rtp_server_info.ip)+1)
+ if(ip_length > MAX_IP_LENGTH)
{
- LYERRLOG("ip length %d is shorter than saved ip length %d",ip_length,strlen(g_rtp_server_info.ip)+1);
+ LYERRLOG("ip length %d is greater than max ip length %d",ip_length,MAX_IP_LENGTH);
return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_REMOTE_RTP_IP,0,"");
+
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ int num ;
+ char *resp;
+
+ p->readInt32(&num);
+ if(num != 1)
+ {
+ LYERRLOG("no paramters or num %d too great",num);
+ delete p;
+ return LYNQ_E_INNER_ERROR;
+ }else{
+ resp = lynqStrdupReadString(p);
+ strcpy(ip,resp);
+ free(resp);
}
-
- bzero(ip,ip_length);
- strcpy(ip,g_rtp_server_info.ip);
-
- return RESULT_OK;
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
int lynq_get_vlan_info(char* vlan_info, const int vlan_info_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(vlan_info==NULL)
{
LYERRLOG("vlan info is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- if(vlan_info_length < strlen(g_rtp_server_info.vlan_info)+1)
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_VLAN_INFO,0,"");
+
+ if(ret!=RESULT_OK)
{
- LYERRLOG("vlan info length %d is shorter than saved vlan info length %d",vlan_info_length,strlen(g_rtp_server_info.vlan_info)+1);
- return LYNQ_E_PARAMETER_ANONALY;
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ int num ;
+ char *resp;
+
+ p->readInt32(&num);
+ if(num != 1)
+ {
+ LYERRLOG("no paramters or num %d too great",num);
+ delete p;
+ return LYNQ_E_INNER_ERROR;
+ }else{
+ resp = lynqStrdupReadString(p);
+ strcpy(vlan_info,resp);
+ free(resp);
}
-
- bzero(vlan_info,vlan_info_length);
- strcpy(vlan_info,g_rtp_server_info.vlan_info);
-
- return RESULT_OK;
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
+
int lynq_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(port==NULL)
{
return LYNQ_E_PARAMETER_ANONALY;
}
- if (rtp_mode == 0)
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_RTP_PORT,1,"%d",rtp_mode);
+ if(ret==RESULT_OK)
{
- *port = g_rtp_client_info.port;
+ p->readInt32(port);
+ delete p;
}
- else if (rtp_mode == 1)
- {
- *port = g_rtp_server_info.port;
- }
- return RESULT_OK;
+ return ret;
}
int lynq_get_rtp_param(int* clock_rate, int* channels, int* latency)//only for client mode
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(clock_rate == NULL || channels ==NULL || latency ==NULL)
{
LYERRLOG("input parameter is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- *clock_rate = g_rtp_client_info.clockrate;
- *channels = g_rtp_client_info.channels ;
- *latency = g_rtp_client_info.latency;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_RTP_PARAM,0,"");
- return RESULT_OK;
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ p->readInt32(clock_rate);
+ p->readInt32(channels);
+ p->readInt32(latency);
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
-int lynq_get_call_rtp_ssrc(LYNQ_Rtp_Ssrc_Mode* ssrc_mode, unsigned int* ssrc)
+
+int lynq_get_call_rtp_ssrc(int* ssrc_mode, unsigned int* ssrc)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(ssrc_mode == NULL || ssrc ==NULL)
{
LYERRLOG("input parameter is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
-
- *ssrc_mode = g_rtp_server_info.ssrc_mode;
- *ssrc = g_rtp_server_info.ssrc ;
-
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_CALL_RTP_SSRC,0,"");
+
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ p->readInt32(ssrc_mode);
+ p->readUint32(ssrc);
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
diff --git a/src/lynq/lib/liblynq-call/lynq_module_common.h b/src/lynq/lib/liblynq-call/lynq_module_common.h
index 590971a..1143b8c 100755
--- a/src/lynq/lib/liblynq-call/lynq_module_common.h
+++ b/src/lynq/lib/liblynq-call/lynq_module_common.h
@@ -30,6 +30,20 @@
#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
+#define LYNQ_REQUEST_SET_VOICE_AUDIO_MODE (LYNQ_REQUEST_VENDOR_BASE + 16)
+#define LYNQ_REQUEST_SET_REMOTE_RTP_IP (LYNQ_REQUEST_VENDOR_BASE + 17)
+#define LYNQ_REQUEST_SET_VLAN_INFO (LYNQ_REQUEST_VENDOR_BASE + 18)
+#define LYNQ_REQUEST_SET_RTP_PORT (LYNQ_REQUEST_VENDOR_BASE + 19)
+#define LYNQ_REQUEST_SET_RTP_PARAM (LYNQ_REQUEST_VENDOR_BASE + 20)
+#define LYNQ_REQUEST_GET_VOICE_AUDIO_MODE (LYNQ_REQUEST_VENDOR_BASE + 21)
+#define LYNQ_REQUEST_GET_REMOTE_RTP_IP (LYNQ_REQUEST_VENDOR_BASE + 22)
+#define LYNQ_REQUEST_GET_VLAN_INFO (LYNQ_REQUEST_VENDOR_BASE + 23)
+#define LYNQ_REQUEST_GET_RTP_PORT (LYNQ_REQUEST_VENDOR_BASE + 24)
+#define LYNQ_REQUEST_GET_RTP_PARAM (LYNQ_REQUEST_VENDOR_BASE + 25)
+#define LYNQ_REQUEST_SET_CALL_RTP_SSRC (LYNQ_REQUEST_VENDOR_BASE + 26)
+#define LYNQ_REQUEST_GET_CALL_RTP_SSRC (LYNQ_REQUEST_VENDOR_BASE + 27)
+
+
/*the same with lynq_interface.h end*/
typedef enum{
diff --git a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp b/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
index ff45c02..378d7a9 100755
--- a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
@@ -320,7 +320,7 @@
int res = 0;
lynq_head_t* phead;
int level,index,size;
- uint8_t * shm_buffer;
+ uint8_t * shm_buffer;
LYINFLOG("urc recv thread is running");
while(module_urc_status)
@@ -1007,6 +1007,18 @@
case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
+ case LYNQ_REQUEST_SET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_SET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_SET_REMOTE_RTP_IP:return "LYNQ_REQUEST_SET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_SET_VLAN_INFO:return "LYNQ_REQUEST_SET_VLAN_INFO";
+ case LYNQ_REQUEST_SET_RTP_PORT:return "LYNQ_REQUEST_SET_RTP_PORT";
+ case LYNQ_REQUEST_SET_RTP_PARAM:return "LYNQ_REQUEST_SET_RTP_PARAM";
+ case LYNQ_REQUEST_GET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_GET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_GET_REMOTE_RTP_IP:return "LYNQ_REQUEST_GET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_GET_VLAN_INFO:return "LYNQ_REQUEST_GET_VLAN_INFO";
+ case LYNQ_REQUEST_GET_RTP_PORT:return "LYNQ_REQUEST_GET_RTP_PORT";
+ case LYNQ_REQUEST_GET_RTP_PARAM:return "LYNQ_REQUEST_GET_RTP_PARAM";
+ case LYNQ_REQUEST_SET_CALL_RTP_SSRC:return "LYNQ_REQUEST_SET_CALL_RTP_SSRC";
+ case LYNQ_REQUEST_GET_CALL_RTP_SSRC:return "LYNQ_REQUEST_GET_CALL_RTP_SSRC";
/*warren add for t800 ril service 2022/1/22 end*/
default: return "<unknown request>";
}