作者 潘浩彬

00 00 01 02更新

正在显示 96 个修改的文件 包含 3171 行增加1001 行删除
@@ -27,12 +27,14 @@ typedef enum { @@ -27,12 +27,14 @@ typedef enum {
27 JZ_INSCODE_5AFRAME_ASKFORCONNECT = 0x10000100, //申请连接 27 JZ_INSCODE_5AFRAME_ASKFORCONNECT = 0x10000100, //申请连接
28 28
29 JZ_INSCODE_5AFRAME_REALTIMEMP2_START = 0x10000200, //开启实时MP2 29 JZ_INSCODE_5AFRAME_REALTIMEMP2_START = 0x10000200, //开启实时MP2
30 - JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION = 0x10000201, //传输实时MP2 30 + JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION = 0x10000201, //无限制传输实时MP2
31 JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP = 0x10000202, //结束实时MP2 31 JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP = 0x10000202, //结束实时MP2
  32 + JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION = 0x10000203, //有限制传输MP2
32 33
33 JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START = 0x10000300, //打开音频文件上传 34 JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START = 0x10000300, //打开音频文件上传
34 - JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION = 0x10000301, //传输音频文件 35 + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION = 0x10000301, //无限制传输音频文件
35 JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP = 0x10000302, //关闭音频文件上传 36 JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP = 0x10000302, //关闭音频文件上传
  37 + JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION = 0x10000303, //定长传输音频文件
36 38
37 JZ_INSCODE_5AFRAME_AUDIO_PLAYFILE = 0x10000400, //播放指定音频 39 JZ_INSCODE_5AFRAME_AUDIO_PLAYFILE = 0x10000400, //播放指定音频
38 JZ_INSCODE_5AFRAME_AUDIO_CONTINUE = 0x10000401, //音频继续播放 40 JZ_INSCODE_5AFRAME_AUDIO_CONTINUE = 0x10000401, //音频继续播放
@@ -83,17 +85,21 @@ typedef enum { @@ -83,17 +85,21 @@ typedef enum {
83 JZ_INSCODE_5AFRAME_TTS_SET_TONE = 0x10000801, //TTS设置音色 85 JZ_INSCODE_5AFRAME_TTS_SET_TONE = 0x10000801, //TTS设置音色
84 JZ_INSCODE_5AFRAME_TTS_SET_SPEED = 0x10000802, //TTS设置语速 86 JZ_INSCODE_5AFRAME_TTS_SET_SPEED = 0x10000802, //TTS设置语速
85 JZ_INSCODE_5AFRAME_TTS_TRANS_START = 0x10000803, //TTS开始发送 87 JZ_INSCODE_5AFRAME_TTS_TRANS_START = 0x10000803, //TTS开始发送
86 - JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION = 0x10000804, //TTS正在接收 88 + JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION = 0x10000804, //TTS正在无限制接收
87 JZ_INSCODE_5AFRAME_TTS_TRANS_STOP = 0x10000805, //TTS发送完毕 89 JZ_INSCODE_5AFRAME_TTS_TRANS_STOP = 0x10000805, //TTS发送完毕
88 - 90 + JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION = 0x10000806, //TTS正在定长接收
  91 +
89 JZ_INSCODE_5AFRAME_OPUS_TRANS_START = 0x10000900, //opus传输开始 92 JZ_INSCODE_5AFRAME_OPUS_TRANS_START = 0x10000900, //opus传输开始
90 - JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION = 0x10000901, //opus传输中 93 + JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION = 0x10000901, //opus 无限制传输中
91 JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP = 0x10000902, //opus传输结束 94 JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP = 0x10000902, //opus传输结束
  95 + JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION = 0x10000903, //opus传输中
  96 +
92 JZ_INSCODE_5AFRAME_OPUS_PLAY = 0x10000910, //opus播放 97 JZ_INSCODE_5AFRAME_OPUS_PLAY = 0x10000910, //opus播放
93 98
94 JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_START = 0x10000A00, //开启opus实时语音 99 JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_START = 0x10000A00, //开启opus实时语音
95 - JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION = 0x10000A01, //传输opus实时语音 100 + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION = 0x10000A01, //无限制传输opus实时语音
96 JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP = 0x10000A02, //结束opus实时语音 101 JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP = 0x10000A02, //结束opus实时语音
  102 + JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION = 0x10000A03, //定长传输opus实时语音
97 103
98 JZ_INSCODE_5AFRAME_GIMBAL_PITCH_CONTROL = 0x10000B00, //云台俯仰控制 104 JZ_INSCODE_5AFRAME_GIMBAL_PITCH_CONTROL = 0x10000B00, //云台俯仰控制
99 JZ_INSCODE_5AFRAME_GIMBAL_YAW_CONTROL = 0x10000B01, //云台朝向控制 105 JZ_INSCODE_5AFRAME_GIMBAL_YAW_CONTROL = 0x10000B01, //云台朝向控制
@@ -119,7 +125,7 @@ typedef enum { @@ -119,7 +125,7 @@ typedef enum {
119 //5B类帧 125 //5B类帧
120 JZ_INSCODE_5BFRAME_FRAME = 0x10004000, //发送帧 126 JZ_INSCODE_5BFRAME_FRAME = 0x10004000, //发送帧
121 127
122 - JZ_INSCODE_5BFRAME_INITIATECONNECT = 0x10004101, //回复连接 128 + JZ_INSCODE_5BFRAME_INITIATECONNECT = 0x10004101, //主动连接
123 129
124 JZ_INSCODE_5BFRAME_SUCESS = 0x10004200, //操作成功 130 JZ_INSCODE_5BFRAME_SUCESS = 0x10004200, //操作成功
125 JZ_INSCODE_5BFRAME_DEFEAT = 0x10004201, //操作失败 131 JZ_INSCODE_5BFRAME_DEFEAT = 0x10004201, //操作失败
@@ -55,7 +55,7 @@ int JZsdk_FrameComparsion(char *getdata, int len) @@ -55,7 +55,7 @@ int JZsdk_FrameComparsion(char *getdata, int len)
55 || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) ) 55 || ( (getdata[len -2]!= 0x00) && (getdata[ len -1] != 0x23) )
56 ) 56 )
57 { 57 {
58 - //printf("接受到的帧,没有帧头或者帧尾,退出recv帧判断函数\n"); 58 + printf("接受到的帧,没有帧头或者帧尾,退出recv帧判断函数\n");
59 return JZ_ERROR_SYSTEM_FRAME_ERROR; 59 return JZ_ERROR_SYSTEM_FRAME_ERROR;
60 } 60 }
61 } 61 }
@@ -38,11 +38,21 @@ static int Comparison_5AFRAME_FirstLevelCode_0x51(char *getdata) @@ -38,11 +38,21 @@ static int Comparison_5AFRAME_FirstLevelCode_0x51(char *getdata)
38 return JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP; 38 return JZ_INSCODE_5AFRAME_REALTIMEMP2_STOP;
39 break; 39 break;
40 40
  41 + //有限制传输mp2语言
  42 + case 0xb3:
  43 + return JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION;
  44 + break;
  45 +
41 //打开音频文件上传 46 //打开音频文件上传
42 case 0x01: 47 case 0x01:
43 return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START; 48 return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START;
44 break; 49 break;
45 50
  51 + //有限制传输音频文件
  52 + case 0x02:
  53 + return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION;
  54 + break;
  55 +
46 //关闭音频文件上传 56 //关闭音频文件上传
47 case 0x03: 57 case 0x03:
48 return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP; 58 return JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP;
@@ -245,6 +255,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x57(char *getdata) @@ -245,6 +255,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x57(char *getdata)
245 return JZ_INSCODE_5AFRAME_TTS_TRANS_STOP; 255 return JZ_INSCODE_5AFRAME_TTS_TRANS_STOP;
246 break; 256 break;
247 257
  258 + //定长传输文本
  259 + case 0x05:
  260 + return JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION;
  261 + break;
  262 +
248 default: 263 default:
249 break; 264 break;
250 } 265 }
@@ -281,6 +296,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x59(char *getdata) @@ -281,6 +296,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x59(char *getdata)
281 return JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP; 296 return JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP;
282 break; 297 break;
283 298
  299 + //opus定长传输
  300 + case 0xF3:
  301 + return JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION;
  302 + break;
  303 +
284 //opus播放 304 //opus播放
285 case 0x01: 305 case 0x01:
286 return JZ_INSCODE_5AFRAME_OPUS_PLAY; 306 return JZ_INSCODE_5AFRAME_OPUS_PLAY;
@@ -295,6 +315,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x59(char *getdata) @@ -295,6 +315,11 @@ static int Comparison_5AFRAME_FirstLevelCode_0x59(char *getdata)
295 return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP; 315 return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_STOP;
296 break; 316 break;
297 317
  318 + //opus定长传输文件
  319 + case 0xE3:
  320 + return JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION;
  321 + break;
  322 +
298 default: 323 default:
299 return JZ_ERROR_SYSTEM_FRAME_ERROR; 324 return JZ_ERROR_SYSTEM_FRAME_ERROR;
300 break; 325 break;
@@ -18,14 +18,6 @@ int JZsdk_GetFrameTemplate(int InsCode ,char *str, int *str_len) @@ -18,14 +18,6 @@ int JZsdk_GetFrameTemplate(int InsCode ,char *str, int *str_len)
18 * 18 *
19 ********************************************************************************************************************************************************/ 19 ********************************************************************************************************************************************************/
20 20
21 - case JZ_INSCODE_5AFRAME_ASKFORCONNECT:  
22 - {  
23 - char sendbuf[12] = {0x5A ,0x5A ,0x77 ,0x00 ,0x0C ,0x00 ,0x00 ,0x50 ,0x51 ,0x00 ,0x00 ,0x23};  
24 - memcpy(str, sendbuf, 12);  
25 - *str_len = 12;  
26 - }  
27 - break;  
28 -  
29 case JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_FREQUENCY: 21 case JZ_INSCODE_5AFRAME_SEARCHLIGHT_SET_FREQUENCY:
30 { 22 {
31 char sendbuf[13] = {0x5A ,0x5A ,0x77 ,0x00 ,0x0D ,0x00 ,0x00 ,0x61 ,0x51 ,0x00 ,0x00 ,0x00 ,0x23}; 23 char sendbuf[13] = {0x5A ,0x5A ,0x77 ,0x00 ,0x0D ,0x00 ,0x00 ,0x61 ,0x51 ,0x00 ,0x00 ,0x00 ,0x23};
@@ -196,14 +196,6 @@ void JZsdk_UserLogOutput(E_JZsdkConsoleLogLevel level, const char *fmt, ...) @@ -196,14 +196,6 @@ void JZsdk_UserLogOutput(E_JZsdkConsoleLogLevel level, const char *fmt, ...)
196 default: 196 default:
197 break; 197 break;
198 } 198 }
199 -  
200 - //减少打印  
201 - if (level < JZSDK_LOG_LEVEL)  
202 - {  
203 - return;  
204 - }  
205 -  
206 -  
207 // 使用可变参数处理传入的格式化字符串和可变参数 199 // 使用可变参数处理传入的格式化字符串和可变参数
208 va_list args; 200 va_list args;
209 va_start(args, fmt); 201 va_start(args, fmt);
@@ -59,8 +59,6 @@ void JZsdk_User_OutputHex(E_JZsdkConsoleLogLevel level, const char *fmt, ...); @@ -59,8 +59,6 @@ void JZsdk_User_OutputHex(E_JZsdkConsoleLogLevel level, const char *fmt, ...);
59 #define JZSDK_LOG_OUTPUTHEX(fmt, ...) \ 59 #define JZSDK_LOG_OUTPUTHEX(fmt, ...) \
60 JZsdk_User_OutputHex(JZSDK_LOGGER_CONSOLE_LOG_LEVEL_INFO, "" fmt , ##__VA_ARGS__) 60 JZsdk_User_OutputHex(JZSDK_LOGGER_CONSOLE_LOG_LEVEL_INFO, "" fmt , ##__VA_ARGS__)
61 61
62 -#define JZSDK_LOG_LEVEL JZSDK_LOGGER_CONSOLE_LOG_LEVEL_DEBUG  
63 -  
64 62
65 #ifdef __cplusplus 63 #ifdef __cplusplus
66 } 64 }
@@ -64,7 +64,8 @@ int JZsdk_Socket() @@ -64,7 +64,8 @@ int JZsdk_Socket()
64 T_JZsdkReturnCode GetSerialNumber(char *SerialNumber) 64 T_JZsdkReturnCode GetSerialNumber(char *SerialNumber)
65 { 65 {
66 FILE *num_file; 66 FILE *num_file;
67 - char num_char[15]; 67 + char num_char[128];
  68 + memset(num_char,0,sizeof(num_char));
68 69
69 num_file = fopen("/root/num", "rb+"); 70 num_file = fopen("/root/num", "rb+");
70 if (num_file == NULL) 71 if (num_file == NULL)
@@ -72,6 +73,9 @@ T_JZsdkReturnCode GetSerialNumber(char *SerialNumber) @@ -72,6 +73,9 @@ T_JZsdkReturnCode GetSerialNumber(char *SerialNumber)
72 num_file = fopen("/root/num", "wb+"); 73 num_file = fopen("/root/num", "wb+");
73 if (num_file == NULL) 74 if (num_file == NULL)
74 { 75 {
  76 + //无序列号
  77 + memcpy(SerialNumber, "无", sizeof("无"));
  78 + fclose(num_file);
75 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 79 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
76 } 80 }
77 } 81 }
@@ -83,20 +87,26 @@ T_JZsdkReturnCode GetSerialNumber(char *SerialNumber) @@ -83,20 +87,26 @@ T_JZsdkReturnCode GetSerialNumber(char *SerialNumber)
83 } 87 }
84 88
85 ret = fread((char *) &num_char,14, sizeof(char), num_file); 89 ret = fread((char *) &num_char,14, sizeof(char), num_file);
86 - if (ret != sizeof(char)) { 90 + if (ret != sizeof(char))
  91 + {
87 printf("Read num file error.\r\n"); 92 printf("Read num file error.\r\n");
  93 + //无序列号
  94 + memcpy(SerialNumber, "无", sizeof("无"));
  95 + fclose(num_file);
  96 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
88 } 97 }
89 else{ 98 else{
90 printf("Read num file=%s\n",&num_char); 99 printf("Read num file=%s\n",&num_char);
91 } 100 }
92 } 101 }
93 - fclose(num_file); 102 +
94 103
95 if (SerialNumber != NULL) 104 if (SerialNumber != NULL)
96 { 105 {
97 memcpy(SerialNumber, num_char, 14); 106 memcpy(SerialNumber, num_char, 14);
98 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 107 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
99 } 108 }
100 - 109 +
  110 + fclose(num_file);
101 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 111 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
102 } 112 }
@@ -158,30 +158,6 @@ int JZsdk_Uart_SecondInit(int UART_DEV_NAME, int BitRate) @@ -158,30 +158,6 @@ int JZsdk_Uart_SecondInit(int UART_DEV_NAME, int BitRate)
158 UartDevUseFlag.UartDev_4G = JZ_FLAGCODE_ON; 158 UartDevUseFlag.UartDev_4G = JZ_FLAGCODE_ON;
159 } 159 }
160 } 160 }
161 -  
162 -/*  
163 -*  
164 -* 发送自由帧  
165 -*  
166 -*/  
167 -int JZsdk_Uart_Send_CustomOrder(int UartPort, char *sendbuf, int len)  
168 -{  
169 - JZsdk_Uart_SendDeal_Send_CustomOrder(UartPort, sendbuf, len);  
170 -}  
171 -  
172 -/*  
173 -*  
174 -* 发送请求连接帧  
175 -*  
176 -*/  
177 -int JZsdk_Uart_Send_ConnectFrame(int PortNum)  
178 -{  
179 - //发送请求连接帧  
180 - JZsdk_Uart_SendDeal_Send_ConnectFrame(PortNum);  
181 -}  
182 -  
183 -  
184 -  
185 /* 161 /*
186 * 162 *
187 * 发送播放结束状态帧 163 * 发送播放结束状态帧
@@ -25,8 +25,6 @@ extern "C" { @@ -25,8 +25,6 @@ extern "C" {
25 /* Exported functions --------------------------------------------------------*/ 25 /* Exported functions --------------------------------------------------------*/
26 int JZsdk_Uart_Init(int UART_DEV_NAME); 26 int JZsdk_Uart_Init(int UART_DEV_NAME);
27 int JZsdk_Get_UartDev_UseFlag(int UART_DEV_NAME); 27 int JZsdk_Get_UartDev_UseFlag(int UART_DEV_NAME);
28 -int JZsdk_Uart_Send_ConnectFrame(int PortNum);  
29 -int JZsdk_Uart_Send_CustomOrder(int UartPort, char *sendbuf, int len);  
30 28
31 int JZsdk_Uart_Reply_PlayStatus_end(int PortNum); 29 int JZsdk_Uart_Reply_PlayStatus_end(int PortNum);
32 int JZsdk_Uart_Send_PlayStatus(int Uartport ,int num); 30 int JZsdk_Uart_Send_PlayStatus(int Uartport ,int num);
@@ -728,19 +728,6 @@ T_JZsdkReturnCode JZsdk_Uart_Checkstatus_OutPutPower(int DeviceName, int FrameSe @@ -728,19 +728,6 @@ T_JZsdkReturnCode JZsdk_Uart_Checkstatus_OutPutPower(int DeviceName, int FrameSe
728 ********* ********| 728 ********* ********|
729 ********* ********| 729 ********* ********|
730 *********************************************************************************************************/ 730 *********************************************************************************************************/
731 -/*********  
732 - *  
733 - * 收到连接回复帧  
734 - *  
735 -**********/  
736 -int JZsdl_Uart_ObtainConnectFrame(char *getbuf, int value)  
737 -{  
738 -#if APP_VERSION == APP_TEST  
739 - TestAPP_Connect(value);  
740 -#endif  
741 -}  
742 -  
743 -  
744 731
745 /******************************************************************************************************************************* 732 /*******************************************************************************************************************************
746 * 733 *
@@ -28,7 +28,6 @@ extern "C" { @@ -28,7 +28,6 @@ extern "C" {
28 /* Exported functions --------------------------------------------------------*/ 28 /* Exported functions --------------------------------------------------------*/
29 int JZsdk_Uart_Init(int UART_DEV_NAME); 29 int JZsdk_Uart_Init(int UART_DEV_NAME);
30 int JZsdk_Get_UartDev_UseFlag(int UART_DEV_NAME); 30 int JZsdk_Get_UartDev_UseFlag(int UART_DEV_NAME);
31 -int JZsdl_Uart_ObtainConnectFrame(char *getbuf, int value);  
32 31
33 int JZsdk_Uart_Set_Amplifier(int status); 32 int JZsdk_Uart_Set_Amplifier(int status);
34 T_JZsdkReturnCode JZsdk_Uart_Set_Volume(int DeviceName, int value); 33 T_JZsdkReturnCode JZsdk_Uart_Set_Volume(int DeviceName, int value);
@@ -41,7 +41,7 @@ static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_4G_TransmodeDecide(); @@ -41,7 +41,7 @@ static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_4G_TransmodeDecide();
41 **********/ 41 **********/
42 static int Uart_4G_RecvDeal_AskForConnect(char *getbuf) 42 static int Uart_4G_RecvDeal_AskForConnect(char *getbuf)
43 { 43 {
44 - JZSDK_LOG_INFO("串口设备4G,连接成功"); 44 + JZSDK_LOG_INFO("串口设备4g,连接成功");
45 //获取帧的序列号 45 //获取帧的序列号
46 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 46 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
47 47
@@ -49,7 +49,7 @@ static int Uart_4G_RecvDeal_AskForConnect(char *getbuf) @@ -49,7 +49,7 @@ static int Uart_4G_RecvDeal_AskForConnect(char *getbuf)
49 int Device_name = JZsdk_Uart_GetVersionReplay(); 49 int Device_name = JZsdk_Uart_GetVersionReplay();
50 50
51 //3、回复连接成功 51 //3、回复连接成功
52 - JZsdk_Uart_SendDeal_Send_Connect(UART_4G, Device_name); 52 + JZsdk_Uart_SendDeal_Send_Connect(UART_DEV_1, Device_name);
53 53
54 //1、将串口程序设置为连接模式 54 //1、将串口程序设置为连接模式
55 //JZsdk_Uart_SetMainWorkMode(JZ_FLAGCODE_ON); 55 //JZsdk_Uart_SetMainWorkMode(JZ_FLAGCODE_ON);
@@ -79,14 +79,14 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -79,14 +79,14 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf)
79 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 79 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
80 { 80 {
81 //回复操作失败 81 //回复操作失败
82 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 82 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
83 JZSDK_LOG_ERROR("开启MP2实时喊话功能失败\n"); 83 JZSDK_LOG_ERROR("开启MP2实时喊话功能失败\n");
84 84
85 return ret; 85 return ret;
86 } 86 }
87 87
88 //1、修改接收模式 88 //1、修改接收模式
89 - JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION); 89 + JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION);
90 90
91 //2、获取码率倍率 默认8k 91 //2、获取码率倍率 默认8k
92 int RateMagnification = (int)getbuf[9]; 92 int RateMagnification = (int)getbuf[9];
@@ -106,12 +106,12 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -106,12 +106,12 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf)
106 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 106 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
107 { 107 {
108 //4、回复操作成功 108 //4、回复操作成功
109 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 109 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
110 } 110 }
111 else 111 else
112 { 112 {
113 //4、回复操作失败 113 //4、回复操作失败
114 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 114 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
115 } 115 }
116 } 116 }
117 117
@@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_start(char *getbuf)
121 * 121 *
122 * 122 *
123 **********/ 123 **********/
124 -static int Uart_4G_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) 124 +static int Uart_4G_RecvDeal_RealTimeMP2_Unlimit_transmission(char *getdata, int len)
125 { 125 {
126 JZSDK_LOG_INFO("MP2实时喊话传输中\n"); 126 JZSDK_LOG_INFO("MP2实时喊话传输中\n");
127 T_JZsdkReturnCode ret; 127 T_JZsdkReturnCode ret;
@@ -130,6 +130,31 @@ static int Uart_4G_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) @@ -130,6 +130,31 @@ static int Uart_4G_RecvDeal_RealTimeMP2_transmission(char *getdata, int len)
130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len); 130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len);
131 131
132 } 132 }
  133 +
  134 +
  135 +/*********
  136 + *
  137 + * 语音MP2实时喊话有限传输中
  138 + *
  139 + *
  140 +**********/
  141 +static int Uart_4G_RecvDeal_RealTimeMP2_Limit_transmission(char *getdata, int len)
  142 +{
  143 + JZSDK_LOG_INFO("MP2实时喊话有限制传输中\n");
  144 + T_JZsdkReturnCode ret;
  145 +
  146 + //提取出数据
  147 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  148 + if (DataLen > 128)
  149 + {
  150 + JZSDK_LOG_ERROR("传输得到的mp2实时数据帧长度超出128上限");
  151 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  152 + }
  153 +
  154 + //传输数据接口
  155 + ret = JZsdk_Uart_RealTimeMP2_Trans(getdata+9, DataLen);
  156 +}
  157 +
133 /********* 158 /*********
134 * 159 *
135 * 关闭语音MP2发送功能 160 * 关闭语音MP2发送功能
@@ -144,10 +169,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_stop(char *getbuf) @@ -144,10 +169,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_stop(char *getbuf)
144 //获取帧的序列号 169 //获取帧的序列号
145 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 170 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
146 171
147 - if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION) 172 + if ((UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION) )
148 { 173 {
149 //回复操作失败 174 //回复操作失败
150 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 175 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
151 JZSDK_LOG_ERROR("操作失败,mp2传输未开始,无法关闭"); 176 JZSDK_LOG_ERROR("操作失败,mp2传输未开始,无法关闭");
152 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 177 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
153 } 178 }
@@ -161,12 +186,12 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_stop(char *getbuf) @@ -161,12 +186,12 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_RealTimeMP2_stop(char *getbuf)
161 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 186 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
162 { 187 {
163 //4、回复操作成功 188 //4、回复操作成功
164 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 189 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
165 } 190 }
166 else 191 else
167 { 192 {
168 //4、回复操作失败 193 //4、回复操作失败
169 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 194 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
170 } 195 }
171 } 196 }
172 197
@@ -186,7 +211,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_start(char *getbuf, @@ -186,7 +211,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_start(char *getbuf,
186 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 211 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
187 { 212 {
188 //回复操作失败 213 //回复操作失败
189 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 214 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
190 JZSDK_LOG_ERROR("开始传输的音频文件保存失败"); 215 JZSDK_LOG_ERROR("开始传输的音频文件保存失败");
191 return ret; 216 return ret;
192 } 217 }
@@ -203,44 +228,69 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_start(char *getbuf, @@ -203,44 +228,69 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_start(char *getbuf,
203 ret = JZsdk_Uart_SaveAudioFileStart(FileName); 228 ret = JZsdk_Uart_SaveAudioFileStart(FileName);
204 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 229 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
205 { 230 {
206 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 231 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
207 return -1; 232 return -1;
208 } 233 }
209 234
210 //3、调整接收模式为音频文件传输 235 //3、调整接收模式为音频文件传输
211 - JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION); 236 + JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION);
212 237
213 //4、回复操作成功 238 //4、回复操作成功
214 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 239 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
215 240
216 } 241 }
217 /********* 242 /*********
218 * 243 *
219 - * 传输音频文件中 244 + * 传输无限制音频文件中
220 * 245 *
221 * 246 *
222 **********/ 247 **********/
223 -static int Uart_4G_RecvDeal_SaveAudioFileTrans_transmission(char *getdata, int len) 248 +static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(char *getdata, int len)
224 { 249 {
225 JZSDK_LOG_INFO("传输音频文件中\n"); 250 JZSDK_LOG_INFO("传输音频文件中\n");
226 JZsdk_Uart_SaveAudioFileTrans(getdata, len); 251 JZsdk_Uart_SaveAudioFileTrans(getdata, len);
227 } 252 }
  253 +
  254 +/*********
  255 + *
  256 + * 传输定长音频文件中
  257 + *
  258 + *
  259 +**********/
  260 +static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_LimitTransmission(char *getdata, int len)
  261 +{
  262 + JZSDK_LOG_INFO("传输定长音频文件中\n");
  263 +
  264 + T_JZsdkReturnCode ret;
  265 +
  266 + //提取出数据
  267 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  268 + if (DataLen > 128)
  269 + {
  270 + JZSDK_LOG_ERROR("传输得到的定长音频文帧长度超出128上限");
  271 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  272 + }
  273 +
  274 + //传输数据接口
  275 + ret = JZsdk_Uart_SaveAudioFileTrans(getdata+9, DataLen);
  276 +}
  277 +
228 /********* 278 /*********
229 * 279 *
230 * 关闭音频文件上传 280 * 关闭音频文件上传
231 * 281 *
232 * 282 *
233 **********/ 283 **********/
234 -static int Uart_4G_RecvDeal_SaveAudioFileTrans_stop(char *getbuf) 284 +static T_JZsdkReturnCode Uart_4G_RecvDeal_SaveAudioFileTrans_stop(char *getbuf)
235 { 285 {
236 JZSDK_LOG_INFO("开始传输的音频文件保存\n"); 286 JZSDK_LOG_INFO("开始传输的音频文件保存\n");
237 //获取帧的序列号 287 //获取帧的序列号
238 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 288 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
239 289
240 - if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) 290 + if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION)
241 { 291 {
242 //回复操作失败 292 //回复操作失败
243 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 293 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
244 JZSDK_LOG_ERROR("关闭音频文件上传失败,音频文件上传未开始,无法关闭"); 294 JZSDK_LOG_ERROR("关闭音频文件上传失败,音频文件上传未开始,无法关闭");
245 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 295 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
246 } 296 }
@@ -252,7 +302,7 @@ static int Uart_4G_RecvDeal_SaveAudioFileTrans_stop(char *getbuf) @@ -252,7 +302,7 @@ static int Uart_4G_RecvDeal_SaveAudioFileTrans_stop(char *getbuf)
252 JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP); 302 JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP);
253 303
254 //2、回复操作成功 304 //2、回复操作成功
255 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 305 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
256 } 306 }
257 307
258 /********* 308 /*********
@@ -281,16 +331,16 @@ static int Uart_4G_RecvDeal_audio_PlayFile(char *getbuf) @@ -281,16 +331,16 @@ static int Uart_4G_RecvDeal_audio_PlayFile(char *getbuf)
281 331
282 JZSDK_LOG_INFO("播放指定音频:%s\n",music_name); 332 JZSDK_LOG_INFO("播放指定音频:%s\n",music_name);
283 333
284 - ret = JZsdk_Uart_PlayMusic(UART_4G, music_name, datasize); 334 + ret = JZsdk_Uart_PlayMusic(UART_DEV_1, music_name, datasize);
285 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 335 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
286 { 336 {
287 //4、回复操作成功 337 //4、回复操作成功
288 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 338 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
289 } 339 }
290 else 340 else
291 { 341 {
292 //4、回复操作失败 342 //4、回复操作失败
293 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 343 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
294 } 344 }
295 } 345 }
296 /********* 346 /*********
@@ -305,10 +355,10 @@ static int Uart_4G_RecvDeal_audio_PlayContinue(char *getbuf) @@ -305,10 +355,10 @@ static int Uart_4G_RecvDeal_audio_PlayContinue(char *getbuf)
305 //获取帧的序列号 355 //获取帧的序列号
306 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 356 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
307 357
308 - JZsdk_Uart_audio_PlayContinue(UART_4G); 358 + JZsdk_Uart_audio_PlayContinue(UART_DEV_1);
309 359
310 //回复操作成功 360 //回复操作成功
311 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 361 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
312 } 362 }
313 /********* 363 /*********
314 * 364 *
@@ -322,10 +372,10 @@ static int Uart_4G_RecvDeal_audio_PlayPause(char *getbuf) @@ -322,10 +372,10 @@ static int Uart_4G_RecvDeal_audio_PlayPause(char *getbuf)
322 //获取帧的序列号 372 //获取帧的序列号
323 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 373 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
324 374
325 - JZsdk_Uart_audio_PlayPause(UART_4G); 375 + JZsdk_Uart_audio_PlayPause(UART_DEV_1);
326 376
327 //回复操作成功 377 //回复操作成功
328 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 378 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
329 } 379 }
330 /********* 380 /*********
331 * 381 *
@@ -339,10 +389,10 @@ static int Uart_4G_RecvDeal_audio_PlayStop(char *getbuf) @@ -339,10 +389,10 @@ static int Uart_4G_RecvDeal_audio_PlayStop(char *getbuf)
339 //获取帧的序列号 389 //获取帧的序列号
340 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 390 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
341 391
342 - JZsdk_Uart_audio_PlayStop(UART_4G); 392 + JZsdk_Uart_audio_PlayStop(UART_DEV_1);
343 393
344 //回复操作成功 394 //回复操作成功
345 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 395 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
346 } 396 }
347 397
348 /********* 398 /*********
@@ -357,10 +407,10 @@ static int Uart_4G_RecvDeal_audio_LastSong(char *getbuf) @@ -357,10 +407,10 @@ static int Uart_4G_RecvDeal_audio_LastSong(char *getbuf)
357 //获取帧的序列号 407 //获取帧的序列号
358 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 408 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
359 409
360 - JZsdk_Uart_audio_LastSong(UART_4G); 410 + JZsdk_Uart_audio_LastSong(UART_DEV_1);
361 411
362 //回复操作成功 412 //回复操作成功
363 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 413 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
364 } 414 }
365 415
366 /********* 416 /*********
@@ -375,10 +425,10 @@ static int Uart_4G_RecvDeal_audio_NextSong(char *getbuf) @@ -375,10 +425,10 @@ static int Uart_4G_RecvDeal_audio_NextSong(char *getbuf)
375 //获取帧的序列号 425 //获取帧的序列号
376 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 426 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
377 427
378 - JZsdk_Uart_audio_NextSong(UART_4G); 428 + JZsdk_Uart_audio_NextSong(UART_DEV_1);
379 429
380 //回复操作成功 430 //回复操作成功
381 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 431 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
382 } 432 }
383 433
384 /********* 434 /*********
@@ -394,7 +444,7 @@ static int Uart_4G_RecvDeal_audio_GetMusicList(char *getbuf) @@ -394,7 +444,7 @@ static int Uart_4G_RecvDeal_audio_GetMusicList(char *getbuf)
394 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 444 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
395 445
396 //回复操作成功 446 //回复操作成功
397 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 447 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
398 448
399 //0、刷新歌曲列表 449 //0、刷新歌曲列表
400 JZsdk_Uart_Flush_MusicList(); 450 JZsdk_Uart_Flush_MusicList();
@@ -411,16 +461,16 @@ static int Uart_4G_RecvDeal_audio_GetMusicList(char *getbuf) @@ -411,16 +461,16 @@ static int Uart_4G_RecvDeal_audio_GetMusicList(char *getbuf)
411 } 461 }
412 462
413 //3、发送开始帧 463 //3、发送开始帧
414 - JZsdk_Uart_SendDeal_Reply_Musiclist_start(UART_4G, music_sum); 464 + JZsdk_Uart_SendDeal_Reply_Musiclist_start(UART_DEV_1, music_sum);
415 465
416 //4、逐一调用发送函数将歌曲名发出 466 //4、逐一调用发送函数将歌曲名发出
417 for (int i = 0; i < music_sum; i++) 467 for (int i = 0; i < music_sum; i++)
418 { 468 {
419 - JZsdk_Uart_SendDeal_Reply_Musiclist(UART_4G, MusicName[i], MusicNameLength[i]); 469 + JZsdk_Uart_SendDeal_Reply_Musiclist(UART_DEV_1, MusicName[i], MusicNameLength[i]);
420 } 470 }
421 471
422 //5、发送结束帧 472 //5、发送结束帧
423 - JZsdk_Uart_SendDeal_Reply_Musiclist_end(UART_4G); 473 + JZsdk_Uart_SendDeal_Reply_Musiclist_end(UART_DEV_1);
424 } 474 }
425 475
426 /********* 476 /*********
@@ -438,7 +488,7 @@ static int Uart_4G_RecvDeal_Amplifier_stop(char *getbuf) @@ -438,7 +488,7 @@ static int Uart_4G_RecvDeal_Amplifier_stop(char *getbuf)
438 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_OFF); 488 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_OFF);
439 489
440 //回复操作成功 490 //回复操作成功
441 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 491 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
442 492
443 } 493 }
444 /********* 494 /*********
@@ -456,7 +506,7 @@ static int Uart_4G_RecvDeal_Amplifier_open(char *getbuf) @@ -456,7 +506,7 @@ static int Uart_4G_RecvDeal_Amplifier_open(char *getbuf)
456 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_ON); 506 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_ON);
457 507
458 //回复操作成功 508 //回复操作成功
459 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 509 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
460 510
461 } 511 }
462 /********* 512 /*********
@@ -483,10 +533,10 @@ static int Uart_4G_RecvDeal_SetVolume(char *getbuf) @@ -483,10 +533,10 @@ static int Uart_4G_RecvDeal_SetVolume(char *getbuf)
483 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 533 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
484 534
485 int value = (int)getbuf[9]; 535 int value = (int)getbuf[9];
486 - JZsdk_Uart_Set_Volume(UART_4G, value); 536 + JZsdk_Uart_Set_Volume(UART_DEV_1, value);
487 537
488 //回复操作成功 538 //回复操作成功
489 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 539 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
490 } 540 }
491 541
492 /********* 542 /*********
@@ -505,10 +555,10 @@ static int Uart_4G_RecvDeal_CheckStatus_volume(char *getbuf) @@ -505,10 +555,10 @@ static int Uart_4G_RecvDeal_CheckStatus_volume(char *getbuf)
505 int volume = JZsdk_Uart_CheckStatus_volume(); 555 int volume = JZsdk_Uart_CheckStatus_volume();
506 556
507 //回复操作成功 557 //回复操作成功
508 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 558 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
509 559
510 //2、发送音量 560 //2、发送音量
511 - JZsdk_Uart_SendDeal_Reply_Volume(UART_4G, volume); 561 + JZsdk_Uart_SendDeal_Reply_Volume(UART_DEV_1, volume);
512 562
513 } 563 }
514 /********* 564 /*********
@@ -530,10 +580,10 @@ static int Uart_4G_RecvDeal_CheckStatus_play(char *getbuf) @@ -530,10 +580,10 @@ static int Uart_4G_RecvDeal_CheckStatus_play(char *getbuf)
530 ret = JZsdk_Uart_CheckStatus_play(); 580 ret = JZsdk_Uart_CheckStatus_play();
531 581
532 //回复操作成功 582 //回复操作成功
533 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 583 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
534 584
535 //2、发送播放状态 585 //2、发送播放状态
536 - JZsdk_Uart_SendDeal_Send_PlayStatus(UART_4G, ret); 586 + JZsdk_Uart_SendDeal_Send_PlayStatus(UART_DEV_1, ret);
537 587
538 } 588 }
539 /********* 589 /*********
@@ -556,7 +606,7 @@ static int Uart_4G_RecvDeal_CheckStatus_gimbal(char *getbuf) @@ -556,7 +606,7 @@ static int Uart_4G_RecvDeal_CheckStatus_gimbal(char *getbuf)
556 JZsdk_Uart_CheckStatus_gimbal(&PitchAngle, &YawAngle); 606 JZsdk_Uart_CheckStatus_gimbal(&PitchAngle, &YawAngle);
557 607
558 //2、发送本地云台值 608 //2、发送本地云台值
559 - JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(UART_4G, PitchAngle); 609 + JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(UART_DEV_1, PitchAngle);
560 } 610 }
561 /********* 611 /*********
562 * 612 *
@@ -569,7 +619,7 @@ static int Uart_4G_RecvDeal_CheckStatus_GimbalFineTuning(char *getbuf) @@ -569,7 +619,7 @@ static int Uart_4G_RecvDeal_CheckStatus_GimbalFineTuning(char *getbuf)
569 //获取帧的序列号 619 //获取帧的序列号
570 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 620 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
571 621
572 - JZsdk_Uart_CheckStatus_GimbalFineTuning(UART_4G, FrameSequence); 622 + JZsdk_Uart_CheckStatus_GimbalFineTuning(UART_DEV_1, FrameSequence);
573 } 623 }
574 624
575 /********* 625 /*********
@@ -593,10 +643,10 @@ static int Uart_4G_RecvDeal_CheckStatus_PLayFileName(char *getbuf) @@ -593,10 +643,10 @@ static int Uart_4G_RecvDeal_CheckStatus_PLayFileName(char *getbuf)
593 JZSDK_LOG_INFO("当前播放的是%s %d\n",MusicName, MusicName_Len); 643 JZSDK_LOG_INFO("当前播放的是%s %d\n",MusicName, MusicName_Len);
594 644
595 //回复操作成功 645 //回复操作成功
596 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 646 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
597 647
598 //2、发送名字 648 //2、发送名字
599 - JZsdk_Uart_SendDeal_Reply_MusicName(UART_4G, MusicName,MusicName_Len); 649 + JZsdk_Uart_SendDeal_Reply_MusicName(UART_DEV_1, MusicName,MusicName_Len);
600 } 650 }
601 /********* 651 /*********
602 * 652 *
@@ -621,10 +671,10 @@ static int Uart_4G_RecvDeal_CheckStatus_SoftwareVersion(char *getbuf) @@ -621,10 +671,10 @@ static int Uart_4G_RecvDeal_CheckStatus_SoftwareVersion(char *getbuf)
621 JZSDK_LOG_INFO("当前的软件版本号为:%2x, %2x, %2x, %2x",majorVersion, minorVersion, modifyVersion, debugVersion); 671 JZSDK_LOG_INFO("当前的软件版本号为:%2x, %2x, %2x, %2x",majorVersion, minorVersion, modifyVersion, debugVersion);
622 672
623 //回复操作成功 673 //回复操作成功
624 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 674 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
625 675
626 //2、发送版本号 676 //2、发送版本号
627 - JZsdk_Uart_SendDeal_Reply_SoftVersion(UART_4G, majorVersion, minorVersion, modifyVersion, debugVersion); 677 + JZsdk_Uart_SendDeal_Reply_SoftVersion(UART_DEV_1, majorVersion, minorVersion, modifyVersion, debugVersion);
628 } 678 }
629 /********* 679 /*********
630 * 680 *
@@ -648,10 +698,10 @@ static int Uart_4G_RecvDeal_CheckStatus_LoopPlay(char *getbuf) @@ -648,10 +698,10 @@ static int Uart_4G_RecvDeal_CheckStatus_LoopPlay(char *getbuf)
648 } 698 }
649 699
650 //回复操作成功 700 //回复操作成功
651 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 701 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
652 702
653 //2、发送循环状态 703 //2、发送循环状态
654 - JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(UART_4G ,LoopStatus); 704 + JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(UART_DEV_1 ,LoopStatus);
655 } 705 }
656 /********* 706 /*********
657 * 707 *
@@ -675,10 +725,10 @@ static int Uart_4G_RecvDeal_CheckStatus_TTS_tone(char *getbuf) @@ -675,10 +725,10 @@ static int Uart_4G_RecvDeal_CheckStatus_TTS_tone(char *getbuf)
675 } 725 }
676 726
677 //回复操作成功 727 //回复操作成功
678 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 728 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
679 729
680 //2、发送音色 730 //2、发送音色
681 - JZsdk_Uart_SendDeal_Reply_TTS_tone(UART_4G ,TTS_tone); 731 + JZsdk_Uart_SendDeal_Reply_TTS_tone(UART_DEV_1 ,TTS_tone);
682 732
683 } 733 }
684 /********* 734 /*********
@@ -703,10 +753,10 @@ static int Uart_4G_RecvDeal_CheckStatus_TTS_speed(char *getbuf) @@ -703,10 +753,10 @@ static int Uart_4G_RecvDeal_CheckStatus_TTS_speed(char *getbuf)
703 } 753 }
704 754
705 //回复操作成功 755 //回复操作成功
706 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 756 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
707 757
708 //2、发送语速 758 //2、发送语速
709 - JZsdk_Uart_SendDeal_Reply_TTS_speed(UART_4G ,TTS_speed); 759 + JZsdk_Uart_SendDeal_Reply_TTS_speed(UART_DEV_1 ,TTS_speed);
710 760
711 } 761 }
712 762
@@ -734,10 +784,10 @@ static int Uart_4G_RecvDeal_PlayLoop(char *getbuf) @@ -734,10 +784,10 @@ static int Uart_4G_RecvDeal_PlayLoop(char *getbuf)
734 mode = JZ_FLAGCODE_OFF; 784 mode = JZ_FLAGCODE_OFF;
735 } 785 }
736 786
737 - JZsdk_Uart_audio_PlayLoop(UART_4G, mode); 787 + JZsdk_Uart_audio_PlayLoop(UART_DEV_1, mode);
738 788
739 //回复操作成功 789 //回复操作成功
740 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 790 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
741 } 791 }
742 792
743 793
@@ -772,7 +822,7 @@ static int Uart_4G_RecvDeal_Delete_Audio(char *getbuf) @@ -772,7 +822,7 @@ static int Uart_4G_RecvDeal_Delete_Audio(char *getbuf)
772 JZsdk_Uart_Flush_MusicList(); 822 JZsdk_Uart_Flush_MusicList();
773 823
774 //回复操作成功 824 //回复操作成功
775 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 825 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
776 } 826 }
777 /********* 827 /*********
778 * 828 *
@@ -805,7 +855,7 @@ static int Uart_4G_RecvDeal_Delete_VoiceRecord(char *getbuf) @@ -805,7 +855,7 @@ static int Uart_4G_RecvDeal_Delete_VoiceRecord(char *getbuf)
805 JZsdk_Uart_Flush_MusicList(); 855 JZsdk_Uart_Flush_MusicList();
806 856
807 //回复操作成功 857 //回复操作成功
808 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 858 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
809 } 859 }
810 /********* 860 /*********
811 * 861 *
@@ -832,16 +882,16 @@ static int Uart_4G_RecvDeal_TTS_SetTone(char *getbuf) @@ -832,16 +882,16 @@ static int Uart_4G_RecvDeal_TTS_SetTone(char *getbuf)
832 int tone = (int)getbuf[9]; 882 int tone = (int)getbuf[9];
833 883
834 //2、设置音色 884 //2、设置音色
835 - T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetTone(UART_4G, tone); 885 + T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetTone(UART_DEV_1, tone);
836 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 886 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
837 { 887 {
838 //回复操作成功 888 //回复操作成功
839 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 889 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
840 } 890 }
841 else 891 else
842 { 892 {
843 //回复操作失败 893 //回复操作失败
844 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 894 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
845 } 895 }
846 } 896 }
847 /********* 897 /*********
@@ -864,21 +914,21 @@ static int Uart_4G_RecvDeal_TTS_SetSpeed(char *getbuf) @@ -864,21 +914,21 @@ static int Uart_4G_RecvDeal_TTS_SetSpeed(char *getbuf)
864 JZSDK_LOG_INFO("语速超出范围\n"); 914 JZSDK_LOG_INFO("语速超出范围\n");
865 915
866 //回复操作失败 916 //回复操作失败
867 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 917 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
868 return -1 ; 918 return -1 ;
869 } 919 }
870 920
871 //2、设置语速 921 //2、设置语速
872 - T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetSpeed(UART_4G, speed); 922 + T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetSpeed(UART_DEV_1, speed);
873 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 923 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
874 { 924 {
875 //回复操作成功 925 //回复操作成功
876 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 926 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
877 } 927 }
878 else 928 else
879 { 929 {
880 //回复操作失败 930 //回复操作失败
881 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 931 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
882 } 932 }
883 } 933 }
884 /********* 934 /*********
@@ -900,7 +950,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf) @@ -900,7 +950,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf)
900 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 950 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
901 { 951 {
902 //回复操作失败 952 //回复操作失败
903 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 953 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
904 JZSDK_LOG_ERROR("tts开始传输失败"); 954 JZSDK_LOG_ERROR("tts开始传输失败");
905 return ret; 955 return ret;
906 } 956 }
@@ -912,10 +962,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf) @@ -912,10 +962,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf)
912 TTS_Recv_buffer_length = 0; 962 TTS_Recv_buffer_length = 0;
913 963
914 //3、将接收模式设置为接收TTS数据模式 964 //3、将接收模式设置为接收TTS数据模式
915 - JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION); 965 + JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION);
916 966
917 //回复操作成功 967 //回复操作成功
918 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 968 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
919 } 969 }
920 /********* 970 /*********
921 * 971 *
@@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf) @@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_start(char *getbuf)
923 * 973 *
924 * 974 *
925 **********/ 975 **********/
926 -static int Uart_4G_RecvDeal_TTS_Trans_transmission(char *getdata, int len) 976 +static int Uart_4G_RecvDeal_TTS_Trans_UnlimitTransmission(char *getdata, int len)
927 { 977 {
928 JZSDK_LOG_INFO("tts传输中"); 978 JZSDK_LOG_INFO("tts传输中");
929 979
@@ -940,6 +990,38 @@ static int Uart_4G_RecvDeal_TTS_Trans_transmission(char *getdata, int len) @@ -940,6 +990,38 @@ static int Uart_4G_RecvDeal_TTS_Trans_transmission(char *getdata, int len)
940 JZSDK_LOG_ERROR("TTS字数超出1000字节"); 990 JZSDK_LOG_ERROR("TTS字数超出1000字节");
941 } 991 }
942 } 992 }
  993 +/***********
  994 + *
  995 + * tts定长传输中
  996 + *
  997 + * ***/
  998 +static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_LimitTransmission(char *getdata, int len)
  999 +{
  1000 + JZSDK_LOG_INFO("tts定长传输中");
  1001 +
  1002 + T_JZsdkReturnCode ret;
  1003 +
  1004 + //提取出数据
  1005 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1006 + if (DataLen > 128)
  1007 + {
  1008 + JZSDK_LOG_ERROR("tts定长帧,单帧数据长度超出128上限");
  1009 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1010 + }
  1011 +
  1012 + if (TTS_Recv_buffer_length+DataLen < 1000)
  1013 + {
  1014 + //1、将新的数据 放入缓冲区
  1015 + memcpy(TTS_Recv_buffer+TTS_Recv_buffer_length, getdata+9, DataLen);
  1016 +
  1017 + //2、记录已加载的长度
  1018 + TTS_Recv_buffer_length = TTS_Recv_buffer_length + DataLen;
  1019 + }
  1020 + else
  1021 + {
  1022 + JZSDK_LOG_ERROR("TTS总字数超出1000字节");
  1023 + }
  1024 +}
943 1025
944 /********* 1026 /*********
945 * 1027 *
@@ -953,15 +1035,15 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_stop(char *getbuf) @@ -953,15 +1035,15 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_stop(char *getbuf)
953 //获取帧的序列号 1035 //获取帧的序列号
954 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1036 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
955 1037
956 - if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION) 1038 + if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)
957 { 1039 {
958 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer); 1040 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer);
959 1041
960 //3、播放TTS 1042 //3、播放TTS
961 - JZsdk_Uart_TTS_Play(UART_4G, TTS_Recv_buffer, TTS_Recv_buffer_length); 1043 + JZsdk_Uart_TTS_Play(UART_DEV_1, TTS_Recv_buffer, TTS_Recv_buffer_length);
962 1044
963 //回复操作成功 1045 //回复操作成功
964 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1046 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
965 1047
966 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 1048 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
967 } 1049 }
@@ -973,10 +1055,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_stop(char *getbuf) @@ -973,10 +1055,10 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_TTS_Trans_stop(char *getbuf)
973 JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_STOP); 1055 JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_STOP);
974 1056
975 //3、播放TTS 1057 //3、播放TTS
976 - JZsdk_Uart_TTS_Play(UART_4G, TTS_Recv_buffer, TTS_Recv_buffer_length); 1058 + JZsdk_Uart_TTS_Play(UART_DEV_1, TTS_Recv_buffer, TTS_Recv_buffer_length);
977 1059
978 //回复操作成功 1060 //回复操作成功
979 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1061 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
980 } 1062 }
981 1063
982 1064
@@ -996,7 +1078,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_OpusTrans_start(char *getbuf) @@ -996,7 +1078,7 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_OpusTrans_start(char *getbuf)
996 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1078 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
997 { 1079 {
998 //回复操作失败 1080 //回复操作失败
999 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1081 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1000 JZSDK_LOG_ERROR("打开opus传输失败"); 1082 JZSDK_LOG_ERROR("打开opus传输失败");
1001 return ret; 1083 return ret;
1002 } 1084 }
@@ -1012,25 +1094,51 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_OpusTrans_start(char *getbuf) @@ -1012,25 +1094,51 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_OpusTrans_start(char *getbuf)
1012 JZsdk_Uart_SaveOpusStart(decode_rate); 1094 JZsdk_Uart_SaveOpusStart(decode_rate);
1013 1095
1014 //3、修改接收模式为传输opus 1096 //3、修改接收模式为传输opus
1015 - JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION); 1097 + JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION);
1016 1098
1017 JZSDK_LOG_INFO("已完成打开opus传输处理\n"); 1099 JZSDK_LOG_INFO("已完成打开opus传输处理\n");
1018 1100
1019 //回复操作成功 1101 //回复操作成功
1020 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1102 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1021 } 1103 }
1022 /********* 1104 /*********
1023 * 1105 *
1024 - * opus传输 1106 + * opus不定长传输
1025 * 1107 *
1026 * 1108 *
1027 **********/ 1109 **********/
1028 -static int Uart_4G_RecvDeal_OpusTrans_transmission(char *SaveData, int size) 1110 +static int Uart_4G_RecvDeal_OpusTrans_UnlimitTransmission(char *SaveData, int size)
1029 { 1111 {
1030 JZsdk_Uart_SaveOpusTrans(SaveData,size); 1112 JZsdk_Uart_SaveOpusTrans(SaveData,size);
1031 1113
1032 JZSDK_LOG_INFO("已完成opus传输保存处理\n"); 1114 JZSDK_LOG_INFO("已完成opus传输保存处理\n");
1033 } 1115 }
  1116 +
  1117 +/*********
  1118 + *
  1119 + * opus定长传输文件
  1120 + *
  1121 + *
  1122 +**********/
  1123 +static T_JZsdkReturnCode Uart_4G_RecvDeal_OpusTrans_LimitTransmission(char *getdata, int size)
  1124 +{
  1125 + JZSDK_LOG_INFO("传输opus定长音频文件中\n");
  1126 +
  1127 + T_JZsdkReturnCode ret;
  1128 +
  1129 + //提取出数据
  1130 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1131 + if (DataLen > 128)
  1132 + {
  1133 + JZSDK_LOG_ERROR("传输得到的opus定长音频文件帧长度超出128上限");
  1134 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1135 + }
  1136 +
  1137 + //传输数据接口
  1138 + ret = JZsdk_Uart_SaveOpusTrans(getdata+9, DataLen);
  1139 +}
  1140 +
  1141 +
1034 /********* 1142 /*********
1035 * 1143 *
1036 * opus结束传输 1144 * opus结束传输
@@ -1043,10 +1151,10 @@ static int Uart_4G_RecvDeal_OpusTrans_stop(char *getbuf) @@ -1043,10 +1151,10 @@ static int Uart_4G_RecvDeal_OpusTrans_stop(char *getbuf)
1043 //获取帧的序列号 1151 //获取帧的序列号
1044 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1152 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1045 1153
1046 - if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) 1154 + if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION)
1047 { 1155 {
1048 //回复操作失败 1156 //回复操作失败
1049 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1157 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1050 JZSDK_LOG_ERROR("关闭opus结束传输失败,opus结束传输未开始,无法关闭"); 1158 JZSDK_LOG_ERROR("关闭opus结束传输失败,opus结束传输未开始,无法关闭");
1051 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1159 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1052 } 1160 }
@@ -1059,7 +1167,7 @@ static int Uart_4G_RecvDeal_OpusTrans_stop(char *getbuf) @@ -1059,7 +1167,7 @@ static int Uart_4G_RecvDeal_OpusTrans_stop(char *getbuf)
1059 JZSDK_LOG_INFO("结束opus传输处理\n"); 1167 JZSDK_LOG_INFO("结束opus传输处理\n");
1060 1168
1061 //回复操作成功 1169 //回复操作成功
1062 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1170 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1063 } 1171 }
1064 /********* 1172 /*********
1065 * 1173 *
@@ -1077,15 +1185,15 @@ static int Uart_4G_RecvDeal_OpusPlay(char *getbuf) @@ -1077,15 +1185,15 @@ static int Uart_4G_RecvDeal_OpusPlay(char *getbuf)
1077 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1185 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1078 { 1186 {
1079 //回复操作失败 1187 //回复操作失败
1080 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1188 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1081 JZSDK_LOG_ERROR("opus播放失败,存在传输模式打开中"); 1189 JZSDK_LOG_ERROR("opus播放失败,存在传输模式打开中");
1082 return ret; 1190 return ret;
1083 } 1191 }
1084 1192
1085 - JZsdk_Uart_Opus_PlayFixedFile(UART_4G); 1193 + JZsdk_Uart_Opus_PlayFixedFile(UART_DEV_1);
1086 1194
1087 //回复操作成功 1195 //回复操作成功
1088 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1196 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1089 } 1197 }
1090 1198
1091 1199
@@ -1106,13 +1214,13 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_Opus_RealTimeVoice_start(char *getbuf) @@ -1106,13 +1214,13 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_Opus_RealTimeVoice_start(char *getbuf)
1106 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1214 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1107 { 1215 {
1108 //回复操作失败 1216 //回复操作失败
1109 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1217 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1110 JZSDK_LOG_ERROR("开启opus实时喊话失败"); 1218 JZSDK_LOG_ERROR("开启opus实时喊话失败");
1111 return ret; 1219 return ret;
1112 } 1220 }
1113 1221
1114 //1、修改接收模式 1222 //1、修改接收模式
1115 - JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION); 1223 + JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION);
1116 1224
1117 //2、获取码率倍率 默认8k*1倍 1225 //2、获取码率倍率 默认8k*1倍
1118 int RateMagnification = (int)getbuf[9]; 1226 int RateMagnification = (int)getbuf[9];
@@ -1131,21 +1239,47 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_Opus_RealTimeVoice_start(char *getbuf) @@ -1131,21 +1239,47 @@ static T_JZsdkReturnCode Uart_4G_RecvDeal_Opus_RealTimeVoice_start(char *getbuf)
1131 JZsdk_Uart_RealTimeVoiceStart(Rate); 1239 JZsdk_Uart_RealTimeVoiceStart(Rate);
1132 1240
1133 //4、通知成功打开语音发送模式 1241 //4、通知成功打开语音发送模式
1134 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1242 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1135 } 1243 }
1136 1244
1137 /********* 1245 /*********
1138 * 1246 *
1139 - * opus实时语音传输中 1247 + * opus实时语音无限制传输中
1140 * 1248 *
1141 * 1249 *
1142 **********/ 1250 **********/
1143 -static int Uart_4G_RecvDeal_Opus_RealTimeVoice_transmission(char *getdata, int len) 1251 +static int Uart_4G_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(char *getdata, int len)
1144 { 1252 {
1145 JZSDK_LOG_INFO("opus语音传输中\n"); 1253 JZSDK_LOG_INFO("opus语音传输中\n");
1146 JZsdk_Uart_RealTimeVoiceTrans(getdata, len); 1254 JZsdk_Uart_RealTimeVoiceTrans(getdata, len);
1147 1255
1148 } 1256 }
  1257 +
  1258 +/*********
  1259 + *
  1260 + * opus实时语音定长传输中
  1261 + *
  1262 + *
  1263 +**********/
  1264 +static T_JZsdkReturnCode Uart_4G_RecvDeal_Opus_RealTimeVoice_LimitTransmission(char *getdata, int len)
  1265 +{
  1266 + JZSDK_LOG_INFO("传输opus定长语音传输中\n");
  1267 +
  1268 + T_JZsdkReturnCode ret;
  1269 +
  1270 + //提取出数据
  1271 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1272 + if (DataLen > 80)
  1273 + {
  1274 + JZSDK_LOG_ERROR("opus实时语音定长传输帧数据长度超出80上限");
  1275 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1276 + }
  1277 +
  1278 + //传输数据接口
  1279 + ret = JZsdk_Uart_RealTimeVoiceTrans(getdata+9, DataLen);
  1280 +}
  1281 +
  1282 +
1149 /********* 1283 /*********
1150 * 1284 *
1151 * 关闭opus实时语音发送功能 1285 * 关闭opus实时语音发送功能
@@ -1158,10 +1292,10 @@ static int Uart_4G_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf) @@ -1158,10 +1292,10 @@ static int Uart_4G_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf)
1158 //获取帧的序列号 1292 //获取帧的序列号
1159 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1293 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1160 1294
1161 - if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) 1295 + if (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION)
1162 { 1296 {
1163 //回复操作失败 1297 //回复操作失败
1164 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1298 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1165 JZSDK_LOG_ERROR("关闭opus实时语音发送功能失败,opus实时语音发送功能未开始,无法关闭"); 1299 JZSDK_LOG_ERROR("关闭opus实时语音发送功能失败,opus实时语音发送功能未开始,无法关闭");
1166 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1300 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1167 } 1301 }
@@ -1173,7 +1307,7 @@ static int Uart_4G_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf) @@ -1173,7 +1307,7 @@ static int Uart_4G_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf)
1173 JZsdk_Uart_RealTimeVoiceClose(); 1307 JZsdk_Uart_RealTimeVoiceClose();
1174 1308
1175 //3、通知成功关闭语音发送模式 1309 //3、通知成功关闭语音发送模式
1176 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1310 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1177 } 1311 }
1178 1312
1179 1313
@@ -1215,22 +1349,22 @@ static int Uart_4G_RecvDeal_Gimbal_PitchControl(char *getbuf) @@ -1215,22 +1349,22 @@ static int Uart_4G_RecvDeal_Gimbal_PitchControl(char *getbuf)
1215 { 1349 {
1216 JZSDK_LOG_INFO("云台输入角度符号错误,无法正常控制"); 1350 JZSDK_LOG_INFO("云台输入角度符号错误,无法正常控制");
1217 //回复操作失败 1351 //回复操作失败
1218 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1352 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1219 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1353 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1220 } 1354 }
1221 1355
1222 JZSDK_LOG_INFO("处理得到的角度是%d",Gimbal_angle); 1356 JZSDK_LOG_INFO("处理得到的角度是%d",Gimbal_angle);
1223 1357
1224 - T_JZsdkReturnCode ret = JZsdk_Uart_Gimbal_PitchControl(UART_4G, Gimbal_angle); 1358 + T_JZsdkReturnCode ret = JZsdk_Uart_Gimbal_PitchControl(UART_DEV_1, Gimbal_angle);
1225 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1359 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1226 { 1360 {
1227 //回复操作成功 1361 //回复操作成功
1228 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1362 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1229 } 1363 }
1230 else 1364 else
1231 { 1365 {
1232 //回复操作失败 1366 //回复操作失败
1233 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1367 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1234 } 1368 }
1235 } 1369 }
1236 1370
@@ -1265,13 +1399,13 @@ static int Uart_4G_RecvDeal_Gimbal_PitchFineTuningControl(char *getbuf) @@ -1265,13 +1399,13 @@ static int Uart_4G_RecvDeal_Gimbal_PitchFineTuningControl(char *getbuf)
1265 { 1399 {
1266 JZSDK_LOG_INFO("云台俯仰微调角度符号错误,无法正常控制"); 1400 JZSDK_LOG_INFO("云台俯仰微调角度符号错误,无法正常控制");
1267 //回复操作失败 1401 //回复操作失败
1268 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1402 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1269 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1403 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1270 } 1404 }
1271 1405
1272 JZSDK_LOG_INFO("处理得到云台俯仰微调角度是%d",Gimbal_angle); 1406 JZSDK_LOG_INFO("处理得到云台俯仰微调角度是%d",Gimbal_angle);
1273 1407
1274 - JZsdk_Uart_Gimbal_PitchFineTuningControl(UART_4G, FrameSequence ,Gimbal_angle); 1408 + JZsdk_Uart_Gimbal_PitchFineTuningControl(UART_DEV_1, FrameSequence ,Gimbal_angle);
1275 1409
1276 } 1410 }
1277 1411
@@ -1297,16 +1431,16 @@ static int Uart_4G_RecvDeal_SearchLight_SetFrequency(char *getbuf) @@ -1297,16 +1431,16 @@ static int Uart_4G_RecvDeal_SearchLight_SetFrequency(char *getbuf)
1297 //1、通过数据帧2,获取爆闪频率 1431 //1、通过数据帧2,获取爆闪频率
1298 int Frequency = getbuf[10]; 1432 int Frequency = getbuf[10];
1299 1433
1300 - T_JZsdkReturnCode ret = JZsdk_Uart_Lighting_SetSearchLightFrequency(UART_4G, Frequency); 1434 + T_JZsdkReturnCode ret = JZsdk_Uart_Lighting_SetSearchLightFrequency(UART_DEV_1, Frequency);
1301 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1435 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1302 { 1436 {
1303 //回复操作成功 1437 //回复操作成功
1304 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1438 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1305 } 1439 }
1306 else 1440 else
1307 { 1441 {
1308 //回复操作失败 1442 //回复操作失败
1309 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1443 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1310 } 1444 }
1311 } 1445 }
1312 1446
@@ -1324,16 +1458,16 @@ static int Uart_4G_RecvDeal_SearchLight_Control(char *getbuf) @@ -1324,16 +1458,16 @@ static int Uart_4G_RecvDeal_SearchLight_Control(char *getbuf)
1324 //1、通过数据帧2,获取灯光控制模式 1458 //1、通过数据帧2,获取灯光控制模式
1325 int value = getbuf[10]; 1459 int value = getbuf[10];
1326 1460
1327 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Control(UART_4G, value); 1461 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Control(UART_DEV_1, value);
1328 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1462 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1329 { 1463 {
1330 //回复操作成功 1464 //回复操作成功
1331 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1465 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1332 } 1466 }
1333 else 1467 else
1334 { 1468 {
1335 //回复操作失败 1469 //回复操作失败
1336 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1470 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1337 } 1471 }
1338 } 1472 }
1339 1473
@@ -1352,16 +1486,16 @@ static int Uart_4G_RecvDeal_SearchLight_Lumen(char *getbuf) @@ -1352,16 +1486,16 @@ static int Uart_4G_RecvDeal_SearchLight_Lumen(char *getbuf)
1352 int LeftLumen = getbuf[9]; //左灯亮度 1486 int LeftLumen = getbuf[9]; //左灯亮度
1353 int RightLumen = getbuf[10]; //右灯亮度 1487 int RightLumen = getbuf[10]; //右灯亮度
1354 1488
1355 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Lumen(UART_4G, LeftLumen, RightLumen); 1489 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Lumen(UART_DEV_1, LeftLumen, RightLumen);
1356 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1490 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1357 { 1491 {
1358 //回复操作成功 1492 //回复操作成功
1359 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1493 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1360 } 1494 }
1361 else 1495 else
1362 { 1496 {
1363 //回复操作失败 1497 //回复操作失败
1364 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1498 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1365 } 1499 }
1366 } 1500 }
1367 1501
@@ -1377,7 +1511,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SearchLightLightAttribute(char *getbuf) @@ -1377,7 +1511,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SearchLightLightAttribute(char *getbuf)
1377 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1511 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1378 1512
1379 //2、查询灯光属性 1513 //2、查询灯光属性
1380 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightLightAttribute(UART_4G, FrameSequence); 1514 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightLightAttribute(UART_DEV_1, FrameSequence);
1381 1515
1382 } 1516 }
1383 1517
@@ -1393,7 +1527,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SearchLightTemperture(char *getbuf) @@ -1393,7 +1527,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SearchLightTemperture(char *getbuf)
1393 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1527 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1394 1528
1395 //2、查询探照灯温度 1529 //2、查询探照灯温度
1396 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightTemperture(UART_4G, FrameSequence); 1530 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightTemperture(UART_DEV_1, FrameSequence);
1397 } 1531 }
1398 1532
1399 /********* 1533 /*********
@@ -1410,16 +1544,16 @@ static int Uart_4G_RecvDeal_SearchLight_SubscriptionControl(char *getbuf) @@ -1410,16 +1544,16 @@ static int Uart_4G_RecvDeal_SearchLight_SubscriptionControl(char *getbuf)
1410 //1、通过数据帧2,获取控制值 1544 //1、通过数据帧2,获取控制值
1411 int value = getbuf[10]; 1545 int value = getbuf[10];
1412 1546
1413 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_SubscriptionControl(UART_4G, value); 1547 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_SubscriptionControl(UART_DEV_1, value);
1414 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1548 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1415 { 1549 {
1416 //回复操作成功 1550 //回复操作成功
1417 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1551 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1418 } 1552 }
1419 else 1553 else
1420 { 1554 {
1421 //回复操作失败 1555 //回复操作失败
1422 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1556 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1423 } 1557 }
1424 } 1558 }
1425 1559
@@ -1434,7 +1568,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SerialNumber(char *getbuf) @@ -1434,7 +1568,7 @@ static int Uart_4G_RecvDeal_CheckStatus_SerialNumber(char *getbuf)
1434 //获取帧的序列号 1568 //获取帧的序列号
1435 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1569 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1436 1570
1437 - JZsdk_Uart_CheckStatus_SerialNumber(UART_4G, FrameSequence); 1571 + JZsdk_Uart_CheckStatus_SerialNumber(UART_DEV_1, FrameSequence);
1438 1572
1439 } 1573 }
1440 1574
@@ -1453,7 +1587,7 @@ static int Uart_4G_RecvDeal_OutPutPower_Control(char *getbuf) @@ -1453,7 +1587,7 @@ static int Uart_4G_RecvDeal_OutPutPower_Control(char *getbuf)
1453 int Value = getbuf[9]; 1587 int Value = getbuf[9];
1454 1588
1455 //控制 1589 //控制
1456 - JZsdk_Uart_OutPutPower_Control(UART_4G, FrameSequence, Value); 1590 + JZsdk_Uart_OutPutPower_Control(UART_DEV_1, FrameSequence, Value);
1457 } 1591 }
1458 1592
1459 /********* 1593 /*********
@@ -1469,7 +1603,7 @@ static int Uart_4G_RecvDeal_Checkstatus_OutPutPower(char *getbuf) @@ -1469,7 +1603,7 @@ static int Uart_4G_RecvDeal_Checkstatus_OutPutPower(char *getbuf)
1469 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1603 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1470 1604
1471 //获取本地数值 1605 //获取本地数值
1472 - JZsdk_Uart_Checkstatus_OutPutPower(UART_4G, FrameSequence); 1606 + JZsdk_Uart_Checkstatus_OutPutPower(UART_DEV_1, FrameSequence);
1473 } 1607 }
1474 1608
1475 /******************************************************************************************************************************* 1609 /*******************************************************************************************************************************
@@ -1492,16 +1626,16 @@ static int Uart_4G_RecvDeal_WarningLight_ModeControl(char *getbuf) @@ -1492,16 +1626,16 @@ static int Uart_4G_RecvDeal_WarningLight_ModeControl(char *getbuf)
1492 int value1 = getbuf[9]; 1626 int value1 = getbuf[9];
1493 int value2 = getbuf[10]; 1627 int value2 = getbuf[10];
1494 1628
1495 - T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_ModeControl(UART_4G, value1, value2); 1629 + T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_ModeControl(UART_DEV_1, value1, value2);
1496 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1630 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1497 { 1631 {
1498 //回复操作成功 1632 //回复操作成功
1499 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1633 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1500 } 1634 }
1501 else 1635 else
1502 { 1636 {
1503 //回复操作失败 1637 //回复操作失败
1504 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1638 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1505 } 1639 }
1506 } 1640 }
1507 1641
@@ -1520,16 +1654,16 @@ static int Uart_4G_RecvDeal_WarningLight_SetColor(char *getbuf) @@ -1520,16 +1654,16 @@ static int Uart_4G_RecvDeal_WarningLight_SetColor(char *getbuf)
1520 int value1 = getbuf[9]; 1654 int value1 = getbuf[9];
1521 int value2 = getbuf[10]; 1655 int value2 = getbuf[10];
1522 1656
1523 - T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_SetColor(UART_4G, value1, value2); 1657 + T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_SetColor(UART_DEV_1, value1, value2);
1524 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1658 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1525 { 1659 {
1526 //回复操作成功 1660 //回复操作成功
1527 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 1661 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1528 } 1662 }
1529 else 1663 else
1530 { 1664 {
1531 //回复操作失败 1665 //回复操作失败
1532 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 1666 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1533 } 1667 }
1534 } 1668 }
1535 1669
@@ -1545,7 +1679,7 @@ static int Uart_4G_RecvDeal_CheckStatus_WarningLightStatus(char *getbuf) @@ -1545,7 +1679,7 @@ static int Uart_4G_RecvDeal_CheckStatus_WarningLightStatus(char *getbuf)
1545 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1679 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1546 1680
1547 //2、查询灯光属性 1681 //2、查询灯光属性
1548 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightStatus(UART_4G, FrameSequence); 1682 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightStatus(UART_DEV_1, FrameSequence);
1549 } 1683 }
1550 1684
1551 1685
@@ -1561,7 +1695,7 @@ static int Uart_4G_RecvDeal_CheckStatus_WarningLightColor(char *getbuf) @@ -1561,7 +1695,7 @@ static int Uart_4G_RecvDeal_CheckStatus_WarningLightColor(char *getbuf)
1561 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1695 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1562 1696
1563 //2、查询灯光属性 1697 //2、查询灯光属性
1564 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightColor(UART_4G, FrameSequence); 1698 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightColor(UART_DEV_1, FrameSequence);
1565 } 1699 }
1566 1700
1567 /******************************************************************************************************** 1701 /********************************************************************************************************
@@ -1603,7 +1737,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Frequency(char *getbuf) @@ -1603,7 +1737,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Frequency(char *getbuf)
1603 int value = getbuf[10]; 1737 int value = getbuf[10];
1604 1738
1605 //2、发送到本地处理 1739 //2、发送到本地处理
1606 - JZsdl_Uart_ObtainSearchLight_Frequency(UART_4G, value); 1740 + JZsdl_Uart_ObtainSearchLight_Frequency(UART_DEV_1, value);
1607 } 1741 }
1608 1742
1609 /********* 1743 /*********
@@ -1621,7 +1755,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Mode(char *getbuf) @@ -1621,7 +1755,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Mode(char *getbuf)
1621 int value = getbuf[10]; 1755 int value = getbuf[10];
1622 1756
1623 //2、发送到本地处理 1757 //2、发送到本地处理
1624 - JZsdl_Uart_ObtainSearchLight_Mode(UART_4G, value); 1758 + JZsdl_Uart_ObtainSearchLight_Mode(UART_DEV_1, value);
1625 } 1759 }
1626 1760
1627 /********* 1761 /*********
@@ -1640,7 +1774,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Lumen(char *getbuf) @@ -1640,7 +1774,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Lumen(char *getbuf)
1640 int value2 = getbuf[10]; 1774 int value2 = getbuf[10];
1641 1775
1642 //2、发送到本地处理 1776 //2、发送到本地处理
1643 - JZsdl_Uart_ObtainSearchLight_Lumen(UART_4G, value1, value2); 1777 + JZsdl_Uart_ObtainSearchLight_Lumen(UART_DEV_1, value1, value2);
1644 } 1778 }
1645 1779
1646 /********* 1780 /*********
@@ -1659,7 +1793,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Temperature(char *getbuf) @@ -1659,7 +1793,7 @@ static int Uart_4G_RecvDeal_ObtainSearchLight_Temperature(char *getbuf)
1659 int value2 = getbuf[10]; 1793 int value2 = getbuf[10];
1660 1794
1661 //2、发送到本地处理 1795 //2、发送到本地处理
1662 - JZsdl_Uart_ObtainSearchLight_Temperature(UART_4G, value1, value2); 1796 + JZsdl_Uart_ObtainSearchLight_Temperature(UART_DEV_1, value1, value2);
1663 } 1797 }
1664 1798
1665 /********* 1799 /*********
@@ -1690,7 +1824,7 @@ static int Uart_4G_RecvDeal_ObtainGimbal_Pitch(char *getbuf) @@ -1690,7 +1824,7 @@ static int Uart_4G_RecvDeal_ObtainGimbal_Pitch(char *getbuf)
1690 } 1824 }
1691 1825
1692 //2、发送到本地处理 1826 //2、发送到本地处理
1693 - JZsdl_Uart_RecvDeal_ObtainGimbal_Pitch(UART_4G, Gimbal_angle); 1827 + JZsdl_Uart_RecvDeal_ObtainGimbal_Pitch(UART_DEV_1, Gimbal_angle);
1694 } 1828 }
1695 1829
1696 /********* 1830 /*********
@@ -1721,7 +1855,7 @@ static int Uart_4G_RecvDeal_ObtainGimbal_Yaw(char *getbuf) @@ -1721,7 +1855,7 @@ static int Uart_4G_RecvDeal_ObtainGimbal_Yaw(char *getbuf)
1721 } 1855 }
1722 1856
1723 //2、发送到本地处理 1857 //2、发送到本地处理
1724 - JZsdl_Uart_RecvDeal_ObtainGimbal_Yaw(UART_4G, Gimbal_angle); 1858 + JZsdl_Uart_RecvDeal_ObtainGimbal_Yaw(UART_DEV_1, Gimbal_angle);
1725 } 1859 }
1726 1860
1727 /********* 1861 /*********
@@ -1750,7 +1884,7 @@ static int Uart_4G_RecvDeal_ObtainGimbalPitchFineTuning(char *getbuf) @@ -1750,7 +1884,7 @@ static int Uart_4G_RecvDeal_ObtainGimbalPitchFineTuning(char *getbuf)
1750 pitch = -pitch; 1884 pitch = -pitch;
1751 } 1885 }
1752 1886
1753 - JZsdl_Uart_ObtainGimbalPitchFineTuning(UART_4G, FrameSequence, pitch); 1887 + JZsdl_Uart_ObtainGimbalPitchFineTuning(UART_DEV_1, FrameSequence, pitch);
1754 } 1888 }
1755 1889
1756 /********* 1890 /*********
@@ -1769,7 +1903,7 @@ static int Uart_4G_RecvDeal_ObtainWaringlight_Status(char *getbuf) @@ -1769,7 +1903,7 @@ static int Uart_4G_RecvDeal_ObtainWaringlight_Status(char *getbuf)
1769 int value2 = getbuf[10]; 1903 int value2 = getbuf[10];
1770 1904
1771 //2、发送到本地处理 1905 //2、发送到本地处理
1772 - JZsdl_Uart_RecvDeal_ObtainWaringlight_Status(UART_4G, value1, value2); 1906 + JZsdl_Uart_RecvDeal_ObtainWaringlight_Status(UART_DEV_1, value1, value2);
1773 } 1907 }
1774 1908
1775 /********* 1909 /*********
@@ -1788,7 +1922,7 @@ static int Uart_4G_RecvDeal_ObtainWaringlight_Color(char *getbuf) @@ -1788,7 +1922,7 @@ static int Uart_4G_RecvDeal_ObtainWaringlight_Color(char *getbuf)
1788 int value2 = getbuf[10]; 1922 int value2 = getbuf[10];
1789 1923
1790 //2、发送到本地处理 1924 //2、发送到本地处理
1791 - JZsdl_Uart_RecvDeal_ObtainWaringlight_Color(UART_4G, value1, value2); 1925 + JZsdl_Uart_RecvDeal_ObtainWaringlight_Color(UART_DEV_1, value1, value2);
1792 } 1926 }
1793 1927
1794 /********* 1928 /*********
@@ -1843,7 +1977,7 @@ static int Uart_4G_RecvDeal_QuerySecondaryDeviceName(char *getbuf) @@ -1843,7 +1977,7 @@ static int Uart_4G_RecvDeal_QuerySecondaryDeviceName(char *getbuf)
1843 int SecondaryName = JZsdk_Uart_GetSecondaryDeviceName(); 1977 int SecondaryName = JZsdk_Uart_GetSecondaryDeviceName();
1844 1978
1845 //3、回复当前从设备名 1979 //3、回复当前从设备名
1846 - JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(UART_4G ,SecondaryName, FrameSequence); 1980 + JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(UART_DEV_1 ,SecondaryName, FrameSequence);
1847 } 1981 }
1848 1982
1849 /******************************************************************************************************************************* 1983 /*******************************************************************************************************************************
@@ -1865,16 +1999,16 @@ static int Uart_4G_RecvDeal_SetGimbalRange(char *getbuf) @@ -1865,16 +1999,16 @@ static int Uart_4G_RecvDeal_SetGimbalRange(char *getbuf)
1865 //1、通过数据帧2,获取设置的大小值 1999 //1、通过数据帧2,获取设置的大小值
1866 int value = getbuf[10] ; 2000 int value = getbuf[10] ;
1867 2001
1868 - T_JZsdkReturnCode ret = JZsdk_Uart_SetGimbalRange(UART_4G, value); 2002 + T_JZsdkReturnCode ret = JZsdk_Uart_SetGimbalRange(UART_DEV_1, value);
1869 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 2003 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1870 { 2004 {
1871 //回复操作成功 2005 //回复操作成功
1872 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 2006 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1873 } 2007 }
1874 else 2008 else
1875 { 2009 {
1876 //回复操作失败 2010 //回复操作失败
1877 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 2011 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1878 } 2012 }
1879 } 2013 }
1880 2014
@@ -1894,7 +2028,7 @@ static int Uart_4G_RecvDeal_GimbalLinkageControl(char *getbuf) @@ -1894,7 +2028,7 @@ static int Uart_4G_RecvDeal_GimbalLinkageControl(char *getbuf)
1894 int value = getbuf[10] ; 2028 int value = getbuf[10] ;
1895 2029
1896 //2、设置 2030 //2、设置
1897 - JZsdk_Uart_GimbalLinkageControl(UART_4G, FrameSequence, value); 2031 + JZsdk_Uart_GimbalLinkageControl(UART_DEV_1, FrameSequence, value);
1898 2032
1899 } 2033 }
1900 2034
@@ -1911,7 +2045,7 @@ static int Uart_4G_RecvDeal_Checkstatus_GimbalLinkage(char *getbuf) @@ -1911,7 +2045,7 @@ static int Uart_4G_RecvDeal_Checkstatus_GimbalLinkage(char *getbuf)
1911 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 2045 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1912 2046
1913 //查询是否开启云台联动 2047 //查询是否开启云台联动
1914 - JZsdk_Uart_Checkstatus_GimbalLinkage(UART_4G, FrameSequence); 2048 + JZsdk_Uart_Checkstatus_GimbalLinkage(UART_DEV_1, FrameSequence);
1915 } 2049 }
1916 2050
1917 static int Uart_4G_RecvDeal_UartBitrateChange(char *getbuf) 2051 static int Uart_4G_RecvDeal_UartBitrateChange(char *getbuf)
@@ -1952,7 +2086,7 @@ static int Uart_4G_RecvDeal_UartBitrateChange(char *getbuf) @@ -1952,7 +2086,7 @@ static int Uart_4G_RecvDeal_UartBitrateChange(char *getbuf)
1952 break; 2086 break;
1953 } 2087 }
1954 2088
1955 - JZsdk_Uart_BitRateChange(UART_4G, BitRate); 2089 + JZsdk_Uart_BitRateChange(UART_DEV_1, BitRate);
1956 } 2090 }
1957 2091
1958 /******************************************************************************************************** 2092 /********************************************************************************************************
@@ -1991,12 +2125,12 @@ static int Uart_4G_RecvDeal_ObtainSecondaryDeviceName(char *getbuf) @@ -1991,12 +2125,12 @@ static int Uart_4G_RecvDeal_ObtainSecondaryDeviceName(char *getbuf)
1991 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 2125 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1992 { 2126 {
1993 //回复操作成功 2127 //回复操作成功
1994 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_4G, FrameSequence); 2128 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1995 } 2129 }
1996 else 2130 else
1997 { 2131 {
1998 //回复操作失败 2132 //回复操作失败
1999 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, FrameSequence); 2133 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
2000 } 2134 }
2001 } 2135 }
2002 2136
@@ -2020,7 +2154,7 @@ static int Uart_4G_RecvDeal_ObtainGimbalLinkage(char *getbuf) @@ -2020,7 +2154,7 @@ static int Uart_4G_RecvDeal_ObtainGimbalLinkage(char *getbuf)
2020 int value1 = getbuf[10]; 2154 int value1 = getbuf[10];
2021 2155
2022 //2、保存 2156 //2、保存
2023 - JZsdk_Uart_ObtainGimbalLinkage(UART_4G,FrameSequence,value1); 2157 + JZsdk_Uart_ObtainGimbalLinkage(UART_DEV_1,FrameSequence,value1);
2024 } 2158 }
2025 2159
2026 2160
@@ -2050,7 +2184,7 @@ static int Uart_4G_RecvDeal_FrameErrorReply(char *getbuf) @@ -2050,7 +2184,7 @@ static int Uart_4G_RecvDeal_FrameErrorReply(char *getbuf)
2050 JZSDK_LOG_ERROR("帧指令错误:帧错误或者是帧无对应操作\n"); 2184 JZSDK_LOG_ERROR("帧指令错误:帧错误或者是帧无对应操作\n");
2051 //无法正常获取帧的序列号 2185 //无法正常获取帧的序列号
2052 //回复操作失败 2186 //回复操作失败
2053 - JZsdk_Uart_SendDeal_Reply_Failure(UART_4G, 0x00); 2187 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, 0x00);
2054 2188
2055 } 2189 }
2056 2190
@@ -2090,7 +2224,7 @@ static int Uart_4G_RecvDeal_OperationFailed(char *getbuf) @@ -2090,7 +2224,7 @@ static int Uart_4G_RecvDeal_OperationFailed(char *getbuf)
2090 *********************************************************************************************************/ 2224 *********************************************************************************************************/
2091 int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) 2225 int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2092 { 2226 {
2093 - JZSDK_LOG_INFO("串口设备4G,接受到的模式为:%x",Receive_mode); 2227 + JZSDK_LOG_INFO("串口设备4g,接受到的模式为:%x",Receive_mode);
2094 switch (Receive_mode) 2228 switch (Receive_mode)
2095 { 2229 {
2096 /******************************************************************************************************************************* 2230 /*******************************************************************************************************************************
@@ -2110,8 +2244,8 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) @@ -2110,8 +2244,8 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2110 return 0; 2244 return 0;
2111 break; 2245 break;
2112 //语音传输处理 2246 //语音传输处理
2113 - case JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION:  
2114 - Uart_4G_RecvDeal_RealTimeMP2_transmission(getdata, len); 2247 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION:
  2248 + Uart_4G_RecvDeal_RealTimeMP2_Unlimit_transmission(getdata, len);
2115 return 0; 2249 return 0;
2116 break; 2250 break;
2117 //关闭语音传输 2251 //关闭语音传输
@@ -2119,17 +2253,30 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) @@ -2119,17 +2253,30 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2119 Uart_4G_RecvDeal_RealTimeMP2_stop(getdata); 2253 Uart_4G_RecvDeal_RealTimeMP2_stop(getdata);
2120 return 0; 2254 return 0;
2121 break; 2255 break;
  2256 + //定长mp2语音
  2257 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION:
  2258 + Uart_4G_RecvDeal_RealTimeMP2_Limit_transmission(getdata, len);
  2259 + return 0;
  2260 + break;
2122 2261
2123 //打开音频文件上传 2262 //打开音频文件上传
2124 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START: 2263 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START:
2125 Uart_4G_RecvDeal_SaveAudioFileTrans_start(getdata, len); 2264 Uart_4G_RecvDeal_SaveAudioFileTrans_start(getdata, len);
2126 return 0; 2265 return 0;
2127 break; 2266 break;
  2267 +
2128 //传输音频文件 2268 //传输音频文件
2129 - case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION:  
2130 - Uart_4G_RecvDeal_SaveAudioFileTrans_transmission(getdata, len); 2269 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION:
  2270 + Uart_4G_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(getdata, len);
  2271 + return 0;
  2272 + break;
  2273 +
  2274 + //传输定长音频文件
  2275 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION:
  2276 + Uart_4G_RecvDeal_SaveAudioFileTrans_LimitTransmission(getdata, len);
2131 return 0; 2277 return 0;
2132 break; 2278 break;
  2279 +
2133 //关闭音频文件上传 2280 //关闭音频文件上传
2134 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP: 2281 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP:
2135 Uart_4G_RecvDeal_SaveAudioFileTrans_stop(getdata); 2282 Uart_4G_RecvDeal_SaveAudioFileTrans_stop(getdata);
@@ -2267,11 +2414,19 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) @@ -2267,11 +2414,19 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2267 Uart_4G_RecvDeal_OpusTrans_start(getdata); 2414 Uart_4G_RecvDeal_OpusTrans_start(getdata);
2268 return 0; 2415 return 0;
2269 break; 2416 break;
  2417 +
2270 //传输opus 2418 //传输opus
2271 - case JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION:  
2272 - Uart_4G_RecvDeal_OpusTrans_transmission(getdata, len); 2419 + case JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION:
  2420 + Uart_4G_RecvDeal_OpusTrans_UnlimitTransmission(getdata, len);
2273 return 0; 2421 return 0;
2274 break; 2422 break;
  2423 +
  2424 + //传输定长opus文件数据
  2425 + case JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION:
  2426 + Uart_4G_RecvDeal_OpusTrans_LimitTransmission(getdata, len);
  2427 + return 0;
  2428 + break;
  2429 +
2275 //关闭opus传输 2430 //关闭opus传输
2276 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP: 2431 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP:
2277 Uart_4G_RecvDeal_OpusTrans_stop(getdata); 2432 Uart_4G_RecvDeal_OpusTrans_stop(getdata);
@@ -2291,8 +2446,14 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) @@ -2291,8 +2446,14 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2291 break; 2446 break;
2292 2447
2293 //传输opus实时喊话数据 2448 //传输opus实时喊话数据
2294 - case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION:  
2295 - Uart_4G_RecvDeal_Opus_RealTimeVoice_transmission(getdata, len); 2449 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION:
  2450 + Uart_4G_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(getdata, len);
  2451 + return 0;
  2452 + break;
  2453 +
  2454 + //传输定长opus实时喊话数据
  2455 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION:
  2456 + Uart_4G_RecvDeal_Opus_RealTimeVoice_LimitTransmission(getdata, len);
2296 return 0; 2457 return 0;
2297 break; 2458 break;
2298 2459
@@ -2330,10 +2491,17 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) @@ -2330,10 +2491,17 @@ int Uart_4G_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2330 return 0; 2491 return 0;
2331 break; 2492 break;
2332 //TTS传输中 2493 //TTS传输中
2333 - case JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION:  
2334 - Uart_4G_RecvDeal_TTS_Trans_transmission(getdata, len); 2494 + case JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION:
  2495 + Uart_4G_RecvDeal_TTS_Trans_UnlimitTransmission(getdata, len);
2335 return 0; 2496 return 0;
2336 break; 2497 break;
  2498 +
  2499 + //定长TTS传输中
  2500 + case JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION:
  2501 + Uart_4G_RecvDeal_TTS_Trans_LimitTransmission(getdata, len);
  2502 + return 0;
  2503 + break;
  2504 +
2337 //TTS传输关闭 2505 //TTS传输关闭
2338 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP: 2506 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP:
2339 Uart_4G_RecvDeal_TTS_Trans_stop(getdata); 2507 Uart_4G_RecvDeal_TTS_Trans_stop(getdata);
@@ -2594,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len) @@ -2594,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len)
2594 { 2762 {
2595 Uart_4G_RecvDeal_RecvDeal(flag, getbuf, len); 2763 Uart_4G_RecvDeal_RecvDeal(flag, getbuf, len);
2596 //如果不处于5大传输模式 2764 //如果不处于5大传输模式
2597 - if ((UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2598 - && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2599 - && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2600 - && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2601 - && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2765 + if ((UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2766 + && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2767 + && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2768 + && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2769 + && (UART_4G_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS传输模式)
2602 { 2770 {
2603 //刷新模式 2771 //刷新模式
2604 UART_4G_Receive_mode = flag; 2772 UART_4G_Receive_mode = flag;
@@ -2608,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len) @@ -2608,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len)
2608 2776
2609 //否则 如果处于传输传输过程 处理模式 正常录入数据 2777 //否则 如果处于传输传输过程 处理模式 正常录入数据
2610 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR 2778 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR
2611 - && ((UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2612 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2613 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2614 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2615 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION))) //TTS传输模式) 2779 + && ((UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2780 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2781 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2782 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2783 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION))) //TTS传输模式)
2616 { 2784 {
2617 Uart_4G_RecvDeal_RecvDeal(UART_4G_Receive_mode, getbuf, len); 2785 Uart_4G_RecvDeal_RecvDeal(UART_4G_Receive_mode, getbuf, len);
2618 } 2786 }
@@ -2629,7 +2797,7 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len) @@ -2629,7 +2797,7 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_4G(unsigned char *getbuf, int len)
2629 * ****************/ 2797 * ****************/
2630 int JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(int value) 2798 int JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(int value)
2631 { 2799 {
2632 - JZSDK_LOG_INFO("串口设备4G,二次修改接收模式%x\n",value); 2800 + JZSDK_LOG_INFO("串口设备4g,二次修改接收模式%x\n",value);
2633 UART_4G_Receive_mode = value; 2801 UART_4G_Receive_mode = value;
2634 return 0; 2802 return 0;
2635 } 2803 }
@@ -2641,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(int value) @@ -2641,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_4G_ReceiveMode(int value)
2641 */ 2809 */
2642 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_4G_TransmodeDecide() 2810 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_4G_TransmodeDecide()
2643 { 2811 {
2644 - if ((UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2645 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2646 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2647 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2648 - || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2812 + if ((UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //mp2语音无限制传输模式
  2813 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件无限制传输模式
  2814 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus无限制传输模式
  2815 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音无限制传输模式
  2816 + || (UART_4G_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS无限制传输模式)
2649 { 2817 {
2650 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 2818 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
2651 } 2819 }
@@ -69,7 +69,7 @@ static int Uart_DEV1_RecvDeal_AskForConnect(char *getbuf) @@ -69,7 +69,7 @@ static int Uart_DEV1_RecvDeal_AskForConnect(char *getbuf)
69 **********/ 69 **********/
70 static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf) 70 static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf)
71 { 71 {
72 - JZSDK_LOG_DEBUG("开启MP2实时喊话功能\n"); 72 + JZSDK_LOG_INFO("开启MP2实时喊话功能\n");
73 T_JZsdkReturnCode ret; 73 T_JZsdkReturnCode ret;
74 74
75 //获取帧的序列号 75 //获取帧的序列号
@@ -86,7 +86,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -86,7 +86,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf)
86 } 86 }
87 87
88 //1、修改接收模式 88 //1、修改接收模式
89 - JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION); 89 + JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION);
90 90
91 //2、获取码率倍率 默认8k 91 //2、获取码率倍率 默认8k
92 int RateMagnification = (int)getbuf[9]; 92 int RateMagnification = (int)getbuf[9];
@@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_start(char *getbuf)
121 * 121 *
122 * 122 *
123 **********/ 123 **********/
124 -static int Uart_DEV1_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) 124 +static int Uart_DEV1_RecvDeal_RealTimeMP2_Unlimit_transmission(char *getdata, int len)
125 { 125 {
126 JZSDK_LOG_INFO("MP2实时喊话传输中\n"); 126 JZSDK_LOG_INFO("MP2实时喊话传输中\n");
127 T_JZsdkReturnCode ret; 127 T_JZsdkReturnCode ret;
@@ -130,6 +130,31 @@ static int Uart_DEV1_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) @@ -130,6 +130,31 @@ static int Uart_DEV1_RecvDeal_RealTimeMP2_transmission(char *getdata, int len)
130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len); 130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len);
131 131
132 } 132 }
  133 +
  134 +
  135 +/*********
  136 + *
  137 + * 语音MP2实时喊话有限传输中
  138 + *
  139 + *
  140 +**********/
  141 +static int Uart_DEV1_RecvDeal_RealTimeMP2_Limit_transmission(char *getdata, int len)
  142 +{
  143 + JZSDK_LOG_INFO("MP2实时喊话有限制传输中\n");
  144 + T_JZsdkReturnCode ret;
  145 +
  146 + //提取出数据
  147 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  148 + if (DataLen > 128)
  149 + {
  150 + JZSDK_LOG_ERROR("传输得到的mp2实时数据帧长度超出128上限");
  151 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  152 + }
  153 +
  154 + //传输数据接口
  155 + ret = JZsdk_Uart_RealTimeMP2_Trans(getdata+9, DataLen);
  156 +}
  157 +
133 /********* 158 /*********
134 * 159 *
135 * 关闭语音MP2发送功能 160 * 关闭语音MP2发送功能
@@ -138,13 +163,13 @@ static int Uart_DEV1_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) @@ -138,13 +163,13 @@ static int Uart_DEV1_RecvDeal_RealTimeMP2_transmission(char *getdata, int len)
138 **********/ 163 **********/
139 static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_stop(char *getbuf) 164 static T_JZsdkReturnCode Uart_DEV1_RecvDeal_RealTimeMP2_stop(char *getbuf)
140 { 165 {
141 - JZSDK_LOG_DEBUG("关闭MP2实时喊话功能\n"); 166 + JZSDK_LOG_INFO("关闭MP2实时喊话功能\n");
142 T_JZsdkReturnCode ret; 167 T_JZsdkReturnCode ret;
143 168
144 //获取帧的序列号 169 //获取帧的序列号
145 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 170 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
146 171
147 - if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION) 172 + if ((UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION) )
148 { 173 {
149 //回复操作失败 174 //回复操作失败
150 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence); 175 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
@@ -208,7 +233,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(char *getbu @@ -208,7 +233,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(char *getbu
208 } 233 }
209 234
210 //3、调整接收模式为音频文件传输 235 //3、调整接收模式为音频文件传输
211 - JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION); 236 + JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION);
212 237
213 //4、回复操作成功 238 //4、回复操作成功
214 JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence); 239 JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
@@ -216,28 +241,53 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(char *getbu @@ -216,28 +241,53 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(char *getbu
216 } 241 }
217 /********* 242 /*********
218 * 243 *
219 - * 传输音频文件中 244 + * 传输无限制音频文件中
220 * 245 *
221 * 246 *
222 **********/ 247 **********/
223 -static int Uart_DEV1_RecvDeal_SaveAudioFileTrans_transmission(char *getdata, int len) 248 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(char *getdata, int len)
224 { 249 {
225 JZSDK_LOG_INFO("传输音频文件中\n"); 250 JZSDK_LOG_INFO("传输音频文件中\n");
226 JZsdk_Uart_SaveAudioFileTrans(getdata, len); 251 JZsdk_Uart_SaveAudioFileTrans(getdata, len);
227 } 252 }
  253 +
  254 +/*********
  255 + *
  256 + * 传输定长音频文件中
  257 + *
  258 + *
  259 +**********/
  260 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_LimitTransmission(char *getdata, int len)
  261 +{
  262 + JZSDK_LOG_INFO("传输定长音频文件中\n");
  263 +
  264 + T_JZsdkReturnCode ret;
  265 +
  266 + //提取出数据
  267 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  268 + if (DataLen > 128)
  269 + {
  270 + JZSDK_LOG_ERROR("传输得到的定长音频文帧长度超出128上限");
  271 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  272 + }
  273 +
  274 + //传输数据接口
  275 + ret = JZsdk_Uart_SaveAudioFileTrans(getdata+9, DataLen);
  276 +}
  277 +
228 /********* 278 /*********
229 * 279 *
230 * 关闭音频文件上传 280 * 关闭音频文件上传
231 * 281 *
232 * 282 *
233 **********/ 283 **********/
234 -static int Uart_DEV1_RecvDeal_SaveAudioFileTrans_stop(char *getbuf) 284 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_SaveAudioFileTrans_stop(char *getbuf)
235 { 285 {
236 JZSDK_LOG_INFO("开始传输的音频文件保存\n"); 286 JZSDK_LOG_INFO("开始传输的音频文件保存\n");
237 //获取帧的序列号 287 //获取帧的序列号
238 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 288 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
239 289
240 - if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) 290 + if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION)
241 { 291 {
242 //回复操作失败 292 //回复操作失败
243 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence); 293 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
@@ -912,7 +962,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_start(char *getbuf) @@ -912,7 +962,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_start(char *getbuf)
912 TTS_Recv_buffer_length = 0; 962 TTS_Recv_buffer_length = 0;
913 963
914 //3、将接收模式设置为接收TTS数据模式 964 //3、将接收模式设置为接收TTS数据模式
915 - JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION); 965 + JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION);
916 966
917 //回复操作成功 967 //回复操作成功
918 JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence); 968 JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
@@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_start(char *getbuf) @@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_start(char *getbuf)
923 * 973 *
924 * 974 *
925 **********/ 975 **********/
926 -static int Uart_DEV1_RecvDeal_TTS_Trans_transmission(char *getdata, int len) 976 +static int Uart_DEV1_RecvDeal_TTS_Trans_UnlimitTransmission(char *getdata, int len)
927 { 977 {
928 JZSDK_LOG_INFO("tts传输中"); 978 JZSDK_LOG_INFO("tts传输中");
929 979
@@ -940,6 +990,38 @@ static int Uart_DEV1_RecvDeal_TTS_Trans_transmission(char *getdata, int len) @@ -940,6 +990,38 @@ static int Uart_DEV1_RecvDeal_TTS_Trans_transmission(char *getdata, int len)
940 JZSDK_LOG_ERROR("TTS字数超出1000字节"); 990 JZSDK_LOG_ERROR("TTS字数超出1000字节");
941 } 991 }
942 } 992 }
  993 +/***********
  994 + *
  995 + * tts定长传输中
  996 + *
  997 + * ***/
  998 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_LimitTransmission(char *getdata, int len)
  999 +{
  1000 + JZSDK_LOG_INFO("tts定长传输中");
  1001 +
  1002 + T_JZsdkReturnCode ret;
  1003 +
  1004 + //提取出数据
  1005 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1006 + if (DataLen > 128)
  1007 + {
  1008 + JZSDK_LOG_ERROR("tts定长帧,单帧数据长度超出128上限");
  1009 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1010 + }
  1011 +
  1012 + if (TTS_Recv_buffer_length+DataLen < 1000)
  1013 + {
  1014 + //1、将新的数据 放入缓冲区
  1015 + memcpy(TTS_Recv_buffer+TTS_Recv_buffer_length, getdata+9, DataLen);
  1016 +
  1017 + //2、记录已加载的长度
  1018 + TTS_Recv_buffer_length = TTS_Recv_buffer_length + DataLen;
  1019 + }
  1020 + else
  1021 + {
  1022 + JZSDK_LOG_ERROR("TTS总字数超出1000字节");
  1023 + }
  1024 +}
943 1025
944 /********* 1026 /*********
945 * 1027 *
@@ -953,7 +1035,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_stop(char *getbuf) @@ -953,7 +1035,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_TTS_Trans_stop(char *getbuf)
953 //获取帧的序列号 1035 //获取帧的序列号
954 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1036 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
955 1037
956 - if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION) 1038 + if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)
957 { 1039 {
958 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer); 1040 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer);
959 1041
@@ -1012,7 +1094,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_OpusTrans_start(char *getbuf) @@ -1012,7 +1094,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_OpusTrans_start(char *getbuf)
1012 JZsdk_Uart_SaveOpusStart(decode_rate); 1094 JZsdk_Uart_SaveOpusStart(decode_rate);
1013 1095
1014 //3、修改接收模式为传输opus 1096 //3、修改接收模式为传输opus
1015 - JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION); 1097 + JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION);
1016 1098
1017 JZSDK_LOG_INFO("已完成打开opus传输处理\n"); 1099 JZSDK_LOG_INFO("已完成打开opus传输处理\n");
1018 1100
@@ -1021,16 +1103,42 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_OpusTrans_start(char *getbuf) @@ -1021,16 +1103,42 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_OpusTrans_start(char *getbuf)
1021 } 1103 }
1022 /********* 1104 /*********
1023 * 1105 *
1024 - * opus传输 1106 + * opus不定长传输
1025 * 1107 *
1026 * 1108 *
1027 **********/ 1109 **********/
1028 -static int Uart_DEV1_RecvDeal_OpusTrans_transmission(char *SaveData, int size) 1110 +static int Uart_DEV1_RecvDeal_OpusTrans_UnlimitTransmission(char *SaveData, int size)
1029 { 1111 {
1030 JZsdk_Uart_SaveOpusTrans(SaveData,size); 1112 JZsdk_Uart_SaveOpusTrans(SaveData,size);
1031 1113
1032 JZSDK_LOG_INFO("已完成opus传输保存处理\n"); 1114 JZSDK_LOG_INFO("已完成opus传输保存处理\n");
1033 } 1115 }
  1116 +
  1117 +/*********
  1118 + *
  1119 + * opus定长传输文件
  1120 + *
  1121 + *
  1122 +**********/
  1123 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_OpusTrans_LimitTransmission(char *getdata, int size)
  1124 +{
  1125 + JZSDK_LOG_INFO("传输opus定长音频文件中\n");
  1126 +
  1127 + T_JZsdkReturnCode ret;
  1128 +
  1129 + //提取出数据
  1130 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1131 + if (DataLen > 400)
  1132 + {
  1133 + JZSDK_LOG_ERROR("传输得到的opus定长音频文件帧长度超出400上限");
  1134 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1135 + }
  1136 +
  1137 + //传输数据接口
  1138 + ret = JZsdk_Uart_SaveOpusTrans(getdata+9, DataLen);
  1139 +}
  1140 +
  1141 +
1034 /********* 1142 /*********
1035 * 1143 *
1036 * opus结束传输 1144 * opus结束传输
@@ -1043,7 +1151,7 @@ static int Uart_DEV1_RecvDeal_OpusTrans_stop(char *getbuf) @@ -1043,7 +1151,7 @@ static int Uart_DEV1_RecvDeal_OpusTrans_stop(char *getbuf)
1043 //获取帧的序列号 1151 //获取帧的序列号
1044 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1152 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1045 1153
1046 - if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) 1154 + if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION)
1047 { 1155 {
1048 //回复操作失败 1156 //回复操作失败
1049 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence); 1157 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
@@ -1112,7 +1220,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_Opus_RealTimeVoice_start(char *getbu @@ -1112,7 +1220,7 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_Opus_RealTimeVoice_start(char *getbu
1112 } 1220 }
1113 1221
1114 //1、修改接收模式 1222 //1、修改接收模式
1115 - JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION); 1223 + JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION);
1116 1224
1117 //2、获取码率倍率 默认8k*1倍 1225 //2、获取码率倍率 默认8k*1倍
1118 int RateMagnification = (int)getbuf[9]; 1226 int RateMagnification = (int)getbuf[9];
@@ -1136,16 +1244,42 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_Opus_RealTimeVoice_start(char *getbu @@ -1136,16 +1244,42 @@ static T_JZsdkReturnCode Uart_DEV1_RecvDeal_Opus_RealTimeVoice_start(char *getbu
1136 1244
1137 /********* 1245 /*********
1138 * 1246 *
1139 - * opus实时语音传输中 1247 + * opus实时语音无限制传输中
1140 * 1248 *
1141 * 1249 *
1142 **********/ 1250 **********/
1143 -static int Uart_DEV1_RecvDeal_Opus_RealTimeVoice_transmission(char *getdata, int len) 1251 +static int Uart_DEV1_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(char *getdata, int len)
1144 { 1252 {
1145 JZSDK_LOG_INFO("opus语音传输中\n"); 1253 JZSDK_LOG_INFO("opus语音传输中\n");
1146 JZsdk_Uart_RealTimeVoiceTrans(getdata, len); 1254 JZsdk_Uart_RealTimeVoiceTrans(getdata, len);
1147 1255
1148 } 1256 }
  1257 +
  1258 +/*********
  1259 + *
  1260 + * opus实时语音定长传输中
  1261 + *
  1262 + *
  1263 +**********/
  1264 +static T_JZsdkReturnCode Uart_DEV1_RecvDeal_Opus_RealTimeVoice_LimitTransmission(char *getdata, int len)
  1265 +{
  1266 + JZSDK_LOG_INFO("传输opus定长语音传输中\n");
  1267 +
  1268 + T_JZsdkReturnCode ret;
  1269 +
  1270 + //提取出数据
  1271 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1272 + if (DataLen > 80)
  1273 + {
  1274 + JZSDK_LOG_ERROR("opus实时语音定长传输帧数据长度超出80上限");
  1275 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1276 + }
  1277 +
  1278 + //传输数据接口
  1279 + ret = JZsdk_Uart_RealTimeVoiceTrans(getdata+9, DataLen);
  1280 +}
  1281 +
  1282 +
1149 /********* 1283 /*********
1150 * 1284 *
1151 * 关闭opus实时语音发送功能 1285 * 关闭opus实时语音发送功能
@@ -1158,7 +1292,7 @@ static int Uart_DEV1_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf) @@ -1158,7 +1292,7 @@ static int Uart_DEV1_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf)
1158 //获取帧的序列号 1292 //获取帧的序列号
1159 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1293 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1160 1294
1161 - if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) 1295 + if (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION)
1162 { 1296 {
1163 //回复操作失败 1297 //回复操作失败
1164 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence); 1298 JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
@@ -1582,26 +1716,6 @@ static int Uart_DEV1_RecvDeal_CheckStatus_WarningLightColor(char *getbuf) @@ -1582,26 +1716,6 @@ static int Uart_DEV1_RecvDeal_CheckStatus_WarningLightColor(char *getbuf)
1582 * 设备相关 1716 * 设备相关
1583 * 1717 *
1584 * *******************************************************************************************************************************/ 1718 * *******************************************************************************************************************************/
1585 -/*********  
1586 - *  
1587 - * 收到连接回复帧  
1588 - *  
1589 -**********/  
1590 -static int Uart_DEV1_RecvDeal_ObtainConnectFrame(char *getbuf)  
1591 -{  
1592 - JZSDK_LOG_INFO("收到连接回复帧\n");  
1593 -  
1594 - //获取帧的序列号  
1595 - int FrameSequence = JZsdk_Get_FrameSequence(getbuf);  
1596 -  
1597 - //1、通过数据帧2,获取值  
1598 - int value = getbuf[9];  
1599 -  
1600 - //2、发送到本地处理  
1601 - JZsdl_Uart_ObtainConnectFrame(UART_DEV_1, value);  
1602 -  
1603 -}  
1604 -  
1605 1719
1606 /******************************************************************************************************************************* 1720 /*******************************************************************************************************************************
1607 * 1721 *
@@ -2130,8 +2244,8 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2130,8 +2244,8 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2130 return 0; 2244 return 0;
2131 break; 2245 break;
2132 //语音传输处理 2246 //语音传输处理
2133 - case JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION:  
2134 - Uart_DEV1_RecvDeal_RealTimeMP2_transmission(getdata, len); 2247 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION:
  2248 + Uart_DEV1_RecvDeal_RealTimeMP2_Unlimit_transmission(getdata, len);
2135 return 0; 2249 return 0;
2136 break; 2250 break;
2137 //关闭语音传输 2251 //关闭语音传输
@@ -2139,17 +2253,30 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2139,17 +2253,30 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2139 Uart_DEV1_RecvDeal_RealTimeMP2_stop(getdata); 2253 Uart_DEV1_RecvDeal_RealTimeMP2_stop(getdata);
2140 return 0; 2254 return 0;
2141 break; 2255 break;
  2256 + //定长mp2语音
  2257 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION:
  2258 + Uart_DEV1_RecvDeal_RealTimeMP2_Limit_transmission(getdata, len);
  2259 + return 0;
  2260 + break;
2142 2261
2143 //打开音频文件上传 2262 //打开音频文件上传
2144 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START: 2263 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START:
2145 Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(getdata, len); 2264 Uart_DEV1_RecvDeal_SaveAudioFileTrans_start(getdata, len);
2146 return 0; 2265 return 0;
2147 break; 2266 break;
  2267 +
2148 //传输音频文件 2268 //传输音频文件
2149 - case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION:  
2150 - Uart_DEV1_RecvDeal_SaveAudioFileTrans_transmission(getdata, len); 2269 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION:
  2270 + Uart_DEV1_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(getdata, len);
2151 return 0; 2271 return 0;
2152 break; 2272 break;
  2273 +
  2274 + //传输定长音频文件
  2275 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION:
  2276 + Uart_DEV1_RecvDeal_SaveAudioFileTrans_LimitTransmission(getdata, len);
  2277 + return 0;
  2278 + break;
  2279 +
2153 //关闭音频文件上传 2280 //关闭音频文件上传
2154 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP: 2281 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP:
2155 Uart_DEV1_RecvDeal_SaveAudioFileTrans_stop(getdata); 2282 Uart_DEV1_RecvDeal_SaveAudioFileTrans_stop(getdata);
@@ -2287,11 +2414,19 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2287,11 +2414,19 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2287 Uart_DEV1_RecvDeal_OpusTrans_start(getdata); 2414 Uart_DEV1_RecvDeal_OpusTrans_start(getdata);
2288 return 0; 2415 return 0;
2289 break; 2416 break;
  2417 +
2290 //传输opus 2418 //传输opus
2291 - case JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION:  
2292 - Uart_DEV1_RecvDeal_OpusTrans_transmission(getdata, len); 2419 + case JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION:
  2420 + Uart_DEV1_RecvDeal_OpusTrans_UnlimitTransmission(getdata, len);
  2421 + return 0;
  2422 + break;
  2423 +
  2424 + //传输定长opus文件数据
  2425 + case JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION:
  2426 + Uart_DEV1_RecvDeal_OpusTrans_LimitTransmission(getdata, len);
2293 return 0; 2427 return 0;
2294 break; 2428 break;
  2429 +
2295 //关闭opus传输 2430 //关闭opus传输
2296 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP: 2431 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP:
2297 Uart_DEV1_RecvDeal_OpusTrans_stop(getdata); 2432 Uart_DEV1_RecvDeal_OpusTrans_stop(getdata);
@@ -2311,8 +2446,14 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2311,8 +2446,14 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2311 break; 2446 break;
2312 2447
2313 //传输opus实时喊话数据 2448 //传输opus实时喊话数据
2314 - case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION:  
2315 - Uart_DEV1_RecvDeal_Opus_RealTimeVoice_transmission(getdata, len); 2449 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION:
  2450 + Uart_DEV1_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(getdata, len);
  2451 + return 0;
  2452 + break;
  2453 +
  2454 + //传输定长opus实时喊话数据
  2455 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION:
  2456 + Uart_DEV1_RecvDeal_Opus_RealTimeVoice_LimitTransmission(getdata, len);
2316 return 0; 2457 return 0;
2317 break; 2458 break;
2318 2459
@@ -2350,10 +2491,17 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2350,10 +2491,17 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2350 return 0; 2491 return 0;
2351 break; 2492 break;
2352 //TTS传输中 2493 //TTS传输中
2353 - case JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION:  
2354 - Uart_DEV1_RecvDeal_TTS_Trans_transmission(getdata, len); 2494 + case JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION:
  2495 + Uart_DEV1_RecvDeal_TTS_Trans_UnlimitTransmission(getdata, len);
2355 return 0; 2496 return 0;
2356 break; 2497 break;
  2498 +
  2499 + //定长TTS传输中
  2500 + case JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION:
  2501 + Uart_DEV1_RecvDeal_TTS_Trans_LimitTransmission(getdata, len);
  2502 + return 0;
  2503 + break;
  2504 +
2357 //TTS传输关闭 2505 //TTS传输关闭
2358 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP: 2506 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP:
2359 Uart_DEV1_RecvDeal_TTS_Trans_stop(getdata); 2507 Uart_DEV1_RecvDeal_TTS_Trans_stop(getdata);
@@ -2438,11 +2586,6 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2438,11 +2586,6 @@ int Uart_DEV1_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2438 * 5B类部分 2586 * 5B类部分
2439 * 2587 *
2440 * *******************************************************************************************************************************/ 2588 * *******************************************************************************************************************************/
2441 - //连接回复  
2442 - case JZ_INSCODE_5BFRAME_INITIATECONNECT:  
2443 - Uart_DEV1_RecvDeal_ObtainConnectFrame(getdata);  
2444 - break;  
2445 -  
2446 //回复灯光频率 2589 //回复灯光频率
2447 case JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY: 2590 case JZ_INSCODE_5BFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY:
2448 Uart_DEV1_RecvDeal_ObtainSearchLight_Frequency(getdata); 2591 Uart_DEV1_RecvDeal_ObtainSearchLight_Frequency(getdata);
@@ -2619,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV1(unsigned char *getbuf, int len) @@ -2619,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV1(unsigned char *getbuf, int len)
2619 { 2762 {
2620 Uart_DEV1_RecvDeal_RecvDeal(flag, getbuf, len); 2763 Uart_DEV1_RecvDeal_RecvDeal(flag, getbuf, len);
2621 //如果不处于5大传输模式 2764 //如果不处于5大传输模式
2622 - if ((UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2623 - && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2624 - && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2625 - && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2626 - && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2765 + if ((UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2766 + && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2767 + && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2768 + && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2769 + && (UART_DEV1_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS传输模式)
2627 { 2770 {
2628 //刷新模式 2771 //刷新模式
2629 UART_DEV1_Receive_mode = flag; 2772 UART_DEV1_Receive_mode = flag;
@@ -2633,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV1(unsigned char *getbuf, int len) @@ -2633,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV1(unsigned char *getbuf, int len)
2633 2776
2634 //否则 如果处于传输传输过程 处理模式 正常录入数据 2777 //否则 如果处于传输传输过程 处理模式 正常录入数据
2635 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR 2778 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR
2636 - && ((UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2637 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2638 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2639 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2640 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION))) //TTS传输模式) 2779 + && ((UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2780 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2781 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2782 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2783 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION))) //TTS传输模式)
2641 { 2784 {
2642 Uart_DEV1_RecvDeal_RecvDeal(UART_DEV1_Receive_mode, getbuf, len); 2785 Uart_DEV1_RecvDeal_RecvDeal(UART_DEV1_Receive_mode, getbuf, len);
2643 } 2786 }
@@ -2666,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(int value) @@ -2666,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_DEV1_ReceiveMode(int value)
2666 */ 2809 */
2667 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV1_TransmodeDecide() 2810 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV1_TransmodeDecide()
2668 { 2811 {
2669 - if ((UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2670 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2671 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2672 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2673 - || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2812 + if ((UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //mp2语音无限制传输模式
  2813 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件无限制传输模式
  2814 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus无限制传输模式
  2815 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音无限制传输模式
  2816 + || (UART_DEV1_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS无限制传输模式)
2674 { 2817 {
2675 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 2818 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
2676 } 2819 }
@@ -41,7 +41,7 @@ static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV2_TransmodeDecide(); @@ -41,7 +41,7 @@ static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV2_TransmodeDecide();
41 **********/ 41 **********/
42 static int Uart_DEV2_RecvDeal_AskForConnect(char *getbuf) 42 static int Uart_DEV2_RecvDeal_AskForConnect(char *getbuf)
43 { 43 {
44 - JZSDK_LOG_INFO("串口设备2号,连接成功"); 44 + JZSDK_LOG_INFO("串口设备4g,连接成功");
45 //获取帧的序列号 45 //获取帧的序列号
46 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 46 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
47 47
@@ -49,10 +49,10 @@ static int Uart_DEV2_RecvDeal_AskForConnect(char *getbuf) @@ -49,10 +49,10 @@ static int Uart_DEV2_RecvDeal_AskForConnect(char *getbuf)
49 int Device_name = JZsdk_Uart_GetVersionReplay(); 49 int Device_name = JZsdk_Uart_GetVersionReplay();
50 50
51 //3、回复连接成功 51 //3、回复连接成功
52 - JZsdk_Uart_SendDeal_Send_Connect(UART_DEV_2, Device_name); 52 + JZsdk_Uart_SendDeal_Send_Connect(UART_DEV_1, Device_name);
53 53
54 //1、将串口程序设置为连接模式 54 //1、将串口程序设置为连接模式
55 - //JZsdk_Uart_SetMainWorkMode(JZ_FLAGCODE_ON); 55 + JZsdk_Uart_SetMainWorkMode(JZ_FLAGCODE_ON);
56 } 56 }
57 57
58 /******************************************************************************************************************************* 58 /*******************************************************************************************************************************
@@ -79,14 +79,14 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -79,14 +79,14 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf)
79 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 79 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
80 { 80 {
81 //回复操作失败 81 //回复操作失败
82 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 82 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
83 JZSDK_LOG_ERROR("开启MP2实时喊话功能失败\n"); 83 JZSDK_LOG_ERROR("开启MP2实时喊话功能失败\n");
84 84
85 return ret; 85 return ret;
86 } 86 }
87 87
88 //1、修改接收模式 88 //1、修改接收模式
89 - JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION); 89 + JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION);
90 90
91 //2、获取码率倍率 默认8k 91 //2、获取码率倍率 默认8k
92 int RateMagnification = (int)getbuf[9]; 92 int RateMagnification = (int)getbuf[9];
@@ -106,12 +106,12 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -106,12 +106,12 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf)
106 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 106 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
107 { 107 {
108 //4、回复操作成功 108 //4、回复操作成功
109 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 109 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
110 } 110 }
111 else 111 else
112 { 112 {
113 //4、回复操作失败 113 //4、回复操作失败
114 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 114 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
115 } 115 }
116 } 116 }
117 117
@@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf) @@ -121,7 +121,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_start(char *getbuf)
121 * 121 *
122 * 122 *
123 **********/ 123 **********/
124 -static int Uart_DEV2_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) 124 +static int Uart_DEV2_RecvDeal_RealTimeMP2_Unlimit_transmission(char *getdata, int len)
125 { 125 {
126 JZSDK_LOG_INFO("MP2实时喊话传输中\n"); 126 JZSDK_LOG_INFO("MP2实时喊话传输中\n");
127 T_JZsdkReturnCode ret; 127 T_JZsdkReturnCode ret;
@@ -130,6 +130,31 @@ static int Uart_DEV2_RecvDeal_RealTimeMP2_transmission(char *getdata, int len) @@ -130,6 +130,31 @@ static int Uart_DEV2_RecvDeal_RealTimeMP2_transmission(char *getdata, int len)
130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len); 130 ret = JZsdk_Uart_RealTimeMP2_Trans(getdata, len);
131 131
132 } 132 }
  133 +
  134 +
  135 +/*********
  136 + *
  137 + * 语音MP2实时喊话有限传输中
  138 + *
  139 + *
  140 +**********/
  141 +static int Uart_DEV2_RecvDeal_RealTimeMP2_Limit_transmission(char *getdata, int len)
  142 +{
  143 + JZSDK_LOG_INFO("MP2实时喊话有限制传输中\n");
  144 + T_JZsdkReturnCode ret;
  145 +
  146 + //提取出数据
  147 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  148 + if (DataLen > 128)
  149 + {
  150 + JZSDK_LOG_ERROR("传输得到的mp2实时数据帧长度超出128上限");
  151 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  152 + }
  153 +
  154 + //传输数据接口
  155 + ret = JZsdk_Uart_RealTimeMP2_Trans(getdata+9, DataLen);
  156 +}
  157 +
133 /********* 158 /*********
134 * 159 *
135 * 关闭语音MP2发送功能 160 * 关闭语音MP2发送功能
@@ -144,10 +169,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_stop(char *getbuf) @@ -144,10 +169,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_stop(char *getbuf)
144 //获取帧的序列号 169 //获取帧的序列号
145 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 170 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
146 171
147 - if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION) 172 + if ((UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION) )
148 { 173 {
149 //回复操作失败 174 //回复操作失败
150 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 175 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
151 JZSDK_LOG_ERROR("操作失败,mp2传输未开始,无法关闭"); 176 JZSDK_LOG_ERROR("操作失败,mp2传输未开始,无法关闭");
152 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 177 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
153 } 178 }
@@ -161,12 +186,12 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_stop(char *getbuf) @@ -161,12 +186,12 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_RealTimeMP2_stop(char *getbuf)
161 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 186 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
162 { 187 {
163 //4、回复操作成功 188 //4、回复操作成功
164 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 189 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
165 } 190 }
166 else 191 else
167 { 192 {
168 //4、回复操作失败 193 //4、回复操作失败
169 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 194 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
170 } 195 }
171 } 196 }
172 197
@@ -186,7 +211,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(char *getbu @@ -186,7 +211,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(char *getbu
186 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 211 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
187 { 212 {
188 //回复操作失败 213 //回复操作失败
189 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 214 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
190 JZSDK_LOG_ERROR("开始传输的音频文件保存失败"); 215 JZSDK_LOG_ERROR("开始传输的音频文件保存失败");
191 return ret; 216 return ret;
192 } 217 }
@@ -203,44 +228,69 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(char *getbu @@ -203,44 +228,69 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(char *getbu
203 ret = JZsdk_Uart_SaveAudioFileStart(FileName); 228 ret = JZsdk_Uart_SaveAudioFileStart(FileName);
204 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 229 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
205 { 230 {
206 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 231 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
207 return -1; 232 return -1;
208 } 233 }
209 234
210 //3、调整接收模式为音频文件传输 235 //3、调整接收模式为音频文件传输
211 - JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION); 236 + JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION);
212 237
213 //4、回复操作成功 238 //4、回复操作成功
214 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 239 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
215 240
216 } 241 }
217 /********* 242 /*********
218 * 243 *
219 - * 传输音频文件中 244 + * 传输无限制音频文件中
220 * 245 *
221 * 246 *
222 **********/ 247 **********/
223 -static int Uart_DEV2_RecvDeal_SaveAudioFileTrans_transmission(char *getdata, int len) 248 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(char *getdata, int len)
224 { 249 {
225 JZSDK_LOG_INFO("传输音频文件中\n"); 250 JZSDK_LOG_INFO("传输音频文件中\n");
226 JZsdk_Uart_SaveAudioFileTrans(getdata, len); 251 JZsdk_Uart_SaveAudioFileTrans(getdata, len);
227 } 252 }
  253 +
  254 +/*********
  255 + *
  256 + * 传输定长音频文件中
  257 + *
  258 + *
  259 +**********/
  260 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_LimitTransmission(char *getdata, int len)
  261 +{
  262 + JZSDK_LOG_INFO("传输定长音频文件中\n");
  263 +
  264 + T_JZsdkReturnCode ret;
  265 +
  266 + //提取出数据
  267 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  268 + if (DataLen > 128)
  269 + {
  270 + JZSDK_LOG_ERROR("传输得到的定长音频文帧长度超出128上限");
  271 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  272 + }
  273 +
  274 + //传输数据接口
  275 + ret = JZsdk_Uart_SaveAudioFileTrans(getdata+9, DataLen);
  276 +}
  277 +
228 /********* 278 /*********
229 * 279 *
230 * 关闭音频文件上传 280 * 关闭音频文件上传
231 * 281 *
232 * 282 *
233 **********/ 283 **********/
234 -static int Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(char *getbuf) 284 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(char *getbuf)
235 { 285 {
236 JZSDK_LOG_INFO("开始传输的音频文件保存\n"); 286 JZSDK_LOG_INFO("开始传输的音频文件保存\n");
237 //获取帧的序列号 287 //获取帧的序列号
238 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 288 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
239 289
240 - if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) 290 + if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION)
241 { 291 {
242 //回复操作失败 292 //回复操作失败
243 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 293 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
244 JZSDK_LOG_ERROR("关闭音频文件上传失败,音频文件上传未开始,无法关闭"); 294 JZSDK_LOG_ERROR("关闭音频文件上传失败,音频文件上传未开始,无法关闭");
245 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 295 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
246 } 296 }
@@ -252,7 +302,7 @@ static int Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(char *getbuf) @@ -252,7 +302,7 @@ static int Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(char *getbuf)
252 JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP); 302 JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP);
253 303
254 //2、回复操作成功 304 //2、回复操作成功
255 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 305 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
256 } 306 }
257 307
258 /********* 308 /*********
@@ -281,16 +331,16 @@ static int Uart_DEV2_RecvDeal_audio_PlayFile(char *getbuf) @@ -281,16 +331,16 @@ static int Uart_DEV2_RecvDeal_audio_PlayFile(char *getbuf)
281 331
282 JZSDK_LOG_INFO("播放指定音频:%s\n",music_name); 332 JZSDK_LOG_INFO("播放指定音频:%s\n",music_name);
283 333
284 - ret = JZsdk_Uart_PlayMusic(UART_DEV_2, music_name, datasize); 334 + ret = JZsdk_Uart_PlayMusic(UART_DEV_1, music_name, datasize);
285 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 335 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
286 { 336 {
287 //4、回复操作成功 337 //4、回复操作成功
288 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 338 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
289 } 339 }
290 else 340 else
291 { 341 {
292 //4、回复操作失败 342 //4、回复操作失败
293 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 343 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
294 } 344 }
295 } 345 }
296 /********* 346 /*********
@@ -305,10 +355,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayContinue(char *getbuf) @@ -305,10 +355,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayContinue(char *getbuf)
305 //获取帧的序列号 355 //获取帧的序列号
306 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 356 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
307 357
308 - JZsdk_Uart_audio_PlayContinue(UART_DEV_2); 358 + JZsdk_Uart_audio_PlayContinue(UART_DEV_1);
309 359
310 //回复操作成功 360 //回复操作成功
311 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 361 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
312 } 362 }
313 /********* 363 /*********
314 * 364 *
@@ -322,10 +372,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayPause(char *getbuf) @@ -322,10 +372,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayPause(char *getbuf)
322 //获取帧的序列号 372 //获取帧的序列号
323 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 373 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
324 374
325 - JZsdk_Uart_audio_PlayPause(UART_DEV_2); 375 + JZsdk_Uart_audio_PlayPause(UART_DEV_1);
326 376
327 //回复操作成功 377 //回复操作成功
328 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 378 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
329 } 379 }
330 /********* 380 /*********
331 * 381 *
@@ -339,10 +389,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayStop(char *getbuf) @@ -339,10 +389,10 @@ static int Uart_DEV2_RecvDeal_audio_PlayStop(char *getbuf)
339 //获取帧的序列号 389 //获取帧的序列号
340 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 390 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
341 391
342 - JZsdk_Uart_audio_PlayStop(UART_DEV_2); 392 + JZsdk_Uart_audio_PlayStop(UART_DEV_1);
343 393
344 //回复操作成功 394 //回复操作成功
345 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 395 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
346 } 396 }
347 397
348 /********* 398 /*********
@@ -357,10 +407,10 @@ static int Uart_DEV2_RecvDeal_audio_LastSong(char *getbuf) @@ -357,10 +407,10 @@ static int Uart_DEV2_RecvDeal_audio_LastSong(char *getbuf)
357 //获取帧的序列号 407 //获取帧的序列号
358 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 408 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
359 409
360 - JZsdk_Uart_audio_LastSong(UART_DEV_2); 410 + JZsdk_Uart_audio_LastSong(UART_DEV_1);
361 411
362 //回复操作成功 412 //回复操作成功
363 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 413 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
364 } 414 }
365 415
366 /********* 416 /*********
@@ -375,10 +425,10 @@ static int Uart_DEV2_RecvDeal_audio_NextSong(char *getbuf) @@ -375,10 +425,10 @@ static int Uart_DEV2_RecvDeal_audio_NextSong(char *getbuf)
375 //获取帧的序列号 425 //获取帧的序列号
376 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 426 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
377 427
378 - JZsdk_Uart_audio_NextSong(UART_DEV_2); 428 + JZsdk_Uart_audio_NextSong(UART_DEV_1);
379 429
380 //回复操作成功 430 //回复操作成功
381 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 431 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
382 } 432 }
383 433
384 /********* 434 /*********
@@ -394,7 +444,7 @@ static int Uart_DEV2_RecvDeal_audio_GetMusicList(char *getbuf) @@ -394,7 +444,7 @@ static int Uart_DEV2_RecvDeal_audio_GetMusicList(char *getbuf)
394 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 444 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
395 445
396 //回复操作成功 446 //回复操作成功
397 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 447 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
398 448
399 //0、刷新歌曲列表 449 //0、刷新歌曲列表
400 JZsdk_Uart_Flush_MusicList(); 450 JZsdk_Uart_Flush_MusicList();
@@ -411,16 +461,16 @@ static int Uart_DEV2_RecvDeal_audio_GetMusicList(char *getbuf) @@ -411,16 +461,16 @@ static int Uart_DEV2_RecvDeal_audio_GetMusicList(char *getbuf)
411 } 461 }
412 462
413 //3、发送开始帧 463 //3、发送开始帧
414 - JZsdk_Uart_SendDeal_Reply_Musiclist_start(UART_DEV_2, music_sum); 464 + JZsdk_Uart_SendDeal_Reply_Musiclist_start(UART_DEV_1, music_sum);
415 465
416 //4、逐一调用发送函数将歌曲名发出 466 //4、逐一调用发送函数将歌曲名发出
417 for (int i = 0; i < music_sum; i++) 467 for (int i = 0; i < music_sum; i++)
418 { 468 {
419 - JZsdk_Uart_SendDeal_Reply_Musiclist(UART_DEV_2, MusicName[i], MusicNameLength[i]); 469 + JZsdk_Uart_SendDeal_Reply_Musiclist(UART_DEV_1, MusicName[i], MusicNameLength[i]);
420 } 470 }
421 471
422 //5、发送结束帧 472 //5、发送结束帧
423 - JZsdk_Uart_SendDeal_Reply_Musiclist_end(UART_DEV_2); 473 + JZsdk_Uart_SendDeal_Reply_Musiclist_end(UART_DEV_1);
424 } 474 }
425 475
426 /********* 476 /*********
@@ -438,7 +488,7 @@ static int Uart_DEV2_RecvDeal_Amplifier_stop(char *getbuf) @@ -438,7 +488,7 @@ static int Uart_DEV2_RecvDeal_Amplifier_stop(char *getbuf)
438 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_OFF); 488 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_OFF);
439 489
440 //回复操作成功 490 //回复操作成功
441 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 491 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
442 492
443 } 493 }
444 /********* 494 /*********
@@ -456,7 +506,7 @@ static int Uart_DEV2_RecvDeal_Amplifier_open(char *getbuf) @@ -456,7 +506,7 @@ static int Uart_DEV2_RecvDeal_Amplifier_open(char *getbuf)
456 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_ON); 506 JZsdk_Uart_Set_Amplifier(JZ_FLAGCODE_ON);
457 507
458 //回复操作成功 508 //回复操作成功
459 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 509 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
460 510
461 } 511 }
462 /********* 512 /*********
@@ -483,10 +533,10 @@ static int Uart_DEV2_RecvDeal_SetVolume(char *getbuf) @@ -483,10 +533,10 @@ static int Uart_DEV2_RecvDeal_SetVolume(char *getbuf)
483 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 533 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
484 534
485 int value = (int)getbuf[9]; 535 int value = (int)getbuf[9];
486 - JZsdk_Uart_Set_Volume(UART_DEV_2, value); 536 + JZsdk_Uart_Set_Volume(UART_DEV_1, value);
487 537
488 //回复操作成功 538 //回复操作成功
489 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 539 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
490 } 540 }
491 541
492 /********* 542 /*********
@@ -505,10 +555,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_volume(char *getbuf) @@ -505,10 +555,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_volume(char *getbuf)
505 int volume = JZsdk_Uart_CheckStatus_volume(); 555 int volume = JZsdk_Uart_CheckStatus_volume();
506 556
507 //回复操作成功 557 //回复操作成功
508 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 558 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
509 559
510 //2、发送音量 560 //2、发送音量
511 - JZsdk_Uart_SendDeal_Reply_Volume(UART_DEV_2, volume); 561 + JZsdk_Uart_SendDeal_Reply_Volume(UART_DEV_1, volume);
512 562
513 } 563 }
514 /********* 564 /*********
@@ -530,10 +580,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_play(char *getbuf) @@ -530,10 +580,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_play(char *getbuf)
530 ret = JZsdk_Uart_CheckStatus_play(); 580 ret = JZsdk_Uart_CheckStatus_play();
531 581
532 //回复操作成功 582 //回复操作成功
533 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 583 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
534 584
535 //2、发送播放状态 585 //2、发送播放状态
536 - JZsdk_Uart_SendDeal_Send_PlayStatus(UART_DEV_2, ret); 586 + JZsdk_Uart_SendDeal_Send_PlayStatus(UART_DEV_1, ret);
537 587
538 } 588 }
539 /********* 589 /*********
@@ -556,7 +606,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_gimbal(char *getbuf) @@ -556,7 +606,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_gimbal(char *getbuf)
556 JZsdk_Uart_CheckStatus_gimbal(&PitchAngle, &YawAngle); 606 JZsdk_Uart_CheckStatus_gimbal(&PitchAngle, &YawAngle);
557 607
558 //2、发送本地云台值 608 //2、发送本地云台值
559 - JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(UART_DEV_2, PitchAngle); 609 + JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(UART_DEV_1, PitchAngle);
560 } 610 }
561 /********* 611 /*********
562 * 612 *
@@ -569,7 +619,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_GimbalFineTuning(char *getbuf) @@ -569,7 +619,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_GimbalFineTuning(char *getbuf)
569 //获取帧的序列号 619 //获取帧的序列号
570 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 620 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
571 621
572 - JZsdk_Uart_CheckStatus_GimbalFineTuning(UART_DEV_2, FrameSequence); 622 + JZsdk_Uart_CheckStatus_GimbalFineTuning(UART_DEV_1, FrameSequence);
573 } 623 }
574 624
575 /********* 625 /*********
@@ -593,10 +643,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_PLayFileName(char *getbuf) @@ -593,10 +643,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_PLayFileName(char *getbuf)
593 JZSDK_LOG_INFO("当前播放的是%s %d\n",MusicName, MusicName_Len); 643 JZSDK_LOG_INFO("当前播放的是%s %d\n",MusicName, MusicName_Len);
594 644
595 //回复操作成功 645 //回复操作成功
596 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 646 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
597 647
598 //2、发送名字 648 //2、发送名字
599 - JZsdk_Uart_SendDeal_Reply_MusicName(UART_DEV_2, MusicName,MusicName_Len); 649 + JZsdk_Uart_SendDeal_Reply_MusicName(UART_DEV_1, MusicName,MusicName_Len);
600 } 650 }
601 /********* 651 /*********
602 * 652 *
@@ -621,10 +671,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SoftwareVersion(char *getbuf) @@ -621,10 +671,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SoftwareVersion(char *getbuf)
621 JZSDK_LOG_INFO("当前的软件版本号为:%2x, %2x, %2x, %2x",majorVersion, minorVersion, modifyVersion, debugVersion); 671 JZSDK_LOG_INFO("当前的软件版本号为:%2x, %2x, %2x, %2x",majorVersion, minorVersion, modifyVersion, debugVersion);
622 672
623 //回复操作成功 673 //回复操作成功
624 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 674 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
625 675
626 //2、发送版本号 676 //2、发送版本号
627 - JZsdk_Uart_SendDeal_Reply_SoftVersion(UART_DEV_2, majorVersion, minorVersion, modifyVersion, debugVersion); 677 + JZsdk_Uart_SendDeal_Reply_SoftVersion(UART_DEV_1, majorVersion, minorVersion, modifyVersion, debugVersion);
628 } 678 }
629 /********* 679 /*********
630 * 680 *
@@ -648,10 +698,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_LoopPlay(char *getbuf) @@ -648,10 +698,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_LoopPlay(char *getbuf)
648 } 698 }
649 699
650 //回复操作成功 700 //回复操作成功
651 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 701 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
652 702
653 //2、发送循环状态 703 //2、发送循环状态
654 - JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(UART_DEV_2 ,LoopStatus); 704 + JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(UART_DEV_1 ,LoopStatus);
655 } 705 }
656 /********* 706 /*********
657 * 707 *
@@ -675,10 +725,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_TTS_tone(char *getbuf) @@ -675,10 +725,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_TTS_tone(char *getbuf)
675 } 725 }
676 726
677 //回复操作成功 727 //回复操作成功
678 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 728 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
679 729
680 //2、发送音色 730 //2、发送音色
681 - JZsdk_Uart_SendDeal_Reply_TTS_tone(UART_DEV_2 ,TTS_tone); 731 + JZsdk_Uart_SendDeal_Reply_TTS_tone(UART_DEV_1 ,TTS_tone);
682 732
683 } 733 }
684 /********* 734 /*********
@@ -703,10 +753,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_TTS_speed(char *getbuf) @@ -703,10 +753,10 @@ static int Uart_DEV2_RecvDeal_CheckStatus_TTS_speed(char *getbuf)
703 } 753 }
704 754
705 //回复操作成功 755 //回复操作成功
706 - //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 756 + //JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
707 757
708 //2、发送语速 758 //2、发送语速
709 - JZsdk_Uart_SendDeal_Reply_TTS_speed(UART_DEV_2 ,TTS_speed); 759 + JZsdk_Uart_SendDeal_Reply_TTS_speed(UART_DEV_1 ,TTS_speed);
710 760
711 } 761 }
712 762
@@ -734,10 +784,10 @@ static int Uart_DEV2_RecvDeal_PlayLoop(char *getbuf) @@ -734,10 +784,10 @@ static int Uart_DEV2_RecvDeal_PlayLoop(char *getbuf)
734 mode = JZ_FLAGCODE_OFF; 784 mode = JZ_FLAGCODE_OFF;
735 } 785 }
736 786
737 - JZsdk_Uart_audio_PlayLoop(UART_DEV_2, mode); 787 + JZsdk_Uart_audio_PlayLoop(UART_DEV_1, mode);
738 788
739 //回复操作成功 789 //回复操作成功
740 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 790 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
741 } 791 }
742 792
743 793
@@ -772,7 +822,7 @@ static int Uart_DEV2_RecvDeal_Delete_Audio(char *getbuf) @@ -772,7 +822,7 @@ static int Uart_DEV2_RecvDeal_Delete_Audio(char *getbuf)
772 JZsdk_Uart_Flush_MusicList(); 822 JZsdk_Uart_Flush_MusicList();
773 823
774 //回复操作成功 824 //回复操作成功
775 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 825 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
776 } 826 }
777 /********* 827 /*********
778 * 828 *
@@ -805,7 +855,7 @@ static int Uart_DEV2_RecvDeal_Delete_VoiceRecord(char *getbuf) @@ -805,7 +855,7 @@ static int Uart_DEV2_RecvDeal_Delete_VoiceRecord(char *getbuf)
805 JZsdk_Uart_Flush_MusicList(); 855 JZsdk_Uart_Flush_MusicList();
806 856
807 //回复操作成功 857 //回复操作成功
808 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 858 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
809 } 859 }
810 /********* 860 /*********
811 * 861 *
@@ -832,16 +882,16 @@ static int Uart_DEV2_RecvDeal_TTS_SetTone(char *getbuf) @@ -832,16 +882,16 @@ static int Uart_DEV2_RecvDeal_TTS_SetTone(char *getbuf)
832 int tone = (int)getbuf[9]; 882 int tone = (int)getbuf[9];
833 883
834 //2、设置音色 884 //2、设置音色
835 - T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetTone(UART_DEV_2, tone); 885 + T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetTone(UART_DEV_1, tone);
836 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 886 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
837 { 887 {
838 //回复操作成功 888 //回复操作成功
839 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 889 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
840 } 890 }
841 else 891 else
842 { 892 {
843 //回复操作失败 893 //回复操作失败
844 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 894 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
845 } 895 }
846 } 896 }
847 /********* 897 /*********
@@ -864,21 +914,21 @@ static int Uart_DEV2_RecvDeal_TTS_SetSpeed(char *getbuf) @@ -864,21 +914,21 @@ static int Uart_DEV2_RecvDeal_TTS_SetSpeed(char *getbuf)
864 JZSDK_LOG_INFO("语速超出范围\n"); 914 JZSDK_LOG_INFO("语速超出范围\n");
865 915
866 //回复操作失败 916 //回复操作失败
867 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 917 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
868 return -1 ; 918 return -1 ;
869 } 919 }
870 920
871 //2、设置语速 921 //2、设置语速
872 - T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetSpeed(UART_DEV_2, speed); 922 + T_JZsdkReturnCode ret = JZsdk_Uart_TTS_SetSpeed(UART_DEV_1, speed);
873 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 923 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
874 { 924 {
875 //回复操作成功 925 //回复操作成功
876 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 926 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
877 } 927 }
878 else 928 else
879 { 929 {
880 //回复操作失败 930 //回复操作失败
881 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 931 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
882 } 932 }
883 } 933 }
884 /********* 934 /*********
@@ -900,7 +950,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf) @@ -900,7 +950,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf)
900 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 950 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
901 { 951 {
902 //回复操作失败 952 //回复操作失败
903 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 953 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
904 JZSDK_LOG_ERROR("tts开始传输失败"); 954 JZSDK_LOG_ERROR("tts开始传输失败");
905 return ret; 955 return ret;
906 } 956 }
@@ -912,10 +962,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf) @@ -912,10 +962,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf)
912 TTS_Recv_buffer_length = 0; 962 TTS_Recv_buffer_length = 0;
913 963
914 //3、将接收模式设置为接收TTS数据模式 964 //3、将接收模式设置为接收TTS数据模式
915 - JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION); 965 + JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION);
916 966
917 //回复操作成功 967 //回复操作成功
918 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 968 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
919 } 969 }
920 /********* 970 /*********
921 * 971 *
@@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf) @@ -923,7 +973,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_start(char *getbuf)
923 * 973 *
924 * 974 *
925 **********/ 975 **********/
926 -static int Uart_DEV2_RecvDeal_TTS_Trans_transmission(char *getdata, int len) 976 +static int Uart_DEV2_RecvDeal_TTS_Trans_UnlimitTransmission(char *getdata, int len)
927 { 977 {
928 JZSDK_LOG_INFO("tts传输中"); 978 JZSDK_LOG_INFO("tts传输中");
929 979
@@ -940,6 +990,38 @@ static int Uart_DEV2_RecvDeal_TTS_Trans_transmission(char *getdata, int len) @@ -940,6 +990,38 @@ static int Uart_DEV2_RecvDeal_TTS_Trans_transmission(char *getdata, int len)
940 JZSDK_LOG_ERROR("TTS字数超出1000字节"); 990 JZSDK_LOG_ERROR("TTS字数超出1000字节");
941 } 991 }
942 } 992 }
  993 +/***********
  994 + *
  995 + * tts定长传输中
  996 + *
  997 + * ***/
  998 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_LimitTransmission(char *getdata, int len)
  999 +{
  1000 + JZSDK_LOG_INFO("tts定长传输中");
  1001 +
  1002 + T_JZsdkReturnCode ret;
  1003 +
  1004 + //提取出数据
  1005 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1006 + if (DataLen > 128)
  1007 + {
  1008 + JZSDK_LOG_ERROR("tts定长帧,单帧数据长度超出128上限");
  1009 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1010 + }
  1011 +
  1012 + if (TTS_Recv_buffer_length+DataLen < 1000)
  1013 + {
  1014 + //1、将新的数据 放入缓冲区
  1015 + memcpy(TTS_Recv_buffer+TTS_Recv_buffer_length, getdata+9, DataLen);
  1016 +
  1017 + //2、记录已加载的长度
  1018 + TTS_Recv_buffer_length = TTS_Recv_buffer_length + DataLen;
  1019 + }
  1020 + else
  1021 + {
  1022 + JZSDK_LOG_ERROR("TTS总字数超出1000字节");
  1023 + }
  1024 +}
943 1025
944 /********* 1026 /*********
945 * 1027 *
@@ -953,15 +1035,15 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_stop(char *getbuf) @@ -953,15 +1035,15 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_stop(char *getbuf)
953 //获取帧的序列号 1035 //获取帧的序列号
954 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1036 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
955 1037
956 - if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION) 1038 + if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)
957 { 1039 {
958 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer); 1040 JZSDK_LOG_INFO("未刷新文本,TTS播放%s",TTS_Recv_buffer);
959 1041
960 //3、播放TTS 1042 //3、播放TTS
961 - JZsdk_Uart_TTS_Play(UART_DEV_2, TTS_Recv_buffer, TTS_Recv_buffer_length); 1043 + JZsdk_Uart_TTS_Play(UART_DEV_1, TTS_Recv_buffer, TTS_Recv_buffer_length);
962 1044
963 //回复操作成功 1045 //回复操作成功
964 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1046 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
965 1047
966 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 1048 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
967 } 1049 }
@@ -973,10 +1055,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_stop(char *getbuf) @@ -973,10 +1055,10 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_TTS_Trans_stop(char *getbuf)
973 JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_STOP); 1055 JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_TTS_TRANS_STOP);
974 1056
975 //3、播放TTS 1057 //3、播放TTS
976 - JZsdk_Uart_TTS_Play(UART_DEV_2, TTS_Recv_buffer, TTS_Recv_buffer_length); 1058 + JZsdk_Uart_TTS_Play(UART_DEV_1, TTS_Recv_buffer, TTS_Recv_buffer_length);
977 1059
978 //回复操作成功 1060 //回复操作成功
979 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1061 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
980 } 1062 }
981 1063
982 1064
@@ -996,7 +1078,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_OpusTrans_start(char *getbuf) @@ -996,7 +1078,7 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_OpusTrans_start(char *getbuf)
996 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1078 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
997 { 1079 {
998 //回复操作失败 1080 //回复操作失败
999 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1081 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1000 JZSDK_LOG_ERROR("打开opus传输失败"); 1082 JZSDK_LOG_ERROR("打开opus传输失败");
1001 return ret; 1083 return ret;
1002 } 1084 }
@@ -1012,25 +1094,51 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_OpusTrans_start(char *getbuf) @@ -1012,25 +1094,51 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_OpusTrans_start(char *getbuf)
1012 JZsdk_Uart_SaveOpusStart(decode_rate); 1094 JZsdk_Uart_SaveOpusStart(decode_rate);
1013 1095
1014 //3、修改接收模式为传输opus 1096 //3、修改接收模式为传输opus
1015 - JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION); 1097 + JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION);
1016 1098
1017 JZSDK_LOG_INFO("已完成打开opus传输处理\n"); 1099 JZSDK_LOG_INFO("已完成打开opus传输处理\n");
1018 1100
1019 //回复操作成功 1101 //回复操作成功
1020 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1102 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1021 } 1103 }
1022 /********* 1104 /*********
1023 * 1105 *
1024 - * opus传输 1106 + * opus不定长传输
1025 * 1107 *
1026 * 1108 *
1027 **********/ 1109 **********/
1028 -static int Uart_DEV2_RecvDeal_OpusTrans_transmission(char *SaveData, int size) 1110 +static int Uart_DEV2_RecvDeal_OpusTrans_UnlimitTransmission(char *SaveData, int size)
1029 { 1111 {
1030 JZsdk_Uart_SaveOpusTrans(SaveData,size); 1112 JZsdk_Uart_SaveOpusTrans(SaveData,size);
1031 1113
1032 JZSDK_LOG_INFO("已完成opus传输保存处理\n"); 1114 JZSDK_LOG_INFO("已完成opus传输保存处理\n");
1033 } 1115 }
  1116 +
  1117 +/*********
  1118 + *
  1119 + * opus定长传输文件
  1120 + *
  1121 + *
  1122 +**********/
  1123 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_OpusTrans_LimitTransmission(char *getdata, int size)
  1124 +{
  1125 + JZSDK_LOG_INFO("传输opus定长音频文件中\n");
  1126 +
  1127 + T_JZsdkReturnCode ret;
  1128 +
  1129 + //提取出数据
  1130 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1131 + if (DataLen > 128)
  1132 + {
  1133 + JZSDK_LOG_ERROR("传输得到的opus定长音频文件帧长度超出128上限");
  1134 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1135 + }
  1136 +
  1137 + //传输数据接口
  1138 + ret = JZsdk_Uart_SaveOpusTrans(getdata+9, DataLen);
  1139 +}
  1140 +
  1141 +
1034 /********* 1142 /*********
1035 * 1143 *
1036 * opus结束传输 1144 * opus结束传输
@@ -1043,10 +1151,10 @@ static int Uart_DEV2_RecvDeal_OpusTrans_stop(char *getbuf) @@ -1043,10 +1151,10 @@ static int Uart_DEV2_RecvDeal_OpusTrans_stop(char *getbuf)
1043 //获取帧的序列号 1151 //获取帧的序列号
1044 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1152 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1045 1153
1046 - if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) 1154 + if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION)
1047 { 1155 {
1048 //回复操作失败 1156 //回复操作失败
1049 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1157 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1050 JZSDK_LOG_ERROR("关闭opus结束传输失败,opus结束传输未开始,无法关闭"); 1158 JZSDK_LOG_ERROR("关闭opus结束传输失败,opus结束传输未开始,无法关闭");
1051 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1159 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1052 } 1160 }
@@ -1059,7 +1167,7 @@ static int Uart_DEV2_RecvDeal_OpusTrans_stop(char *getbuf) @@ -1059,7 +1167,7 @@ static int Uart_DEV2_RecvDeal_OpusTrans_stop(char *getbuf)
1059 JZSDK_LOG_INFO("结束opus传输处理\n"); 1167 JZSDK_LOG_INFO("结束opus传输处理\n");
1060 1168
1061 //回复操作成功 1169 //回复操作成功
1062 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1170 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1063 } 1171 }
1064 /********* 1172 /*********
1065 * 1173 *
@@ -1077,15 +1185,15 @@ static int Uart_DEV2_RecvDeal_OpusPlay(char *getbuf) @@ -1077,15 +1185,15 @@ static int Uart_DEV2_RecvDeal_OpusPlay(char *getbuf)
1077 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1185 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1078 { 1186 {
1079 //回复操作失败 1187 //回复操作失败
1080 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1188 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1081 JZSDK_LOG_ERROR("opus播放失败,存在传输模式打开中"); 1189 JZSDK_LOG_ERROR("opus播放失败,存在传输模式打开中");
1082 return ret; 1190 return ret;
1083 } 1191 }
1084 1192
1085 - JZsdk_Uart_Opus_PlayFixedFile(UART_DEV_2); 1193 + JZsdk_Uart_Opus_PlayFixedFile(UART_DEV_1);
1086 1194
1087 //回复操作成功 1195 //回复操作成功
1088 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1196 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1089 } 1197 }
1090 1198
1091 1199
@@ -1106,13 +1214,13 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_Opus_RealTimeVoice_start(char *getbu @@ -1106,13 +1214,13 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_Opus_RealTimeVoice_start(char *getbu
1106 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1214 if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1107 { 1215 {
1108 //回复操作失败 1216 //回复操作失败
1109 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1217 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1110 JZSDK_LOG_ERROR("开启opus实时喊话失败"); 1218 JZSDK_LOG_ERROR("开启opus实时喊话失败");
1111 return ret; 1219 return ret;
1112 } 1220 }
1113 1221
1114 //1、修改接收模式 1222 //1、修改接收模式
1115 - JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION); 1223 + JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION);
1116 1224
1117 //2、获取码率倍率 默认8k*1倍 1225 //2、获取码率倍率 默认8k*1倍
1118 int RateMagnification = (int)getbuf[9]; 1226 int RateMagnification = (int)getbuf[9];
@@ -1131,21 +1239,47 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_Opus_RealTimeVoice_start(char *getbu @@ -1131,21 +1239,47 @@ static T_JZsdkReturnCode Uart_DEV2_RecvDeal_Opus_RealTimeVoice_start(char *getbu
1131 JZsdk_Uart_RealTimeVoiceStart(Rate); 1239 JZsdk_Uart_RealTimeVoiceStart(Rate);
1132 1240
1133 //4、通知成功打开语音发送模式 1241 //4、通知成功打开语音发送模式
1134 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1242 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1135 } 1243 }
1136 1244
1137 /********* 1245 /*********
1138 * 1246 *
1139 - * opus实时语音传输中 1247 + * opus实时语音无限制传输中
1140 * 1248 *
1141 * 1249 *
1142 **********/ 1250 **********/
1143 -static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_transmission(char *getdata, int len) 1251 +static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(char *getdata, int len)
1144 { 1252 {
1145 JZSDK_LOG_INFO("opus语音传输中\n"); 1253 JZSDK_LOG_INFO("opus语音传输中\n");
1146 JZsdk_Uart_RealTimeVoiceTrans(getdata, len); 1254 JZsdk_Uart_RealTimeVoiceTrans(getdata, len);
1147 1255
1148 } 1256 }
  1257 +
  1258 +/*********
  1259 + *
  1260 + * opus实时语音定长传输中
  1261 + *
  1262 + *
  1263 +**********/
  1264 +static T_JZsdkReturnCode Uart_DEV2_RecvDeal_Opus_RealTimeVoice_LimitTransmission(char *getdata, int len)
  1265 +{
  1266 + JZSDK_LOG_INFO("传输opus定长语音传输中\n");
  1267 +
  1268 + T_JZsdkReturnCode ret;
  1269 +
  1270 + //提取出数据
  1271 + int DataLen = ((int)getdata[3] << 8 ) + (int)getdata[4] - 2 - 9;
  1272 + if (DataLen > 80)
  1273 + {
  1274 + JZSDK_LOG_ERROR("opus实时语音定长传输帧数据长度超出80上限");
  1275 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  1276 + }
  1277 +
  1278 + //传输数据接口
  1279 + ret = JZsdk_Uart_RealTimeVoiceTrans(getdata+9, DataLen);
  1280 +}
  1281 +
  1282 +
1149 /********* 1283 /*********
1150 * 1284 *
1151 * 关闭opus实时语音发送功能 1285 * 关闭opus实时语音发送功能
@@ -1158,10 +1292,10 @@ static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf) @@ -1158,10 +1292,10 @@ static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf)
1158 //获取帧的序列号 1292 //获取帧的序列号
1159 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1293 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1160 1294
1161 - if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) 1295 + if (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION)
1162 { 1296 {
1163 //回复操作失败 1297 //回复操作失败
1164 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1298 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1165 JZSDK_LOG_ERROR("关闭opus实时语音发送功能失败,opus实时语音发送功能未开始,无法关闭"); 1299 JZSDK_LOG_ERROR("关闭opus实时语音发送功能失败,opus实时语音发送功能未开始,无法关闭");
1166 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1300 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1167 } 1301 }
@@ -1173,7 +1307,7 @@ static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf) @@ -1173,7 +1307,7 @@ static int Uart_DEV2_RecvDeal_Opus_RealTimeVoice_stop(char *getbuf)
1173 JZsdk_Uart_RealTimeVoiceClose(); 1307 JZsdk_Uart_RealTimeVoiceClose();
1174 1308
1175 //3、通知成功关闭语音发送模式 1309 //3、通知成功关闭语音发送模式
1176 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1310 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1177 } 1311 }
1178 1312
1179 1313
@@ -1215,22 +1349,22 @@ static int Uart_DEV2_RecvDeal_Gimbal_PitchControl(char *getbuf) @@ -1215,22 +1349,22 @@ static int Uart_DEV2_RecvDeal_Gimbal_PitchControl(char *getbuf)
1215 { 1349 {
1216 JZSDK_LOG_INFO("云台输入角度符号错误,无法正常控制"); 1350 JZSDK_LOG_INFO("云台输入角度符号错误,无法正常控制");
1217 //回复操作失败 1351 //回复操作失败
1218 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1352 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1219 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1353 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1220 } 1354 }
1221 1355
1222 JZSDK_LOG_INFO("处理得到的角度是%d",Gimbal_angle); 1356 JZSDK_LOG_INFO("处理得到的角度是%d",Gimbal_angle);
1223 1357
1224 - T_JZsdkReturnCode ret = JZsdk_Uart_Gimbal_PitchControl(UART_DEV_2, Gimbal_angle); 1358 + T_JZsdkReturnCode ret = JZsdk_Uart_Gimbal_PitchControl(UART_DEV_1, Gimbal_angle);
1225 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1359 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1226 { 1360 {
1227 //回复操作成功 1361 //回复操作成功
1228 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1362 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1229 } 1363 }
1230 else 1364 else
1231 { 1365 {
1232 //回复操作失败 1366 //回复操作失败
1233 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1367 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1234 } 1368 }
1235 } 1369 }
1236 1370
@@ -1265,13 +1399,13 @@ static int Uart_DEV2_RecvDeal_Gimbal_PitchFineTuningControl(char *getbuf) @@ -1265,13 +1399,13 @@ static int Uart_DEV2_RecvDeal_Gimbal_PitchFineTuningControl(char *getbuf)
1265 { 1399 {
1266 JZSDK_LOG_INFO("云台俯仰微调角度符号错误,无法正常控制"); 1400 JZSDK_LOG_INFO("云台俯仰微调角度符号错误,无法正常控制");
1267 //回复操作失败 1401 //回复操作失败
1268 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1402 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1269 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 1403 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
1270 } 1404 }
1271 1405
1272 JZSDK_LOG_INFO("处理得到云台俯仰微调角度是%d",Gimbal_angle); 1406 JZSDK_LOG_INFO("处理得到云台俯仰微调角度是%d",Gimbal_angle);
1273 1407
1274 - JZsdk_Uart_Gimbal_PitchFineTuningControl(UART_DEV_2, FrameSequence ,Gimbal_angle); 1408 + JZsdk_Uart_Gimbal_PitchFineTuningControl(UART_DEV_1, FrameSequence ,Gimbal_angle);
1275 1409
1276 } 1410 }
1277 1411
@@ -1297,16 +1431,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_SetFrequency(char *getbuf) @@ -1297,16 +1431,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_SetFrequency(char *getbuf)
1297 //1、通过数据帧2,获取爆闪频率 1431 //1、通过数据帧2,获取爆闪频率
1298 int Frequency = getbuf[10]; 1432 int Frequency = getbuf[10];
1299 1433
1300 - T_JZsdkReturnCode ret = JZsdk_Uart_Lighting_SetSearchLightFrequency(UART_DEV_2, Frequency); 1434 + T_JZsdkReturnCode ret = JZsdk_Uart_Lighting_SetSearchLightFrequency(UART_DEV_1, Frequency);
1301 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1435 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1302 { 1436 {
1303 //回复操作成功 1437 //回复操作成功
1304 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1438 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1305 } 1439 }
1306 else 1440 else
1307 { 1441 {
1308 //回复操作失败 1442 //回复操作失败
1309 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1443 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1310 } 1444 }
1311 } 1445 }
1312 1446
@@ -1324,16 +1458,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_Control(char *getbuf) @@ -1324,16 +1458,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_Control(char *getbuf)
1324 //1、通过数据帧2,获取灯光控制模式 1458 //1、通过数据帧2,获取灯光控制模式
1325 int value = getbuf[10]; 1459 int value = getbuf[10];
1326 1460
1327 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Control(UART_DEV_2, value); 1461 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Control(UART_DEV_1, value);
1328 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1462 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1329 { 1463 {
1330 //回复操作成功 1464 //回复操作成功
1331 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1465 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1332 } 1466 }
1333 else 1467 else
1334 { 1468 {
1335 //回复操作失败 1469 //回复操作失败
1336 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1470 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1337 } 1471 }
1338 } 1472 }
1339 1473
@@ -1352,16 +1486,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_Lumen(char *getbuf) @@ -1352,16 +1486,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_Lumen(char *getbuf)
1352 int LeftLumen = getbuf[9]; //左灯亮度 1486 int LeftLumen = getbuf[9]; //左灯亮度
1353 int RightLumen = getbuf[10]; //右灯亮度 1487 int RightLumen = getbuf[10]; //右灯亮度
1354 1488
1355 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Lumen(UART_DEV_2, LeftLumen, RightLumen); 1489 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_Lumen(UART_DEV_1, LeftLumen, RightLumen);
1356 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1490 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1357 { 1491 {
1358 //回复操作成功 1492 //回复操作成功
1359 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1493 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1360 } 1494 }
1361 else 1495 else
1362 { 1496 {
1363 //回复操作失败 1497 //回复操作失败
1364 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1498 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1365 } 1499 }
1366 } 1500 }
1367 1501
@@ -1377,7 +1511,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SearchLightLightAttribute(char *getbuf @@ -1377,7 +1511,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SearchLightLightAttribute(char *getbuf
1377 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1511 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1378 1512
1379 //2、查询灯光属性 1513 //2、查询灯光属性
1380 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightLightAttribute(UART_DEV_2, FrameSequence); 1514 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightLightAttribute(UART_DEV_1, FrameSequence);
1381 1515
1382 } 1516 }
1383 1517
@@ -1393,7 +1527,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SearchLightTemperture(char *getbuf) @@ -1393,7 +1527,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SearchLightTemperture(char *getbuf)
1393 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1527 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1394 1528
1395 //2、查询探照灯温度 1529 //2、查询探照灯温度
1396 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightTemperture(UART_DEV_2, FrameSequence); 1530 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_SearchLightTemperture(UART_DEV_1, FrameSequence);
1397 } 1531 }
1398 1532
1399 /********* 1533 /*********
@@ -1410,16 +1544,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_SubscriptionControl(char *getbuf) @@ -1410,16 +1544,16 @@ static int Uart_DEV2_RecvDeal_SearchLight_SubscriptionControl(char *getbuf)
1410 //1、通过数据帧2,获取控制值 1544 //1、通过数据帧2,获取控制值
1411 int value = getbuf[10]; 1545 int value = getbuf[10];
1412 1546
1413 - T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_SubscriptionControl(UART_DEV_2, value); 1547 + T_JZsdkReturnCode ret = JZsdk_Uart_SearchLight_SubscriptionControl(UART_DEV_1, value);
1414 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1548 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1415 { 1549 {
1416 //回复操作成功 1550 //回复操作成功
1417 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1551 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1418 } 1552 }
1419 else 1553 else
1420 { 1554 {
1421 //回复操作失败 1555 //回复操作失败
1422 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1556 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1423 } 1557 }
1424 } 1558 }
1425 1559
@@ -1434,7 +1568,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SerialNumber(char *getbuf) @@ -1434,7 +1568,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_SerialNumber(char *getbuf)
1434 //获取帧的序列号 1568 //获取帧的序列号
1435 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1569 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1436 1570
1437 - JZsdk_Uart_CheckStatus_SerialNumber(UART_DEV_2, FrameSequence); 1571 + JZsdk_Uart_CheckStatus_SerialNumber(UART_DEV_1, FrameSequence);
1438 1572
1439 } 1573 }
1440 1574
@@ -1453,7 +1587,7 @@ static int Uart_DEV2_RecvDeal_OutPutPower_Control(char *getbuf) @@ -1453,7 +1587,7 @@ static int Uart_DEV2_RecvDeal_OutPutPower_Control(char *getbuf)
1453 int Value = getbuf[9]; 1587 int Value = getbuf[9];
1454 1588
1455 //控制 1589 //控制
1456 - JZsdk_Uart_OutPutPower_Control(UART_DEV_2, FrameSequence, Value); 1590 + JZsdk_Uart_OutPutPower_Control(UART_DEV_1, FrameSequence, Value);
1457 } 1591 }
1458 1592
1459 /********* 1593 /*********
@@ -1469,7 +1603,7 @@ static int Uart_DEV2_RecvDeal_Checkstatus_OutPutPower(char *getbuf) @@ -1469,7 +1603,7 @@ static int Uart_DEV2_RecvDeal_Checkstatus_OutPutPower(char *getbuf)
1469 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1603 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1470 1604
1471 //获取本地数值 1605 //获取本地数值
1472 - JZsdk_Uart_Checkstatus_OutPutPower(UART_DEV_2, FrameSequence); 1606 + JZsdk_Uart_Checkstatus_OutPutPower(UART_DEV_1, FrameSequence);
1473 } 1607 }
1474 1608
1475 /******************************************************************************************************************************* 1609 /*******************************************************************************************************************************
@@ -1492,16 +1626,16 @@ static int Uart_DEV2_RecvDeal_WarningLight_ModeControl(char *getbuf) @@ -1492,16 +1626,16 @@ static int Uart_DEV2_RecvDeal_WarningLight_ModeControl(char *getbuf)
1492 int value1 = getbuf[9]; 1626 int value1 = getbuf[9];
1493 int value2 = getbuf[10]; 1627 int value2 = getbuf[10];
1494 1628
1495 - T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_ModeControl(UART_DEV_2, value1, value2); 1629 + T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_ModeControl(UART_DEV_1, value1, value2);
1496 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1630 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1497 { 1631 {
1498 //回复操作成功 1632 //回复操作成功
1499 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1633 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1500 } 1634 }
1501 else 1635 else
1502 { 1636 {
1503 //回复操作失败 1637 //回复操作失败
1504 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1638 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1505 } 1639 }
1506 } 1640 }
1507 1641
@@ -1520,16 +1654,16 @@ static int Uart_DEV2_RecvDeal_WarningLight_SetColor(char *getbuf) @@ -1520,16 +1654,16 @@ static int Uart_DEV2_RecvDeal_WarningLight_SetColor(char *getbuf)
1520 int value1 = getbuf[9]; 1654 int value1 = getbuf[9];
1521 int value2 = getbuf[10]; 1655 int value2 = getbuf[10];
1522 1656
1523 - T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_SetColor(UART_DEV_2, value1, value2); 1657 + T_JZsdkReturnCode ret = JZsdk_Uart_WarningLight_SetColor(UART_DEV_1, value1, value2);
1524 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 1658 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1525 { 1659 {
1526 //回复操作成功 1660 //回复操作成功
1527 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 1661 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1528 } 1662 }
1529 else 1663 else
1530 { 1664 {
1531 //回复操作失败 1665 //回复操作失败
1532 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 1666 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1533 } 1667 }
1534 } 1668 }
1535 1669
@@ -1545,7 +1679,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_WarningLightStatus(char *getbuf) @@ -1545,7 +1679,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_WarningLightStatus(char *getbuf)
1545 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1679 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1546 1680
1547 //2、查询灯光属性 1681 //2、查询灯光属性
1548 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightStatus(UART_DEV_2, FrameSequence); 1682 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightStatus(UART_DEV_1, FrameSequence);
1549 } 1683 }
1550 1684
1551 1685
@@ -1561,7 +1695,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_WarningLightColor(char *getbuf) @@ -1561,7 +1695,7 @@ static int Uart_DEV2_RecvDeal_CheckStatus_WarningLightColor(char *getbuf)
1561 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 1695 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1562 1696
1563 //2、查询灯光属性 1697 //2、查询灯光属性
1564 - T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightColor(UART_DEV_2, FrameSequence); 1698 + T_JZsdkReturnCode ret = JZsdk_Uart_CheckStatus_WarningLightColor(UART_DEV_1, FrameSequence);
1565 } 1699 }
1566 1700
1567 /******************************************************************************************************** 1701 /********************************************************************************************************
@@ -1603,7 +1737,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Frequency(char *getbuf) @@ -1603,7 +1737,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Frequency(char *getbuf)
1603 int value = getbuf[10]; 1737 int value = getbuf[10];
1604 1738
1605 //2、发送到本地处理 1739 //2、发送到本地处理
1606 - JZsdl_Uart_ObtainSearchLight_Frequency(UART_DEV_2, value); 1740 + JZsdl_Uart_ObtainSearchLight_Frequency(UART_DEV_1, value);
1607 } 1741 }
1608 1742
1609 /********* 1743 /*********
@@ -1621,7 +1755,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Mode(char *getbuf) @@ -1621,7 +1755,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Mode(char *getbuf)
1621 int value = getbuf[10]; 1755 int value = getbuf[10];
1622 1756
1623 //2、发送到本地处理 1757 //2、发送到本地处理
1624 - JZsdl_Uart_ObtainSearchLight_Mode(UART_DEV_2, value); 1758 + JZsdl_Uart_ObtainSearchLight_Mode(UART_DEV_1, value);
1625 } 1759 }
1626 1760
1627 /********* 1761 /*********
@@ -1640,7 +1774,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Lumen(char *getbuf) @@ -1640,7 +1774,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Lumen(char *getbuf)
1640 int value2 = getbuf[10]; 1774 int value2 = getbuf[10];
1641 1775
1642 //2、发送到本地处理 1776 //2、发送到本地处理
1643 - JZsdl_Uart_ObtainSearchLight_Lumen(UART_DEV_2, value1, value2); 1777 + JZsdl_Uart_ObtainSearchLight_Lumen(UART_DEV_1, value1, value2);
1644 } 1778 }
1645 1779
1646 /********* 1780 /*********
@@ -1659,7 +1793,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Temperature(char *getbuf) @@ -1659,7 +1793,7 @@ static int Uart_DEV2_RecvDeal_ObtainSearchLight_Temperature(char *getbuf)
1659 int value2 = getbuf[10]; 1793 int value2 = getbuf[10];
1660 1794
1661 //2、发送到本地处理 1795 //2、发送到本地处理
1662 - JZsdl_Uart_ObtainSearchLight_Temperature(UART_DEV_2, value1, value2); 1796 + JZsdl_Uart_ObtainSearchLight_Temperature(UART_DEV_1, value1, value2);
1663 } 1797 }
1664 1798
1665 /********* 1799 /*********
@@ -1690,7 +1824,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbal_Pitch(char *getbuf) @@ -1690,7 +1824,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbal_Pitch(char *getbuf)
1690 } 1824 }
1691 1825
1692 //2、发送到本地处理 1826 //2、发送到本地处理
1693 - JZsdl_Uart_RecvDeal_ObtainGimbal_Pitch(UART_DEV_2, Gimbal_angle); 1827 + JZsdl_Uart_RecvDeal_ObtainGimbal_Pitch(UART_DEV_1, Gimbal_angle);
1694 } 1828 }
1695 1829
1696 /********* 1830 /*********
@@ -1721,7 +1855,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbal_Yaw(char *getbuf) @@ -1721,7 +1855,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbal_Yaw(char *getbuf)
1721 } 1855 }
1722 1856
1723 //2、发送到本地处理 1857 //2、发送到本地处理
1724 - JZsdl_Uart_RecvDeal_ObtainGimbal_Yaw(UART_DEV_2, Gimbal_angle); 1858 + JZsdl_Uart_RecvDeal_ObtainGimbal_Yaw(UART_DEV_1, Gimbal_angle);
1725 } 1859 }
1726 1860
1727 /********* 1861 /*********
@@ -1750,7 +1884,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbalPitchFineTuning(char *getbuf) @@ -1750,7 +1884,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbalPitchFineTuning(char *getbuf)
1750 pitch = -pitch; 1884 pitch = -pitch;
1751 } 1885 }
1752 1886
1753 - JZsdl_Uart_ObtainGimbalPitchFineTuning(UART_DEV_2, FrameSequence, pitch); 1887 + JZsdl_Uart_ObtainGimbalPitchFineTuning(UART_DEV_1, FrameSequence, pitch);
1754 } 1888 }
1755 1889
1756 /********* 1890 /*********
@@ -1769,7 +1903,7 @@ static int Uart_DEV2_RecvDeal_ObtainWaringlight_Status(char *getbuf) @@ -1769,7 +1903,7 @@ static int Uart_DEV2_RecvDeal_ObtainWaringlight_Status(char *getbuf)
1769 int value2 = getbuf[10]; 1903 int value2 = getbuf[10];
1770 1904
1771 //2、发送到本地处理 1905 //2、发送到本地处理
1772 - JZsdl_Uart_RecvDeal_ObtainWaringlight_Status(UART_DEV_2, value1, value2); 1906 + JZsdl_Uart_RecvDeal_ObtainWaringlight_Status(UART_DEV_1, value1, value2);
1773 } 1907 }
1774 1908
1775 /********* 1909 /*********
@@ -1788,7 +1922,7 @@ static int Uart_DEV2_RecvDeal_ObtainWaringlight_Color(char *getbuf) @@ -1788,7 +1922,7 @@ static int Uart_DEV2_RecvDeal_ObtainWaringlight_Color(char *getbuf)
1788 int value2 = getbuf[10]; 1922 int value2 = getbuf[10];
1789 1923
1790 //2、发送到本地处理 1924 //2、发送到本地处理
1791 - JZsdl_Uart_RecvDeal_ObtainWaringlight_Color(UART_DEV_2, value1, value2); 1925 + JZsdl_Uart_RecvDeal_ObtainWaringlight_Color(UART_DEV_1, value1, value2);
1792 } 1926 }
1793 1927
1794 /********* 1928 /*********
@@ -1843,7 +1977,7 @@ static int Uart_DEV2_RecvDeal_QuerySecondaryDeviceName(char *getbuf) @@ -1843,7 +1977,7 @@ static int Uart_DEV2_RecvDeal_QuerySecondaryDeviceName(char *getbuf)
1843 int SecondaryName = JZsdk_Uart_GetSecondaryDeviceName(); 1977 int SecondaryName = JZsdk_Uart_GetSecondaryDeviceName();
1844 1978
1845 //3、回复当前从设备名 1979 //3、回复当前从设备名
1846 - JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(UART_DEV_2 ,SecondaryName, FrameSequence); 1980 + JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(UART_DEV_1 ,SecondaryName, FrameSequence);
1847 } 1981 }
1848 1982
1849 /******************************************************************************************************************************* 1983 /*******************************************************************************************************************************
@@ -1865,16 +1999,16 @@ static int Uart_DEV2_RecvDeal_SetGimbalRange(char *getbuf) @@ -1865,16 +1999,16 @@ static int Uart_DEV2_RecvDeal_SetGimbalRange(char *getbuf)
1865 //1、通过数据帧2,获取设置的大小值 1999 //1、通过数据帧2,获取设置的大小值
1866 int value = getbuf[10] ; 2000 int value = getbuf[10] ;
1867 2001
1868 - T_JZsdkReturnCode ret = JZsdk_Uart_SetGimbalRange(UART_DEV_2, value); 2002 + T_JZsdkReturnCode ret = JZsdk_Uart_SetGimbalRange(UART_DEV_1, value);
1869 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 2003 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1870 { 2004 {
1871 //回复操作成功 2005 //回复操作成功
1872 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 2006 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1873 } 2007 }
1874 else 2008 else
1875 { 2009 {
1876 //回复操作失败 2010 //回复操作失败
1877 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 2011 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
1878 } 2012 }
1879 } 2013 }
1880 2014
@@ -1894,7 +2028,7 @@ static int Uart_DEV2_RecvDeal_GimbalLinkageControl(char *getbuf) @@ -1894,7 +2028,7 @@ static int Uart_DEV2_RecvDeal_GimbalLinkageControl(char *getbuf)
1894 int value = getbuf[10] ; 2028 int value = getbuf[10] ;
1895 2029
1896 //2、设置 2030 //2、设置
1897 - JZsdk_Uart_GimbalLinkageControl(UART_DEV_2, FrameSequence, value); 2031 + JZsdk_Uart_GimbalLinkageControl(UART_DEV_1, FrameSequence, value);
1898 2032
1899 } 2033 }
1900 2034
@@ -1911,7 +2045,7 @@ static int Uart_DEV2_RecvDeal_Checkstatus_GimbalLinkage(char *getbuf) @@ -1911,7 +2045,7 @@ static int Uart_DEV2_RecvDeal_Checkstatus_GimbalLinkage(char *getbuf)
1911 int FrameSequence = JZsdk_Get_FrameSequence(getbuf); 2045 int FrameSequence = JZsdk_Get_FrameSequence(getbuf);
1912 2046
1913 //查询是否开启云台联动 2047 //查询是否开启云台联动
1914 - JZsdk_Uart_Checkstatus_GimbalLinkage(UART_DEV_2, FrameSequence); 2048 + JZsdk_Uart_Checkstatus_GimbalLinkage(UART_DEV_1, FrameSequence);
1915 } 2049 }
1916 2050
1917 static int Uart_DEV2_RecvDeal_UartBitrateChange(char *getbuf) 2051 static int Uart_DEV2_RecvDeal_UartBitrateChange(char *getbuf)
@@ -1952,7 +2086,7 @@ static int Uart_DEV2_RecvDeal_UartBitrateChange(char *getbuf) @@ -1952,7 +2086,7 @@ static int Uart_DEV2_RecvDeal_UartBitrateChange(char *getbuf)
1952 break; 2086 break;
1953 } 2087 }
1954 2088
1955 - JZsdk_Uart_BitRateChange(UART_DEV_2, BitRate); 2089 + JZsdk_Uart_BitRateChange(UART_DEV_1, BitRate);
1956 } 2090 }
1957 2091
1958 /******************************************************************************************************** 2092 /********************************************************************************************************
@@ -1991,12 +2125,12 @@ static int Uart_DEV2_RecvDeal_ObtainSecondaryDeviceName(char *getbuf) @@ -1991,12 +2125,12 @@ static int Uart_DEV2_RecvDeal_ObtainSecondaryDeviceName(char *getbuf)
1991 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS) 2125 if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
1992 { 2126 {
1993 //回复操作成功 2127 //回复操作成功
1994 - JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_2, FrameSequence); 2128 + JZsdk_Uart_SendDeal_Reply_Sucesss(UART_DEV_1, FrameSequence);
1995 } 2129 }
1996 else 2130 else
1997 { 2131 {
1998 //回复操作失败 2132 //回复操作失败
1999 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, FrameSequence); 2133 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, FrameSequence);
2000 } 2134 }
2001 } 2135 }
2002 2136
@@ -2020,7 +2154,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbalLinkage(char *getbuf) @@ -2020,7 +2154,7 @@ static int Uart_DEV2_RecvDeal_ObtainGimbalLinkage(char *getbuf)
2020 int value1 = getbuf[10]; 2154 int value1 = getbuf[10];
2021 2155
2022 //2、保存 2156 //2、保存
2023 - JZsdk_Uart_ObtainGimbalLinkage(UART_DEV_2,FrameSequence,value1); 2157 + JZsdk_Uart_ObtainGimbalLinkage(UART_DEV_1,FrameSequence,value1);
2024 } 2158 }
2025 2159
2026 2160
@@ -2050,7 +2184,7 @@ static int Uart_DEV2_RecvDeal_FrameErrorReply(char *getbuf) @@ -2050,7 +2184,7 @@ static int Uart_DEV2_RecvDeal_FrameErrorReply(char *getbuf)
2050 JZSDK_LOG_ERROR("帧指令错误:帧错误或者是帧无对应操作\n"); 2184 JZSDK_LOG_ERROR("帧指令错误:帧错误或者是帧无对应操作\n");
2051 //无法正常获取帧的序列号 2185 //无法正常获取帧的序列号
2052 //回复操作失败 2186 //回复操作失败
2053 - JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_2, 0x00); 2187 + JZsdk_Uart_SendDeal_Reply_Failure(UART_DEV_1, 0x00);
2054 2188
2055 } 2189 }
2056 2190
@@ -2090,7 +2224,7 @@ static int Uart_DEV2_RecvDeal_OperationFailed(char *getbuf) @@ -2090,7 +2224,7 @@ static int Uart_DEV2_RecvDeal_OperationFailed(char *getbuf)
2090 *********************************************************************************************************/ 2224 *********************************************************************************************************/
2091 int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len) 2225 int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int len)
2092 { 2226 {
2093 - JZSDK_LOG_INFO("串口设备2号,接受到的模式为:%x",Receive_mode); 2227 + JZSDK_LOG_INFO("串口设备4g,接受到的模式为:%x",Receive_mode);
2094 switch (Receive_mode) 2228 switch (Receive_mode)
2095 { 2229 {
2096 /******************************************************************************************************************************* 2230 /*******************************************************************************************************************************
@@ -2110,8 +2244,8 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2110,8 +2244,8 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2110 return 0; 2244 return 0;
2111 break; 2245 break;
2112 //语音传输处理 2246 //语音传输处理
2113 - case JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION:  
2114 - Uart_DEV2_RecvDeal_RealTimeMP2_transmission(getdata, len); 2247 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION:
  2248 + Uart_DEV2_RecvDeal_RealTimeMP2_Unlimit_transmission(getdata, len);
2115 return 0; 2249 return 0;
2116 break; 2250 break;
2117 //关闭语音传输 2251 //关闭语音传输
@@ -2119,17 +2253,30 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2119,17 +2253,30 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2119 Uart_DEV2_RecvDeal_RealTimeMP2_stop(getdata); 2253 Uart_DEV2_RecvDeal_RealTimeMP2_stop(getdata);
2120 return 0; 2254 return 0;
2121 break; 2255 break;
  2256 + //定长mp2语音
  2257 + case JZ_INSCODE_5AFRAME_REALTIMEMP2_LIMIT_TRANSMISSION:
  2258 + Uart_DEV2_RecvDeal_RealTimeMP2_Limit_transmission(getdata, len);
  2259 + return 0;
  2260 + break;
2122 2261
2123 //打开音频文件上传 2262 //打开音频文件上传
2124 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START: 2263 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_START:
2125 Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(getdata, len); 2264 Uart_DEV2_RecvDeal_SaveAudioFileTrans_start(getdata, len);
2126 return 0; 2265 return 0;
2127 break; 2266 break;
  2267 +
2128 //传输音频文件 2268 //传输音频文件
2129 - case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION:  
2130 - Uart_DEV2_RecvDeal_SaveAudioFileTrans_transmission(getdata, len); 2269 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION:
  2270 + Uart_DEV2_RecvDeal_SaveAudioFileTrans_UnlimitTransmission(getdata, len);
  2271 + return 0;
  2272 + break;
  2273 +
  2274 + //传输定长音频文件
  2275 + case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_LIMIT_TRANSMISSION:
  2276 + Uart_DEV2_RecvDeal_SaveAudioFileTrans_LimitTransmission(getdata, len);
2131 return 0; 2277 return 0;
2132 break; 2278 break;
  2279 +
2133 //关闭音频文件上传 2280 //关闭音频文件上传
2134 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP: 2281 case JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_STOP:
2135 Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(getdata); 2282 Uart_DEV2_RecvDeal_SaveAudioFileTrans_stop(getdata);
@@ -2267,11 +2414,19 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2267,11 +2414,19 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2267 Uart_DEV2_RecvDeal_OpusTrans_start(getdata); 2414 Uart_DEV2_RecvDeal_OpusTrans_start(getdata);
2268 return 0; 2415 return 0;
2269 break; 2416 break;
  2417 +
2270 //传输opus 2418 //传输opus
2271 - case JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION:  
2272 - Uart_DEV2_RecvDeal_OpusTrans_transmission(getdata, len); 2419 + case JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION:
  2420 + Uart_DEV2_RecvDeal_OpusTrans_UnlimitTransmission(getdata, len);
2273 return 0; 2421 return 0;
2274 break; 2422 break;
  2423 +
  2424 + //传输定长opus文件数据
  2425 + case JZ_INSCODE_5AFRAME_OPUS_TRANS_LIMIT_TRANSMISSION:
  2426 + Uart_DEV2_RecvDeal_OpusTrans_LimitTransmission(getdata, len);
  2427 + return 0;
  2428 + break;
  2429 +
2275 //关闭opus传输 2430 //关闭opus传输
2276 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP: 2431 case JZ_INSCODE_5AFRAME_OPUS_TRANS_STOP:
2277 Uart_DEV2_RecvDeal_OpusTrans_stop(getdata); 2432 Uart_DEV2_RecvDeal_OpusTrans_stop(getdata);
@@ -2291,8 +2446,14 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2291,8 +2446,14 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2291 break; 2446 break;
2292 2447
2293 //传输opus实时喊话数据 2448 //传输opus实时喊话数据
2294 - case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION:  
2295 - Uart_DEV2_RecvDeal_Opus_RealTimeVoice_transmission(getdata, len); 2449 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION:
  2450 + Uart_DEV2_RecvDeal_Opus_RealTimeVoice_UnlimitTransmission(getdata, len);
  2451 + return 0;
  2452 + break;
  2453 +
  2454 + //传输定长opus实时喊话数据
  2455 + case JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_LIMIT_TRANSMISSION:
  2456 + Uart_DEV2_RecvDeal_Opus_RealTimeVoice_LimitTransmission(getdata, len);
2296 return 0; 2457 return 0;
2297 break; 2458 break;
2298 2459
@@ -2330,10 +2491,17 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le @@ -2330,10 +2491,17 @@ int Uart_DEV2_RecvDeal_RecvDeal(int Receive_mode, unsigned char *getdata, int le
2330 return 0; 2491 return 0;
2331 break; 2492 break;
2332 //TTS传输中 2493 //TTS传输中
2333 - case JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION:  
2334 - Uart_DEV2_RecvDeal_TTS_Trans_transmission(getdata, len); 2494 + case JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION:
  2495 + Uart_DEV2_RecvDeal_TTS_Trans_UnlimitTransmission(getdata, len);
2335 return 0; 2496 return 0;
2336 break; 2497 break;
  2498 +
  2499 + //定长TTS传输中
  2500 + case JZ_INSCODE_5AFRAME_TTS_TRANS_LIMIT_TRANSMISSION:
  2501 + Uart_DEV2_RecvDeal_TTS_Trans_LimitTransmission(getdata, len);
  2502 + return 0;
  2503 + break;
  2504 +
2337 //TTS传输关闭 2505 //TTS传输关闭
2338 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP: 2506 case JZ_INSCODE_5AFRAME_TTS_TRANS_STOP:
2339 Uart_DEV2_RecvDeal_TTS_Trans_stop(getdata); 2507 Uart_DEV2_RecvDeal_TTS_Trans_stop(getdata);
@@ -2594,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len) @@ -2594,11 +2762,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len)
2594 { 2762 {
2595 Uart_DEV2_RecvDeal_RecvDeal(flag, getbuf, len); 2763 Uart_DEV2_RecvDeal_RecvDeal(flag, getbuf, len);
2596 //如果不处于5大传输模式 2764 //如果不处于5大传输模式
2597 - if ((UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2598 - && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2599 - && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2600 - && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2601 - && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2765 + if ((UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2766 + && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2767 + && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2768 + && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2769 + && (UART_DEV2_Receive_mode != JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS传输模式)
2602 { 2770 {
2603 //刷新模式 2771 //刷新模式
2604 UART_DEV2_Receive_mode = flag; 2772 UART_DEV2_Receive_mode = flag;
@@ -2608,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len) @@ -2608,11 +2776,11 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len)
2608 2776
2609 //否则 如果处于传输传输过程 处理模式 正常录入数据 2777 //否则 如果处于传输传输过程 处理模式 正常录入数据
2610 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR 2778 else if (flag == JZ_ERROR_SYSTEM_FRAME_ERROR
2611 - && ((UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2612 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2613 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2614 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2615 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION))) //TTS传输模式) 2779 + && ((UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //语音传输模式
  2780 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件传输模式
  2781 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus传输模式
  2782 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音传输模式
  2783 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION))) //TTS传输模式)
2616 { 2784 {
2617 Uart_DEV2_RecvDeal_RecvDeal(UART_DEV2_Receive_mode, getbuf, len); 2785 Uart_DEV2_RecvDeal_RecvDeal(UART_DEV2_Receive_mode, getbuf, len);
2618 } 2786 }
@@ -2629,7 +2797,7 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len) @@ -2629,7 +2797,7 @@ int JZsdk_Uart_RecvDeal_CharmDeal_Uart_DEV2(unsigned char *getbuf, int len)
2629 * ****************/ 2797 * ****************/
2630 int JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(int value) 2798 int JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(int value)
2631 { 2799 {
2632 - JZSDK_LOG_INFO("串口设备2号,二次修改接收模式%x\n",value); 2800 + JZSDK_LOG_INFO("串口设备4g,二次修改接收模式%x\n",value);
2633 UART_DEV2_Receive_mode = value; 2801 UART_DEV2_Receive_mode = value;
2634 return 0; 2802 return 0;
2635 } 2803 }
@@ -2641,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(int value) @@ -2641,11 +2809,11 @@ int JZsdk_Uart_RecvDeal_Set_UART_DEV2_ReceiveMode(int value)
2641 */ 2809 */
2642 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV2_TransmodeDecide() 2810 static T_JZsdkReturnCode JZsdk_Uart_RecvDeal_UART_DEV2_TransmodeDecide()
2643 { 2811 {
2644 - if ((UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_TRANSMISSION ) //语音传输模式  
2645 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_TRANSMISSION) //音频文件传输模式  
2646 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRANS_TRANSMISSION) //opus传输模式  
2647 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_TRANSMISSION) //opus实时语音传输模式  
2648 - || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_TRANSMISSION)) //TTS传输模式) 2812 + if ((UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_REALTIMEMP2_UNLIMIT_TRANSMISSION ) //mp2语音无限制传输模式
  2813 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_AUDIOFILE_TRANS_UNLIMIT_TRANSMISSION) //音频文件无限制传输模式
  2814 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_TRAN_UNLIMIT_TRANSMISSION) //opus无限制传输模式
  2815 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_OPUS_REALTIMEVOICE_UNLIMIT_TRANSMISSION) //opus实时语音无限制传输模式
  2816 + || (UART_DEV2_Receive_mode == JZ_INSCODE_5AFRAME_TTS_TRANS_UNLIMIT_TRANSMISSION)) //TTS无限制传输模式)
2649 { 2817 {
2650 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 2818 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
2651 } 2819 }
@@ -8,31 +8,13 @@ @@ -8,31 +8,13 @@
8 #include "Jzsdk_Base/JZsdk_FrameComparsion/JZsdk_FrameComparsion.h" 8 #include "Jzsdk_Base/JZsdk_FrameComparsion/JZsdk_FrameComparsion.h"
9 9
10 //发送任务 10 //发送任务
11 -static int JZsdk_Uart_SendDeal_SendOrder(int UartPort ,char *sendbuf, int len) 11 +static int JZsdk_Uart_SendDeal_SendOreder(int UartPort ,char *sendbuf, int len)
12 { 12 {
13 JZsdk_Uart_UartSend(UartPort, sendbuf, len); 13 JZsdk_Uart_UartSend(UartPort, sendbuf, len);
14 } 14 }
15 15
16 -//发送自由帧  
17 -int JZsdk_Uart_SendDeal_Send_CustomOrder(int UartPort, char *sendbuf, int len)  
18 -{  
19 - JZsdk_Uart_UartSend(UartPort, sendbuf, len);  
20 -}  
21 16
22 //发送连接帧 17 //发送连接帧
23 -int JZsdk_Uart_SendDeal_Send_ConnectFrame(int Uartport)  
24 -{  
25 - char sendbuf[256];  
26 - int send_buf_len;  
27 -  
28 - //1、获取帧样板  
29 - JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_ASKFORCONNECT , sendbuf, &send_buf_len);  
30 -  
31 - //2、发送帧  
32 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len);  
33 -}  
34 -  
35 -//发送回复连接帧  
36 int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag) 18 int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag)
37 { 19 {
38 char sendbuf[256]; 20 char sendbuf[256];
@@ -45,7 +27,7 @@ int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag) @@ -45,7 +27,7 @@ int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag)
45 sendbuf[9] = Version_flag; 27 sendbuf[9] = Version_flag;
46 28
47 //3、发送帧 29 //3、发送帧
48 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 30 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
49 } 31 }
50 32
51 //发送成功帧 33 //发送成功帧
@@ -61,7 +43,7 @@ int JZsdk_Uart_SendDeal_Reply_Sucesss(int Uartport ,int FrameSequence) @@ -61,7 +43,7 @@ int JZsdk_Uart_SendDeal_Reply_Sucesss(int Uartport ,int FrameSequence)
61 sendbuf[6] = FrameSequence; //帧序列 43 sendbuf[6] = FrameSequence; //帧序列
62 44
63 //3、发送帧 45 //3、发送帧
64 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 46 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
65 } 47 }
66 48
67 //发送失败帧 49 //发送失败帧
@@ -77,7 +59,7 @@ int JZsdk_Uart_SendDeal_Reply_Failure(int Uartport ,int FrameSequence) @@ -77,7 +59,7 @@ int JZsdk_Uart_SendDeal_Reply_Failure(int Uartport ,int FrameSequence)
77 sendbuf[6] = FrameSequence; //帧序列 59 sendbuf[6] = FrameSequence; //帧序列
78 60
79 //3、发送帧 61 //3、发送帧
80 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 62 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
81 } 63 }
82 64
83 //发送当前从设备名 65 //发送当前从设备名
@@ -94,7 +76,7 @@ int JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(int Uartport , int device_name @@ -94,7 +76,7 @@ int JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(int Uartport , int device_name
94 sendbuf[10] = device_name; 76 sendbuf[10] = device_name;
95 77
96 //3、发送帧 78 //3、发送帧
97 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 79 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
98 } 80 }
99 81
100 82
@@ -111,7 +93,7 @@ int JZsdk_Uart_SendDeal_QuerySecondaryDeviceName(int Uartport ,int FrameSequence @@ -111,7 +93,7 @@ int JZsdk_Uart_SendDeal_QuerySecondaryDeviceName(int Uartport ,int FrameSequence
111 sendbuf[6] = FrameSequence; //帧序列 93 sendbuf[6] = FrameSequence; //帧序列
112 94
113 //3、发送帧 95 //3、发送帧
114 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 96 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
115 } 97 }
116 98
117 //发送当前设备序列号 99 //发送当前设备序列号
@@ -138,7 +120,7 @@ int JZsdk_Uart_SendDeal_SerialNumber(int UartPort, int FrameSequence, char *Seri @@ -138,7 +120,7 @@ int JZsdk_Uart_SendDeal_SerialNumber(int UartPort, int FrameSequence, char *Seri
138 send_buf_len = 25; 120 send_buf_len = 25;
139 121
140 //3、发送帧 122 //3、发送帧
141 - JZsdk_Uart_SendDeal_SendOrder(UartPort ,sendbuf, send_buf_len); 123 + JZsdk_Uart_SendDeal_SendOreder(UartPort ,sendbuf, send_buf_len);
142 } 124 }
143 125
144 126
@@ -162,7 +144,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist(int Uartport ,char *music_name, int musi @@ -162,7 +144,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist(int Uartport ,char *music_name, int musi
162 sendbuf[4] = len & 0xff; 144 sendbuf[4] = len & 0xff;
163 145
164 //3、发送帧 146 //3、发送帧
165 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, len); 147 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, len);
166 } 148 }
167 149
168 //发送歌曲列表开始帧 150 //发送歌曲列表开始帧
@@ -179,7 +161,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist_start(int Uartport ,int num) @@ -179,7 +161,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist_start(int Uartport ,int num)
179 sendbuf[9] = num; 161 sendbuf[9] = num;
180 162
181 //3、发送帧 163 //3、发送帧
182 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 164 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
183 165
184 } 166 }
185 167
@@ -197,7 +179,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist_end(int Uartport) @@ -197,7 +179,7 @@ int JZsdk_Uart_SendDeal_Reply_Musiclist_end(int Uartport)
197 //2、写入数据 179 //2、写入数据
198 180
199 //3、发送帧 181 //3、发送帧
200 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 182 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
201 } 183 }
202 184
203 //发送播放状态结束帧 185 //发送播放状态结束帧
@@ -213,7 +195,7 @@ int JZsdk_Uart_SendDeal_Send_PlayStatus_end(int Uartport) @@ -213,7 +195,7 @@ int JZsdk_Uart_SendDeal_Send_PlayStatus_end(int Uartport)
213 //2、写入数据 195 //2、写入数据
214 196
215 //3、发送帧 197 //3、发送帧
216 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 198 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
217 } 199 }
218 200
219 //发送播放状态帧 201 //发送播放状态帧
@@ -246,7 +228,7 @@ int JZsdk_Uart_SendDeal_Send_PlayStatus(int Uartport ,int num) @@ -246,7 +228,7 @@ int JZsdk_Uart_SendDeal_Send_PlayStatus(int Uartport ,int num)
246 sendbuf[9] = (char)num; 228 sendbuf[9] = (char)num;
247 229
248 //3、发送帧 230 //3、发送帧
249 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 231 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
250 } 232 }
251 233
252 //回复当前播放的歌曲名字 234 //回复当前播放的歌曲名字
@@ -270,7 +252,7 @@ int JZsdk_Uart_SendDeal_Reply_MusicName(int Uartport ,char *music_name, int musi @@ -270,7 +252,7 @@ int JZsdk_Uart_SendDeal_Reply_MusicName(int Uartport ,char *music_name, int musi
270 sendbuf[4] = len & 0xff; 252 sendbuf[4] = len & 0xff;
271 253
272 //3、发送帧 254 //3、发送帧
273 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, len); 255 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, len);
274 } 256 }
275 257
276 //回复当前音量 258 //回复当前音量
@@ -287,7 +269,7 @@ int JZsdk_Uart_SendDeal_Reply_Volume(int Uartport ,int num) @@ -287,7 +269,7 @@ int JZsdk_Uart_SendDeal_Reply_Volume(int Uartport ,int num)
287 sendbuf[9] = (char)num; 269 sendbuf[9] = (char)num;
288 270
289 //3、发送帧 271 //3、发送帧
290 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 272 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
291 273
292 } 274 }
293 275
@@ -310,7 +292,7 @@ int JZsdk_Uart_SendDeal_Reply_SoftVersion(int Uartport ,char majorVersion, char @@ -310,7 +292,7 @@ int JZsdk_Uart_SendDeal_Reply_SoftVersion(int Uartport ,char majorVersion, char
310 sendbuf[12] = debugVersion; 292 sendbuf[12] = debugVersion;
311 293
312 //3、发送帧 294 //3、发送帧
313 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 295 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
314 } 296 }
315 297
316 //发送循环状态 298 //发送循环状态
@@ -328,7 +310,7 @@ int JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(int Uartport ,int status) @@ -328,7 +310,7 @@ int JZsdk_Uart_SendDeal_Reply_LoopPlayStatus(int Uartport ,int status)
328 sendbuf[9] = status; 310 sendbuf[9] = status;
329 311
330 //3、发送帧 312 //3、发送帧
331 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 313 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
332 314
333 } 315 }
334 316
@@ -347,7 +329,7 @@ int JZsdk_Uart_SendDeal_Reply_TTS_tone(int Uartport ,int tone) @@ -347,7 +329,7 @@ int JZsdk_Uart_SendDeal_Reply_TTS_tone(int Uartport ,int tone)
347 sendbuf[9] = tone; 329 sendbuf[9] = tone;
348 330
349 //3、发送帧 331 //3、发送帧
350 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 332 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
351 } 333 }
352 334
353 //发送语速 335 //发送语速
@@ -365,7 +347,7 @@ int JZsdk_Uart_SendDeal_Reply_TTS_speed(int Uartport ,int speed) @@ -365,7 +347,7 @@ int JZsdk_Uart_SendDeal_Reply_TTS_speed(int Uartport ,int speed)
365 sendbuf[9] = speed; 347 sendbuf[9] = speed;
366 348
367 //3、发送帧 349 //3、发送帧
368 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 350 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
369 } 351 }
370 352
371 /**************************************************************************************************************************************************** 353 /****************************************************************************************************************************************************
@@ -397,7 +379,7 @@ int JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(int Uartport ,int angle) @@ -397,7 +379,7 @@ int JZsdk_Uart_SendDeal_Reply_GimbalPitchAngle(int Uartport ,int angle)
397 sendbuf[11] = (char)(angle & 255); 379 sendbuf[11] = (char)(angle & 255);
398 380
399 //3、发送帧 381 //3、发送帧
400 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 382 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
401 } 383 }
402 384
403 //设置当前云台角度 385 //设置当前云台角度
@@ -425,7 +407,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalPitchAngle(int Uartport ,int angle) @@ -425,7 +407,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalPitchAngle(int Uartport ,int angle)
425 sendbuf[11] = (angle & 0xff); 407 sendbuf[11] = (angle & 0xff);
426 408
427 //3、发送帧 409 //3、发送帧
428 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 410 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
429 } 411 }
430 412
431 //查询云台角度 413 //查询云台角度
@@ -442,7 +424,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalAngle(int Uartport ,int FrameSequence) @@ -442,7 +424,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalAngle(int Uartport ,int FrameSequence)
442 sendbuf[6] = FrameSequence; 424 sendbuf[6] = FrameSequence;
443 425
444 //3、发送帧 426 //3、发送帧
445 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 427 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
446 } 428 }
447 429
448 //微调云台pitch 430 //微调云台pitch
@@ -470,7 +452,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalFineTuningPitch(int Uartport, int PitchFineTun @@ -470,7 +452,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalFineTuningPitch(int Uartport, int PitchFineTun
470 sendbuf[11] = (PitchFineTuning & 0xff); 452 sendbuf[11] = (PitchFineTuning & 0xff);
471 453
472 //3、发送帧 454 //3、发送帧
473 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 455 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
474 } 456 }
475 457
476 //查询云台角度微调值 458 //查询云台角度微调值
@@ -487,7 +469,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalFineTuningPitch(int Uartport, int Fram @@ -487,7 +469,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalFineTuningPitch(int Uartport, int Fram
487 sendbuf[6] = FrameSequence; //帧序列 469 sendbuf[6] = FrameSequence; //帧序列
488 470
489 //3、发送帧 471 //3、发送帧
490 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 472 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
491 } 473 }
492 474
493 //回复云台pitch微调值 475 //回复云台pitch微调值
@@ -515,7 +497,7 @@ int JZsdk_Uart_SendDeal_Reply_GimbalFineTuningPitch(int Uartport, int FrameSeque @@ -515,7 +497,7 @@ int JZsdk_Uart_SendDeal_Reply_GimbalFineTuningPitch(int Uartport, int FrameSeque
515 sendbuf[11] = (FineTunigPitch & 0xff); 497 sendbuf[11] = (FineTunigPitch & 0xff);
516 498
517 //3、发送帧 499 //3、发送帧
518 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 500 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
519 } 501 }
520 502
521 //设置云台联动 503 //设置云台联动
@@ -533,7 +515,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalLinkageControl(int Uartport,int FrameSequence, @@ -533,7 +515,7 @@ int JZsdk_Uart_SendDeal_Set_GimbalLinkageControl(int Uartport,int FrameSequence,
533 sendbuf[10] = value; 515 sendbuf[10] = value;
534 516
535 //3、发送帧 517 //3、发送帧
536 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 518 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
537 } 519 }
538 520
539 //查询云台联动值 521 //查询云台联动值
@@ -550,7 +532,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalLinkage(int Uartport,int FrameSequence @@ -550,7 +532,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_GimbalLinkage(int Uartport,int FrameSequence
550 sendbuf[6] = FrameSequence; //帧序列 532 sendbuf[6] = FrameSequence; //帧序列
551 533
552 //3、发送帧 534 //3、发送帧
553 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 535 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
554 } 536 }
555 537
556 //发送云台联动值 538 //发送云台联动值
@@ -568,7 +550,7 @@ int JZsdk_Uart_SendDeal_GimbalLinkageControl(int Uartport,int FrameSequence,int @@ -568,7 +550,7 @@ int JZsdk_Uart_SendDeal_GimbalLinkageControl(int Uartport,int FrameSequence,int
568 sendbuf[10] = value; 550 sendbuf[10] = value;
569 551
570 //3、发送帧 552 //3、发送帧
571 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 553 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
572 } 554 }
573 555
574 //发送云台最大最小值帧 556 //发送云台最大最小值帧
@@ -586,7 +568,7 @@ int JZsdk_Uart_SendDeal_SetGimbalRange(int Uartport,int FrameSequence,int value) @@ -586,7 +568,7 @@ int JZsdk_Uart_SendDeal_SetGimbalRange(int Uartport,int FrameSequence,int value)
586 sendbuf[10] = value; 568 sendbuf[10] = value;
587 569
588 //3、发送帧 570 //3、发送帧
589 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 571 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
590 } 572 }
591 573
592 /**************************************************************************************************************************************************** 574 /****************************************************************************************************************************************************
@@ -610,7 +592,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLightFrequency(int Uartport ,int Frequency) @@ -610,7 +592,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLightFrequency(int Uartport ,int Frequency)
610 sendbuf[10] = Frequency; 592 sendbuf[10] = Frequency;
611 593
612 //3、发送帧 594 //3、发送帧
613 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 595 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
614 } 596 }
615 597
616 //设置探照灯控制 598 //设置探照灯控制
@@ -628,7 +610,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Control(int Uartport,int mode) @@ -628,7 +610,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Control(int Uartport,int mode)
628 sendbuf[10] = mode; 610 sendbuf[10] = mode;
629 611
630 //3、发送帧 612 //3、发送帧
631 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 613 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
632 } 614 }
633 615
634 //设置探照灯亮度 616 //设置探照灯亮度
@@ -647,7 +629,7 @@ int JZsdk_Uart_SendDeal_SearchLight_SetLumen(int Uartport, int LeftLumen, int @@ -647,7 +629,7 @@ int JZsdk_Uart_SendDeal_SearchLight_SetLumen(int Uartport, int LeftLumen, int
647 sendbuf[10] = RightLumen; 629 sendbuf[10] = RightLumen;
648 630
649 //3、发送帧 631 //3、发送帧
650 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 632 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
651 } 633 }
652 634
653 //发送 635 //发送
@@ -664,7 +646,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Frequency(int Uartport) @@ -664,7 +646,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Frequency(int Uartport)
664 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY, sendbuf, &send_buf_len); 646 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_FREQUENCY, sendbuf, &send_buf_len);
665 647
666 //2、发送帧 648 //2、发送帧
667 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 649 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
668 } 650 }
669 651
670 //查询探照灯亮度 652 //查询探照灯亮度
@@ -679,7 +661,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Lumen(int Uartport) @@ -679,7 +661,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Lumen(int Uartport)
679 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LUMEN, sendbuf, &send_buf_len); 661 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LUMEN, sendbuf, &send_buf_len);
680 662
681 //2、发送帧 663 //2、发送帧
682 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 664 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
683 } 665 }
684 666
685 //查询探照灯模式 667 //查询探照灯模式
@@ -694,7 +676,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Mode(int Uartport) @@ -694,7 +676,7 @@ int JZsdk_Uart_SendDeal_Set_SearchLight_CheckStatus_Mode(int Uartport)
694 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_MODE, sendbuf, &send_buf_len); 676 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_MODE, sendbuf, &send_buf_len);
695 677
696 //2、发送帧 678 //2、发送帧
697 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 679 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
698 } 680 }
699 681
700 //查询探照灯属性 682 //查询探照灯属性
@@ -709,7 +691,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_LightAttribute(int Uartport) @@ -709,7 +691,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_LightAttribute(int Uartport)
709 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LIGHTATTRIBUTE, sendbuf, &send_buf_len); 691 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_LIGHTATTRIBUTE, sendbuf, &send_buf_len);
710 692
711 //2、发送帧 693 //2、发送帧
712 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 694 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
713 } 695 }
714 696
715 //查询探照灯温度 697 //查询探照灯温度
@@ -724,7 +706,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_SearchLightTemperture(int Uartport) @@ -724,7 +706,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_SearchLightTemperture(int Uartport)
724 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE, sendbuf, &send_buf_len); 706 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_SEARCHLIGHT_TEMPERATURE, sendbuf, &send_buf_len);
725 707
726 //2、发送帧 708 //2、发送帧
727 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 709 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
728 } 710 }
729 711
730 //开启消息订阅 712 //开启消息订阅
@@ -742,7 +724,7 @@ int JZsdk_Uart_SendDeal_MessageSubcription_Control(int Uartport, int value) @@ -742,7 +724,7 @@ int JZsdk_Uart_SendDeal_MessageSubcription_Control(int Uartport, int value)
742 sendbuf[10] = value; 724 sendbuf[10] = value;
743 725
744 //3、发送帧 726 //3、发送帧
745 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 727 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
746 } 728 }
747 729
748 /**************************************************************************************************************************************************** 730 /****************************************************************************************************************************************************
@@ -770,7 +752,7 @@ int JZsdk_Uart_SendDeal_Set_WarningLight_Status(int Uartport,int status, int mod @@ -770,7 +752,7 @@ int JZsdk_Uart_SendDeal_Set_WarningLight_Status(int Uartport,int status, int mod
770 sendbuf[10] = mode; 752 sendbuf[10] = mode;
771 753
772 //3、发送帧 754 //3、发送帧
773 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 755 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
774 } 756 }
775 757
776 /************* 758 /*************
@@ -793,7 +775,7 @@ int JZsdk_Uart_SendDeal_Set_WarningLight_Color(int Uartport,int color1, int colo @@ -793,7 +775,7 @@ int JZsdk_Uart_SendDeal_Set_WarningLight_Color(int Uartport,int color1, int colo
793 sendbuf[10] = color2; 775 sendbuf[10] = color2;
794 776
795 //3、发送帧 777 //3、发送帧
796 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 778 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
797 } 779 }
798 780
799 //查询警灯状态 781 //查询警灯状态
@@ -808,7 +790,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_WarningLightStatus(int Uartport) @@ -808,7 +790,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_WarningLightStatus(int Uartport)
808 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS, sendbuf, &send_buf_len); 790 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_STATUS, sendbuf, &send_buf_len);
809 791
810 //2、发送帧 792 //2、发送帧
811 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 793 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
812 } 794 }
813 795
814 //查询警灯颜色 796 //查询警灯颜色
@@ -823,7 +805,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_WarningLightColor(int Uartport) @@ -823,7 +805,7 @@ int JZsdk_Uart_SendDeal_CheckStatus_WarningLightColor(int Uartport)
823 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR, sendbuf, &send_buf_len); 805 JZsdk_GetFrameTemplate(JZ_INSCODE_5AFRAME_CHECKSTATUS_WARNINGLIGHT_COLOR, sendbuf, &send_buf_len);
824 806
825 //2、发送帧 807 //2、发送帧
826 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 808 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
827 } 809 }
828 810
829 /**************************************************************************************************************************************************** 811 /****************************************************************************************************************************************************
@@ -850,7 +832,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Frequency(int Uartport, int Frequency) @@ -850,7 +832,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Frequency(int Uartport, int Frequency)
850 sendbuf[10] = Frequency; 832 sendbuf[10] = Frequency;
851 833
852 //3、发送帧 834 //3、发送帧
853 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 835 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
854 } 836 }
855 837
856 /************* 838 /*************
@@ -872,7 +854,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Mode(int Uartport, int mode) @@ -872,7 +854,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Mode(int Uartport, int mode)
872 sendbuf[10] = mode; 854 sendbuf[10] = mode;
873 855
874 //3、发送帧 856 //3、发送帧
875 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 857 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
876 } 858 }
877 859
878 /************* 860 /*************
@@ -895,7 +877,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Lumen(int Uartport,int LeftLumen, int RightL @@ -895,7 +877,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Lumen(int Uartport,int LeftLumen, int RightL
895 sendbuf[10] = RightLumen; 877 sendbuf[10] = RightLumen;
896 878
897 //3、发送帧 879 //3、发送帧
898 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 880 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
899 } 881 }
900 882
901 /************* 883 /*************
@@ -918,7 +900,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Temperature(int Uartport, int LeftTemperatur @@ -918,7 +900,7 @@ int JZsdk_Uart_SendDeal_SearchLight_Temperature(int Uartport, int LeftTemperatur
918 sendbuf[10] = RightTemperature; 900 sendbuf[10] = RightTemperature;
919 901
920 //3、发送帧 902 //3、发送帧
921 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 903 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
922 } 904 }
923 905
924 906
@@ -942,7 +924,7 @@ int JZsdk_Uart_SendDeal_WarningLight_Status(int Uartport, int status, int mode) @@ -942,7 +924,7 @@ int JZsdk_Uart_SendDeal_WarningLight_Status(int Uartport, int status, int mode)
942 sendbuf[10] = mode; 924 sendbuf[10] = mode;
943 925
944 //3、发送帧 926 //3、发送帧
945 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); } 927 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len); }
946 928
947 /************* 929 /*************
948 * 930 *
@@ -964,7 +946,7 @@ int JZsdk_Uart_SendDeal_WarningLight_Color(int Uartport, int color1, int color2) @@ -964,7 +946,7 @@ int JZsdk_Uart_SendDeal_WarningLight_Color(int Uartport, int color1, int color2)
964 sendbuf[10] = color2; 946 sendbuf[10] = color2;
965 947
966 //3、发送帧 948 //3、发送帧
967 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 949 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
968 } 950 }
969 951
970 /************* 952 /*************
@@ -986,5 +968,5 @@ int JZsdk_Uart_SendDeal_OutputPowerStatus(int Uartport, int FrameSequence, int s @@ -986,5 +968,5 @@ int JZsdk_Uart_SendDeal_OutputPowerStatus(int Uartport, int FrameSequence, int s
986 sendbuf[9] = status; 968 sendbuf[9] = status;
987 969
988 //3、发送帧 970 //3、发送帧
989 - JZsdk_Uart_SendDeal_SendOrder(Uartport ,sendbuf, send_buf_len); 971 + JZsdk_Uart_SendDeal_SendOreder(Uartport ,sendbuf, send_buf_len);
990 } 972 }
@@ -22,8 +22,6 @@ extern "C" { @@ -22,8 +22,6 @@ extern "C" {
22 22
23 /* Exported types ------------------------------------------------------------*/ 23 /* Exported types ------------------------------------------------------------*/
24 int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag); 24 int JZsdk_Uart_SendDeal_Send_Connect(int Uartport ,int Version_flag);
25 -int JZsdk_Uart_SendDeal_Send_ConnectFrame(int Uartport);  
26 -int JZsdk_Uart_SendDeal_Send_CustomOrder(int UartPort, char *sendbuf, int len);  
27 25
28 int JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(int Uartport , int device_name, int FrameSequence); 26 int JZsdk_Uart_SendDeal_Reply_SecondaryDeviceName(int Uartport , int device_name, int FrameSequence);
29 int JZsdk_Uart_SendDeal_QuerySecondaryDeviceName(int Uartport ,int FrameSequence); 27 int JZsdk_Uart_SendDeal_QuerySecondaryDeviceName(int Uartport ,int FrameSequence);
@@ -9,6 +9,13 @@ @@ -9,6 +9,13 @@
9 #include <sys/time.h> 9 #include <sys/time.h>
10 10
11 #include "JZsdk_Uart_UartDeal.h" 11 #include "JZsdk_Uart_UartDeal.h"
  12 +/***********************************
  13 + *
  14 + *
  15 + * 暂时未启用该c文件的多线程串口发送功能
  16 + *
  17 + *
  18 + * ***********************************8*/
12 19
13 20
14 // 定义任务队列结构体 21 // 定义任务队列结构体
@@ -334,7 +334,7 @@ static int UartDeal_Recv_interface(int Uart_fd, unsigned char *getbuf, int getbu @@ -334,7 +334,7 @@ static int UartDeal_Recv_interface(int Uart_fd, unsigned char *getbuf, int getbu
334 return 0; 334 return 0;
335 } 335 }
336 336
337 - // // 是否要打印内容 337 + // 是否要打印内容
338 // printf("getbuf: %s\n", getbuf); 338 // printf("getbuf: %s\n", getbuf);
339 // for (int i = 0; i < getbufLen; i++) 339 // for (int i = 0; i < getbufLen; i++)
340 // { 340 // {
@@ -431,7 +431,7 @@ static int UartDeal_Recv_interface(int Uart_fd, unsigned char *getbuf, int getbu @@ -431,7 +431,7 @@ static int UartDeal_Recv_interface(int Uart_fd, unsigned char *getbuf, int getbu
431 // 如果是有帧头的情况跳出的,说明是帧被切了,需要返回帧长度给接收线程 431 // 如果是有帧头的情况跳出的,说明是帧被切了,需要返回帧长度给接收线程
432 if (FrameFlag != 0) 432 if (FrameFlag != 0)
433 { 433 {
434 - // 1、判断帧的长度会不会不合理,帧的长度最大为文件名帧,其长度为9+2+128 434 + // 1、判断帧的长度会不会不合理,帧的长度最大为文件名帧,其长度为9+2+400
435 if (FrameLen > (9 + 2 + 128)) 435 if (FrameLen > (9 + 2 + 128))
436 { 436 {
437 // 将其排出不返回 437 // 将其排出不返回
  1 +/**
  2 + ********************************************************************
  3 + * @file CameraFeatures.H
  4 + * 用于处理h264视频帧
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef CAMERA_FEATURES_H
  11 +#define CAMERA_FEATURES_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +
  15 +/* Exported constants --------------------------------------------------------*/
  16 +/* 常亮定义*/
  17 +
  18 +
  19 +/* Exported types ------------------------------------------------------------*/
  20 +
  21 +
  22 +/* Exported functions --------------------------------------------------------*/
  23 +T_JZsdkReturnCode V4L2_ShootPhotoDeal(char* h264_data, unsigned int data_len);
  24 +int FrameDeal_ShootPhoto_trans(int Count);
  25 +
  26 +int V4L2_RecordVedioDeal(char *h264_data, int dataLen);
  27 +
  28 +#endif
  1 +#include <stdio.h>
  2 +#include <stdlib.h>
  3 +#include <string.h>
  4 +
  5 +
  6 +#include "../CameraParameter.h"
  7 +#include "../V4L2/V4L2_Record.h"
  8 +#include "JZsdkLib.h"
  9 +#include "./CameraFeatures.h"
  10 +
  11 +#include "version_choose.h"
  12 +
  13 +#define DATA_SEND_FROM_VIDEO_STREAM_MAX_LEN 60000
  14 +#define VIDEO_FRAME_AUD_LEN 6
  15 +
  16 +#if APP_VERSION == APP_PSDK
  17 + #include "Dji_Control/DJI_VideoDeal.h"
  18 +#endif
  19 +
  20 +static const uint8_t s_frameAudInfo[VIDEO_FRAME_AUD_LEN] = {0x00, 0x00, 0x00, 0x01, 0x09, 0x10};
  21 +
  22 +extern int Camera_PushVideoInitFlag;
  23 +
  24 +pthread_mutex_t FrameDealMutex;
  25 +
  26 +
  27 +static void FrameDeal_PsdkPushFrame(char* h264_data, uint32_t data_len, int AudLength)
  28 +{
  29 +
  30 + unsigned int FrameBufSize = 0;
  31 + FrameBufSize = data_len;
  32 +
  33 + //如果视频为大疆H264型
  34 + if (PUSHFRAME_VIDEO_TPYE == VIDEO_TPYE_DJIH264)
  35 + {
  36 + FrameBufSize += VIDEO_FRAME_AUD_LEN;
  37 + memcpy(h264_data + data_len, s_frameAudInfo, VIDEO_FRAME_AUD_LEN);
  38 + //printf("大疆264型\n");
  39 + }
  40 + else
  41 + {
  42 + //printf("普通h264\n");
  43 + }
  44 +
  45 +#if APP_VERSION == APP_PSDK
  46 + //放入到对应的传输函数
  47 + DJI_VideoDeal_Push_DJIH264Frame(h264_data, FrameBufSize);
  48 +#endif
  49 +
  50 +}
  51 +
  52 +
  53 +//线程方案
  54 +static void *JZsdk_CameraFrameDeal_thread(void *args)
  55 +{
  56 +
  57 + int FrameLength;
  58 + int AudLength ; //帧尾长度
  59 +
  60 + JZSDK_LOG_INFO("JZsdk_CameraFrameDeal_thread创建完毕\n");
  61 +
  62 + while (1)
  63 + {
  64 + pthread_mutex_lock(&FrameDealMutex);
  65 +
  66 + //如果已经初始化了摄像头及推流部分
  67 + if (Camera_PushVideoInitFlag == JZ_FLAGCODE_OFF)
  68 + {
  69 + continue;
  70 + }
  71 +
  72 + //创建一个缓存区,用于存放视频数据
  73 + char *FrameDealBuffer;
  74 + FrameLength = 0;
  75 +
  76 + //如果要求的推送的视频流是 djih264
  77 + if (PUSHFRAME_VIDEO_TPYE == VIDEO_TPYE_DJIH264)
  78 + {
  79 + AudLength = VIDEO_FRAME_AUD_LEN ;
  80 + }
  81 + //如果要求的是普通的h264
  82 + else if (PUSHFRAME_VIDEO_TPYE == VIDEO_TPYE_H264)
  83 + {
  84 + AudLength = 0 ;
  85 + }
  86 + else
  87 + {
  88 + AudLength = 0 ;
  89 + }
  90 +
  91 + //从摄像头录制并取出一帧数据
  92 + V4L2_CameraFrameRecord(&FrameDealBuffer, &FrameLength, AudLength);
  93 +
  94 + //拍照处理函数
  95 + V4L2_ShootPhotoDeal(FrameDealBuffer, FrameLength);
  96 +
  97 + //录像处理函数
  98 + V4L2_RecordVedioDeal(FrameDealBuffer, FrameLength);
  99 +
  100 + //连拍处理函数
  101 + //FrameDeal_ShootPhotoBurstDeal(FrameDealBuffer, FrameLength);
  102 +
  103 + //推送一帧
  104 + FrameDeal_PsdkPushFrame(FrameDealBuffer, FrameLength, AudLength);
  105 +
  106 + free(FrameDealBuffer);
  107 + }
  108 +
  109 +
  110 +
  111 + pthread_exit(NULL);
  112 +}
  113 +
  114 +int JZsdk_CameraFrameDeal_thread_Init()
  115 +{
  116 + pthread_mutex_init(&FrameDealMutex, NULL); // 创建互斥锁
  117 +
  118 + pthread_t FrameDeal_thread;
  119 +
  120 + pthread_create(&FrameDeal_thread, NULL, JZsdk_CameraFrameDeal_thread, NULL);
  121 +}
  122 +
  123 +int FrameDeal_FrameDealThread_UnlockFun()
  124 +{
  125 + //解锁帧处理线程
  126 + pthread_mutex_unlock(&FrameDealMutex);
  127 +
  128 + return 0;
  129 +}
  1 +/**
  2 + ********************************************************************
  3 + * @file FRAMEDEALFUN.H
  4 + * 用于处理h264视频帧
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef FRAMEDEALFUN_H
  11 +#define FRAMEDEALFUN_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +
  15 +/* Exported constants --------------------------------------------------------*/
  16 +/* 常亮定义*/
  17 +
  18 +
  19 +/* Exported types ------------------------------------------------------------*/
  20 +
  21 +
  22 +/* Exported functions --------------------------------------------------------*/
  23 +
  24 +#endif // CAMERA_PARAMETER_SETTING_H
  25 +/************************ (C) COPYRIGHT DJI Innovations *******END OF FILE******/
  26 +
  1 +
  2 +#include <stdio.h>
  3 +#include "../CameraParameter.h"
  4 +#include "../V4L2/V4L2_Record.h"
  5 +#include "JZsdkLib.h"
  6 +
  7 +FILE *FrameDeal_RecordVideo_fp = NULL;
  8 +static int FrameDeal_RecordVideo_mode = JZ_FLAGCODE_OFF;
  9 +
  10 +extern int VideoTranscode_Flag ; //视频转码标志位,off为转码完毕,on为转码完成
  11 +
  12 +/*
  13 +
  14 + 录像部分
  15 +
  16 +*/
  17 +
  18 +// 录像函数
  19 +static void FrameDeal_RecordVideo(char* h264_data, uint32_t data_len)
  20 +{
  21 + fwrite(h264_data, data_len, 1, FrameDeal_RecordVideo_fp);
  22 + //JZSDK_LOG_INFO("写入一帧");
  23 +}
  24 +
  25 +//录像模式传递函数
  26 +T_JZsdkReturnCode FrameDeal_RecordVideo_trans(int mode)
  27 +{
  28 + JZSDK_LOG_INFO("录像传递函数被调用");
  29 +
  30 + //如果传来一个开始录像的指令,且当前没有打开录像, 且没在进行转码
  31 + if( mode == JZ_FLAGCODE_ON && FrameDeal_RecordVideo_mode == JZ_FLAGCODE_OFF && VideoTranscode_Flag == JZ_FLAGCODE_OFF)
  32 + {
  33 + FrameDeal_RecordVideo_fp = fopen("/root/sdcard/DCIM/Videos/temp.h264","wb");
  34 + if (FrameDeal_RecordVideo_fp == NULL)
  35 + {
  36 + JZSDK_LOG_ERROR("录像文件打开错误");
  37 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  38 + }
  39 +
  40 + FrameDeal_RecordVideo_mode = JZ_FLAGCODE_ON;
  41 + JZSDK_LOG_INFO("录像文件已经打开");
  42 +
  43 + }
  44 +
  45 + else if(mode == JZ_FLAGCODE_OFF && FrameDeal_RecordVideo_mode == JZ_FLAGCODE_ON)
  46 + {
  47 + //关闭录像的文件
  48 + JZSDK_LOG_INFO("录像已保存");
  49 + fclose(FrameDeal_RecordVideo_fp);
  50 +
  51 + //转码
  52 + //录像转码解锁函数
  53 + ffmpeg_H264_tanscodeto(2);
  54 +
  55 + //关闭录像
  56 + FrameDeal_RecordVideo_mode = JZ_FLAGCODE_OFF;
  57 + }
  58 +
  59 + else
  60 + {
  61 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  62 + }
  63 +
  64 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  65 +}
  66 +
  67 +
  68 +int V4L2_RecordVedioDeal(char *h264_data, int dataLen)
  69 +{
  70 +
  71 + if(FrameDeal_RecordVideo_mode == JZ_FLAGCODE_OFF)
  72 + {
  73 + return -1;
  74 + }
  75 +
  76 + //录像函数
  77 + FrameDeal_RecordVideo( h264_data, dataLen);
  78 + //JZSDK_LOG_INFO("录入一帧");
  79 +}
  80 +
  1 +#include <stdio.h>
  2 +
  3 +#include "../CameraParameter.h"
  4 +#include "../V4L2/V4L2_Record.h"
  5 +#include "JZsdkLib.h"
  6 +
  7 +#define FrameDeal_SHOOTPHOTO_CLOSE (0)
  8 +#define FrameDeal_SHOOTPHOTO_ON (1)
  9 +#define FrameDeal_SHOOTPHOTOBURST_ON (1)
  10 +
  11 +//连拍照片数
  12 +static int FrameDeal_ShootPhoto_Count;
  13 +static int FrameDeal_ShootPhotoBurst_Count;
  14 +static int FrameDeal_ShootPhotoBurst_Count_Save;
  15 +static int FrameDeal_ShootPhotoBurst_FrameCount;
  16 +
  17 +static int FrameDeal_ShootPhotoMode = JZ_FLAGCODE_OFF;
  18 +static int FrameDeal_ShootPhotoBurst_mode = JZ_FLAGCODE_OFF;
  19 +static int FrameDeal_BurstButton = JZ_FLAGCODE_OFF ;
  20 +
  21 +//输出文件
  22 +FILE *FrameDeal_ShootPhoto_fp = NULL;
  23 +FILE *FrameDeal_ShootPhotoBurst_fp = NULL;
  24 +
  25 +extern int PhotoTranscode_Flag ; //图片转码标志位,off为转码完毕,on为转码完成
  26 +
  27 +/*
  28 +
  29 +
  30 + 单拍部分
  31 +
  32 +
  33 +*/
  34 +
  35 +
  36 +// 拍摄模式传递函数
  37 +int FrameDeal_ShootPhoto_trans(int Count)
  38 +{
  39 + //拍摄计数值
  40 + FrameDeal_ShootPhoto_Count = Count;
  41 + FrameDeal_ShootPhotoMode = JZ_FLAGCODE_ON;
  42 + JZSDK_LOG_INFO("拍摄传递函数被调用");
  43 +}
  44 +
  45 +
  46 +//拍摄函数
  47 +static T_JZsdkReturnCode FrameDeal_ShootPhoto(char* h264_data, uint32_t data_len)
  48 +{
  49 + //如果转码未完成
  50 + if (PhotoTranscode_Flag == JZ_FLAGCODE_ON)
  51 + {
  52 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  53 + }
  54 +
  55 +
  56 + char *FrameDeal_ShootPhoto_InPath = "/root/sdcard/DCIM/Photos/temp.h264";
  57 +
  58 + // 照片先用h264流保存
  59 + FrameDeal_ShootPhoto_fp = fopen(FrameDeal_ShootPhoto_InPath, "wb");
  60 + fwrite(h264_data, data_len, 1, FrameDeal_ShootPhoto_fp);
  61 + fclose(FrameDeal_ShootPhoto_fp);
  62 +
  63 + //调用转码线程
  64 + ffmpeg_H264_tanscodeto(1);
  65 +
  66 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  67 +}
  68 +
  69 +
  70 +
  71 +/*
  72 +
  73 + 连拍部分
  74 +
  75 +*/
  76 +
  77 +//连拍模式传递函数
  78 +void FrameDeal_ShootPhotoBurst_trans(int Count)
  79 +{
  80 + FrameDeal_ShootPhotoBurst_mode = FrameDeal_SHOOTPHOTOBURST_ON;
  81 + FrameDeal_ShootPhotoBurst_Count = Count;
  82 + FrameDeal_ShootPhotoBurst_Count_Save = Count;
  83 +
  84 + char *FrameDeal_ShootPhotoBurst_InPath = "/root/sdcard/DCIM/Photos/temp.h264";
  85 +
  86 + // 照片先用h264流保存
  87 + FrameDeal_ShootPhotoBurst_fp = fopen(FrameDeal_ShootPhotoBurst_InPath, "wb");
  88 +}
  89 +
  90 +//连拍函数
  91 +static void FrameDeal_BurstShootPhoto(char* h264_data, uint32_t data_len)
  92 +{
  93 + fwrite(h264_data, data_len, 1, FrameDeal_ShootPhotoBurst_fp);
  94 +}
  95 +
  96 +//连拍处理函数
  97 +static int FrameDeal_ShootPhotoBurstDeal(char* h264_data, uint32_t data_len)
  98 +{
  99 + if(FrameDeal_ShootPhotoBurst_mode == JZ_FLAGCODE_OFF)
  100 + {
  101 + return -1;
  102 + }
  103 +
  104 + if(h264_data[4] == 0x67 && FrameDeal_ShootPhotoBurst_mode == JZ_FLAGCODE_ON)
  105 + {
  106 + JZSDK_LOG_INFO("连拍触发");
  107 + FrameDeal_BurstButton = JZ_FLAGCODE_ON;
  108 + }
  109 +
  110 + if(FrameDeal_BurstButton == JZ_FLAGCODE_ON)
  111 + {
  112 + //如果开始
  113 + //录像函数
  114 + FrameDeal_BurstShootPhoto(h264_data ,data_len);
  115 + FrameDeal_ShootPhotoBurst_FrameCount++;
  116 +
  117 + if(FrameDeal_ShootPhotoBurst_FrameCount == 3)
  118 + {
  119 + FrameDeal_ShootPhotoBurst_Count--;
  120 + FrameDeal_ShootPhotoBurst_FrameCount = 0;
  121 +
  122 + //3帧1拍
  123 + if(FrameDeal_ShootPhotoBurst_Count == 0)
  124 + {
  125 + //调用转码线程
  126 + fclose(FrameDeal_ShootPhotoBurst_fp);
  127 +
  128 + FrameDeal_ShootPhotoBurst_mode = JZ_FLAGCODE_OFF;
  129 + FrameDeal_BurstButton = JZ_FLAGCODE_OFF;
  130 +
  131 + JZSDK_LOG_INFO("打开连拍转码");
  132 + //ffmpeg_H264_tanscodeto(3, FrameDeal_ShootPhotoBurst_Count_Save);
  133 + }
  134 + }
  135 + }
  136 +}
  137 +
  138 +//拍照处理函数
  139 +T_JZsdkReturnCode V4L2_ShootPhotoDeal(char* h264_data, unsigned int data_len)
  140 +{
  141 + T_JZsdkReturnCode ret;
  142 +
  143 + //如果拍照模式未开启
  144 + if (FrameDeal_ShootPhotoMode == JZ_FLAGCODE_OFF)
  145 + {
  146 + return -1;
  147 + }
  148 +
  149 + //如果开启
  150 +
  151 + //如果该帧 为 I 帧
  152 + if(h264_data[4] == 0x67)
  153 + {
  154 + JZSDK_LOG_INFO("是I帧 拍照一次");
  155 + ret = FrameDeal_ShootPhoto( h264_data, data_len);
  156 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  157 + {
  158 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  159 + }
  160 +
  161 + FrameDeal_ShootPhoto_Count--;
  162 +
  163 + if (FrameDeal_ShootPhoto_Count == 0)
  164 + {
  165 + FrameDeal_ShootPhotoMode = JZ_FLAGCODE_OFF;
  166 + }
  167 + }
  168 +
  169 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  170 +}
  1 +/**
  2 + ********************************************************************
  3 + * @file CameraParameter.h
  4 + * CameraParameter的头文件
  5 + * 用于记录摄像头的参数
  6 + *
  7 + *********************************************************************
  8 + */
  9 +
  10 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  11 +#ifndef CAMERA_PARAMETER_H
  12 +#define CAMERA_PARAMETER_H
  13 +
  14 +/* Includes ------------------------------------------------------------------*/
  15 +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"
  16 +#include "version_choose.h"
  17 +
  18 +#ifdef __cplusplus
  19 +extern "C" {
  20 +#endif
  21 +
  22 +/* Exported constants --------------------------------------------------------*/
  23 +/* 常亮定义*/
  24 +typedef enum {
  25 + VIDEO_TPYE_H264 = 0x0000,
  26 + VIDEO_TPYE_DJIH264 = 0x0001
  27 +} JZ_Video_Type_Code;
  28 +
  29 +
  30 +#if DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T
  31 + #define CAMERA_DEVICE_NAME "/dev/video0"
  32 +
  33 + #define CAMERA_RECORD_FRAME (25) //每秒帧数 25帧
  34 + #define CAMERA_RECORD_HEIGHT (1080)//摄像头录制 帧画面高度720 1080
  35 + #define CAMERA_RECORD_WIDTH (1980)//摄像头录制 帧画面宽度1280 1980
  36 +
  37 +
  38 + #define BRIGHTNESS (80) //亮度,该摄像头亮度范围为 1-255 默认128
  39 + #define CONTRAST (155) //对比度,摄像头对比度范围为 1-255 默认128
  40 + #define SATURATION (128) //饱和度 摄像头饱和度范围为 1-255 默认128
  41 + #define EXPSURE (100) //曝光值 摄像头曝光值范围: 5-2500 默认auto设置
  42 +
  43 + #define PUSHFRAME_VIDEO_TPYE VIDEO_TPYE_DJIH264 //推送帧的视频格式
  44 +
  45 +#else
  46 + #define CAMERA_DEVICE_NAME NULL
  47 +
  48 + #define CAMERA_RECORD_FRAME (0) //每秒帧数 25帧
  49 + #define CAMERA_RECORD_HEIGHT (0)//摄像头录制 帧画面高度720 1080
  50 + #define CAMERA_RECORD_WIDTH (0)//摄像头录制 帧画面宽度1280 1980
  51 +
  52 + #define BRIGHTNESS (0)
  53 + #define CONTRAST (0)
  54 + #define SATURATION (0)
  55 + #define EXPSURE (0)
  56 +
  57 + #define PUSHFRAME_VIDEO_TPYE VIDEO_TPYE_H264 //推送帧的视频格式
  58 +
  59 +#endif
  60 +
  61 +/* Exported types ------------------------------------------------------------*/
  62 +
  63 +/* Exported functions --------------------------------------------------------*/
  64 +
  65 +
  66 +#ifdef __cplusplus
  67 +}
  68 +#endif
  69 +
  70 +#endif
  1 +#include <stdio.h>
  2 +#include <string.h>
  3 +#include <pthread.h>
  4 +#include <unistd.h>
  5 +
  6 +#include "version_choose.h"
  7 +#include "UI_control.h"
  8 +#include "BaseConfig.h"
  9 +
  10 +#include "JZsdkLib.h"
  11 +
  12 +#include "./CameraParameter.h"
  13 +#include "./V4L2/V4L2_Record.h"
  14 +
  15 +int Camera_PushVideoInitFlag = JZ_FLAGCODE_OFF;
  16 +
  17 +/***********
  18 + *
  19 + * 检测是否有摄像头
  20 + *
  21 + * ************/
  22 +static T_JZsdkReturnCode Camera_CheckForThePresenceOfCameras()
  23 +{
  24 + //检测是否存在摄像头
  25 + if (CAMERA_DEVICE_NAME == NULL)
  26 + {
  27 + JZSDK_LOG_ERROR("无摄像头设备号设置");
  28 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  29 + }
  30 +
  31 + if(access(CAMERA_DEVICE_NAME, F_OK ) == 0)
  32 + {
  33 + JZSDK_LOG_ERROR("摄像头存在");
  34 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  35 + }
  36 + else
  37 + {
  38 + JZSDK_LOG_ERROR("摄像头不存在,关闭推流模块");
  39 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  40 + }
  41 +}
  42 +
  43 +/***********
  44 + *
  45 + * 建立保存文件夹
  46 + *
  47 + * ************/
  48 +static T_JZsdkReturnCode Camera_MediaFolderBuild()
  49 +{
  50 + char RmCmdStr[256];
  51 + snprintf(RmCmdStr, 256,"mkdir /root/sdcard/DCIM/");
  52 + if( JZsdk_RunSystemCmd(RmCmdStr) ==-1)
  53 + {
  54 + JZSDK_LOG_INFO("已经存在DCIM文件夹");
  55 + }
  56 +
  57 + snprintf(RmCmdStr, 256,"mkdir /root/sdcard/DCIM/Videos");
  58 + if( JZsdk_RunSystemCmd(RmCmdStr) ==-1)
  59 + {
  60 + JZSDK_LOG_INFO("已经存在Videos文件夹");
  61 + }
  62 +
  63 + snprintf(RmCmdStr, 256,"mkdir /root/sdcard/DCIM/Photos");
  64 + if( JZsdk_RunSystemCmd(RmCmdStr) ==-1)
  65 + {
  66 + JZSDK_LOG_INFO("已经存在Photos文件夹");
  67 + }
  68 +
  69 + snprintf(RmCmdStr, 256,"rm /root/sdcard/DCIM/Videos/temp.h264");
  70 + if( JZsdk_RunSystemCmd(RmCmdStr) ==-1)
  71 + {
  72 + JZSDK_LOG_INFO("Videos/temp.h264不存在");
  73 + }
  74 +
  75 + snprintf(RmCmdStr, 256,"rm /root/sdcard/DCIM/Photos/temp.h264");
  76 + if( JZsdk_RunSystemCmd(RmCmdStr) ==-1)
  77 + {
  78 + JZSDK_LOG_INFO("Photos/temp.h264不存在");
  79 + }
  80 +}
  81 +
  82 +/***********
  83 + *
  84 + * 相机初始化
  85 + *
  86 + * ************/
  87 +static T_JZsdkReturnCode JZsdk_CameraInit()
  88 +{
  89 + T_JZsdkReturnCode ret;
  90 + int dev_fd;
  91 +
  92 + //1、摄像头录制初始化
  93 +#if DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T
  94 + ret = V4l2_Camarainit(&dev_fd);
  95 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  96 + {
  97 + JZSDK_LOG_ERROR("摄像头录制初始化失败");
  98 + return ret;
  99 + }
  100 +
  101 + //2、摄像头参数调整
  102 + ret = V4L2_Parameter_Setting(dev_fd);
  103 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  104 + {
  105 + JZSDK_LOG_ERROR("摄像头参数调整失败");
  106 + return ret;
  107 + }
  108 +#else
  109 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  110 +#endif
  111 +
  112 +
  113 +
  114 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  115 +}
  116 +
  117 +T_JZsdkReturnCode JZsdk_Camera_FrameDealThread_UnlockFun()
  118 +{
  119 + //解锁一次帧处理函数。以用于处理一帧视频流画面
  120 + FrameDeal_FrameDealThread_UnlockFun();
  121 +}
  122 +
  123 +/***********
  124 + *
  125 + * 推流计时线程
  126 + *
  127 + * ************/
  128 +static void *JZsdk_Camera_PushFrame_TimerThread(void *args)
  129 +{
  130 + while (1)
  131 + {
  132 + delayMs(1000);
  133 +
  134 + //解锁一次帧处理函数。以用于处理一帧视频流画面
  135 + FrameDeal_FrameDealThread_UnlockFun();
  136 + }
  137 +}
  138 +
  139 +/***********
  140 + *
  141 + * 推流计时线程初始化
  142 + *
  143 + * ************/
  144 +static int JZsdk_Camera_PushFrame_TimerThread_Init()
  145 +{
  146 + pthread_t WriteDataTask;
  147 + pthread_attr_t task_attribute; //线程属性
  148 + pthread_attr_init(&task_attribute); //初始化线程属性
  149 + pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程分离属性
  150 + int opus_Protection = pthread_create(&WriteDataTask,&task_attribute,JZsdk_Camera_PushFrame_TimerThread,NULL); //线程
  151 + if(opus_Protection != 0)
  152 + {
  153 + JZSDK_LOG_ERROR("创建视频转码线程失败!");
  154 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  155 + }
  156 +
  157 +}
  158 +
  159 +/***********
  160 + *
  161 + * 相机模块初始化
  162 + *
  163 + * ************/
  164 +T_JZsdkReturnCode JZsdk_CameraMuduleInit()
  165 +{
  166 + T_JZsdkReturnCode ret;
  167 +
  168 + //1、建立保存文件夹
  169 + Camera_MediaFolderBuild();
  170 +
  171 + //2、检测是否有摄像头
  172 + ret = Camera_CheckForThePresenceOfCameras();
  173 + if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE)
  174 + {
  175 + JZSDK_LOG_ERROR("摄像头不存在,相机模块初始化失败");
  176 + return ret;
  177 + }
  178 +
  179 + //3、摄像头初始化
  180 + ret = JZsdk_CameraInit();
  181 + if (ret == JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE)
  182 + {
  183 + JZSDK_LOG_ERROR("摄像头参数配置错误,摄像头初始化失败");
  184 + return ret;
  185 + }
  186 +
  187 + //4、摄像头帧处理线程初始化
  188 + ret = JZsdk_CameraFrameDeal_thread_Init();
  189 + if (ret<0)
  190 + {
  191 + JZSDK_LOG_ERROR("4、摄像头帧处理线程初始化线程失败");
  192 + return ret;
  193 + }
  194 +
  195 + //5、如果是串口模式,则进行推流,推流计时线程初始化
  196 + if (APP_VERSION == APP_UART)
  197 + {
  198 + JZsdk_Camera_PushFrame_TimerThread_Init();
  199 + }
  200 +
  201 +
  202 +
  203 + //6、转码功能线程初始化
  204 +
  205 + JZSDK_LOG_DEBUG("相机模块初始化完成");
  206 + Camera_PushVideoInitFlag = JZ_FLAGCODE_ON;
  207 +
  208 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  209 +}
  1 +/**
  2 + ********************************************************************
  3 + * @file Camera_InAndOut.h
  4 + * Camera_InAndOut的头文件
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef CAMERA_INANDOUT_H
  11 +#define CAMERA_INANDOUT_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"
  15 +
  16 +#ifdef __cplusplus
  17 +extern "C" {
  18 +#endif
  19 +
  20 +/* Exported constants --------------------------------------------------------*/
  21 +/* 常亮定义*/
  22 +
  23 +/* Exported types ------------------------------------------------------------*/
  24 +
  25 +/* Exported functions --------------------------------------------------------*/
  26 +T_JZsdkReturnCode JZsdk_Camera_FrameDealThread_UnlockFun();
  27 +T_JZsdkReturnCode JZsdk_CameraMuduleInit();
  28 +
  29 +
  30 +#ifdef __cplusplus
  31 +}
  32 +#endif
  33 +
  34 +#endif
  1 +
  2 +#include <stdio.h>
  3 +#include <stdlib.h>
  4 +#include <string.h>
  5 +#include <assert.h>
  6 +#include <getopt.h> /* getopt_long() */
  7 +#include <fcntl.h> /* low-level i/o */
  8 +#include <unistd.h>
  9 +#include <errno.h>
  10 +#include <sys/stat.h>
  11 +#include <sys/types.h>
  12 +#include <sys/time.h>
  13 +#include <sys/mman.h>
  14 +#include <sys/ioctl.h>
  15 +
  16 +#include <linux/videodev2.h>
  17 +#include "./V4L2_CameraParameterSetting.h"
  18 +#include "../CameraParameter.h"
  19 +#include "JZsdkLib.h"
  20 +
  21 +T_JZsdkReturnCode V4L2_Parameter_Setting(int cam_fd)
  22 +{
  23 + struct v4l2_control ctrl;
  24 +
  25 + //设置亮度*
  26 + ctrl.id= V4L2_CID_BRIGHTNESS;
  27 + ctrl.value = BRIGHTNESS;
  28 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  29 + {
  30 + perror("ioctl");
  31 + exit(EXIT_FAILURE);
  32 + }
  33 +
  34 + //设置对比度
  35 + ctrl.id = V4L2_CID_CONTRAST;
  36 + ctrl.value= CONTRAST;
  37 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  38 + {
  39 + perror("ioctl");
  40 + exit(EXIT_FAILURE);
  41 + }
  42 + sleep(1);
  43 +
  44 + //设置饱和度
  45 + ctrl.id = V4L2_CID_SATURATION;
  46 + ctrl.value= SATURATION;
  47 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  48 + {
  49 + perror("ioctl");
  50 + exit(EXIT_FAILURE);
  51 + }
  52 +/*
  53 + //设置色度
  54 + ctrl.id = V4L2_CID_HUE;
  55 + ctrl.value = 1;
  56 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  57 + {
  58 + perror("ioctl");
  59 + exit(EXIT_FAILURE);
  60 + }
  61 +
  62 + //设置手动白平衡
  63 + ctrl.id = V4L2_CID_AUTO_WHITE_BALANCE;
  64 + ctrl.value = V4L2_WHITE_BALANCE_MANUAL ;
  65 + if(ioctl(cam_fd,VIDIOC_G_CTRL,&ctrl)==-1)
  66 + {
  67 + perror("ioctl");
  68 + exit(EXIT_FAILURE);
  69 + }
  70 +
  71 +
  72 + //设置白平衡色温
  73 + ctrl.id = V4L2_CID_WHITE_BALANCE_TEMPERATURE;
  74 + ctrl.value = 5100;
  75 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  76 + {
  77 + perror("ioctl");
  78 + exit(EXIT_FAILURE);
  79 + }
  80 +
  81 +
  82 + //设置锐度
  83 + ctrl.id = V4L2_CID_SHARPNESS;
  84 + ctrl.value = 4;
  85 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  86 + {
  87 + perror("ioctl");
  88 + exit(EXIT_FAILURE);
  89 + }
  90 +
  91 +
  92 + //设置背光补偿
  93 + ctrl.id = V4L2_CID_BACKLIGHT_COMPENSATION;
  94 + ctrl.value = 3;
  95 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  96 + {
  97 + perror("ioctl");
  98 + exit(EXIT_FAILURE);
  99 + }
  100 +
  101 + //设置伽玛值
  102 + ctrl.id = V4L2_CID_GAMMA;
  103 + ctrl.value = 120;
  104 + if(ioctl(cam_fd,VIDIOC_S_CTRL,&ctrl)==-1)
  105 + {
  106 + perror("ioctl");
  107 + exit(EXIT_FAILURE);
  108 + }
  109 +*/
  110 +}
  111 +
  1 +/**
  2 + ********************************************************************
  3 + * @file V4L2_CameraParameterSetting.h
  4 + * 用于转码拍下来的照片以及视频
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef V4L2_CAMERA_PARAMETER_SETTING_H
  11 +#define V4L2_CAMERA_PARAMETER_SETTING_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"
  15 +
  16 +
  17 +#ifdef __cplusplus
  18 +extern "C" {
  19 +#endif
  20 +
  21 +/* Exported constants --------------------------------------------------------*/
  22 +/* 常亮定义*/
  23 +
  24 +
  25 +/* Exported types ------------------------------------------------------------*/
  26 +
  27 +
  28 +/* Exported functions --------------------------------------------------------*/
  29 +T_JZsdkReturnCode V4L2_Parameter_Setting(int cam_fd);
  30 +
  31 +
  32 +#ifdef __cplusplus
  33 +}
  34 +#endif
  35 +
  36 +#endif
  1 +
  2 +
  3 +/* Includes ------------------------------------------------------------------*/
  4 +
  5 +#include <stdio.h>
  6 +#include <stdlib.h>
  7 +#include <string.h>
  8 +#include <assert.h>
  9 +#include <getopt.h> /* getopt_long() */
  10 +#include <fcntl.h> /* low-level i/o */
  11 +#include <unistd.h>
  12 +#include <sys/stat.h>
  13 +#include <sys/types.h>
  14 +#include <sys/time.h>
  15 +#include <sys/mman.h>
  16 +#include <sys/ioctl.h>
  17 +
  18 +#include <linux/videodev2.h>
  19 +
  20 +#include "../CameraParameter.h"
  21 +#include "version_choose.h"
  22 +#include "UI_control.h"
  23 +#include "BaseConfig.h"
  24 +
  25 +#include "JZsdkLib.h"
  26 +
  27 +/* Private constants ---------------------------------------------------------*/
  28 +// 清空
  29 +#define CLEAR(x) memset(&(x), 0, sizeof(x))
  30 +
  31 +/* Private types -------------------------------------------------------------*/
  32 +unsigned char *returnptr;//保存映射后用户空间的首地址
  33 +unsigned int returnsize;
  34 +
  35 +struct buffer
  36 +{
  37 + char *start;
  38 + size_t length;
  39 +};
  40 +
  41 +struct v4l2_buffer H3_ReturnBuffer;
  42 +
  43 +// 设备号
  44 +static int fd = -1; // DEVICE NUMBER
  45 +
  46 +// 存储队列
  47 +static struct buffer *buffers;
  48 +static unsigned int n_buffers;
  49 +static struct v4l2_buffer buf;
  50 +//unsigned char* pucVideBuf[4]; // 视频BUFF空间地址
  51 +
  52 +/* Private functions declaration ---------------------------------------------*/
  53 +static int xioctl(int fh, int request, T_JZsdkReturnCode *arg)
  54 +{
  55 + int r;
  56 + do
  57 + {
  58 + r = ioctl(fh, request, arg);
  59 + } while (-1 == r );
  60 + return r;
  61 +}
  62 +
  63 +static T_JZsdkReturnCode stop_capturing()
  64 +{
  65 + enum v4l2_buf_type type;
  66 +
  67 + type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  68 + if (-1 == xioctl(fd, VIDIOC_STREAMOFF, &type))
  69 + {
  70 + JZSDK_LOG_ERROR("VddIDIOC_STREAMOFF");
  71 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  72 + }
  73 +
  74 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  75 +}
  76 +
  77 +static T_JZsdkReturnCode start_capturing()
  78 +{
  79 + unsigned int i;
  80 + enum v4l2_buf_type type;
  81 +
  82 + for (i = 0; i < n_buffers; ++i)
  83 + {
  84 + //struct v4l2_buffer buf;
  85 +
  86 + CLEAR(buf);
  87 + buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  88 + buf.memory = V4L2_MEMORY_MMAP; //内存映射
  89 + buf.index = i;
  90 +
  91 + //从缓存区中取出数据
  92 + if (-1 == xioctl(fd, VIDIOC_QBUF, &buf))
  93 + {
  94 + JZSDK_LOG_ERROR("VIDIOC_QBUF");
  95 + }
  96 + }
  97 +
  98 + type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  99 + if (-1 == xioctl(fd, VIDIOC_STREAMON, &type))
  100 + {
  101 + JZSDK_LOG_ERROR("VIDIOC_STREAMON");
  102 + }
  103 +
  104 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  105 +}
  106 +
  107 +static T_JZsdkReturnCode uninit_device()
  108 +{
  109 + unsigned int i;
  110 +
  111 + for (i = 0; i < n_buffers; ++i)
  112 + {
  113 + if (-1 == munmap(buffers[i].start, buffers[i].length))
  114 + {
  115 + JZSDK_LOG_ERROR("munmap");
  116 + }
  117 + }
  118 + free(buffers);
  119 +}
  120 +
  121 +static T_JZsdkReturnCode init_mmap()
  122 +{
  123 + //定义了缓存的数量,驱动会据此申请对应数量的视频缓存。多个缓存可以用于建立FIFO,来提高视频采集的效率。
  124 + struct v4l2_requestbuffers req;
  125 +
  126 + CLEAR(req);
  127 +
  128 + req.count = 4;
  129 + req.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  130 + req.memory = V4L2_MEMORY_MMAP;
  131 +
  132 + if (xioctl(fd, VIDIOC_REQBUFS, &req) == -1)
  133 + {
  134 + JZSDK_LOG_ERROR("VIDIOC_REQBUFS");
  135 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  136 + }
  137 +
  138 + if (req.count < 2)
  139 + {
  140 + JZSDK_LOG_ERROR("摄像头mmap的缓冲区内存不足");
  141 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  142 + }
  143 +
  144 + //分配req.count个 *Buffer长度的内存
  145 + buffers = calloc(req.count, sizeof(*buffers));
  146 +
  147 + if (!buffers)
  148 + {
  149 + JZSDK_LOG_ERROR("摄像头buffers注册内存失败");
  150 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  151 + }
  152 +
  153 + // 改变buffer数量 以改进视频质量
  154 + //映射所有的缓存
  155 + for (n_buffers = 0; n_buffers < req.count; ++n_buffers)
  156 + {
  157 + CLEAR(buf);
  158 +
  159 + buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  160 + buf.memory = V4L2_MEMORY_MMAP;
  161 + buf.index = n_buffers;
  162 +
  163 + if (-1 == xioctl(fd, VIDIOC_QUERYBUF, &buf))
  164 + {
  165 + JZSDK_LOG_ERROR("VIDIOC_QUERYBUF");
  166 + }
  167 +
  168 + buffers[n_buffers].length = buf.length;
  169 + buffers[n_buffers].start =
  170 + mmap(NULL /* start anywhere */,
  171 + buf.length,
  172 + PROT_READ | PROT_WRITE /* required */,
  173 + MAP_SHARED /* recommended */,
  174 + fd, buf.m.offset);
  175 +
  176 + if (MAP_FAILED == buffers[n_buffers].start)
  177 + {
  178 + JZSDK_LOG_ERROR("mmap");
  179 + }
  180 + }
  181 +
  182 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  183 +}
  184 +// 初始化 程序
  185 +static T_JZsdkReturnCode init_device()
  186 +{
  187 + struct v4l2_capability cap;
  188 + struct v4l2_format fmt;
  189 +
  190 + if (-1 == xioctl(fd, VIDIOC_QUERYCAP, &cap))
  191 + { //测试参数
  192 + JZSDK_LOG_ERROR("VIDIOC_QUERYCAP");
  193 + }
  194 +
  195 + if (!(cap.capabilities & V4L2_CAP_VIDEO_CAPTURE))
  196 + {
  197 + JZSDK_LOG_ERROR("no video capture device");
  198 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  199 + }
  200 +
  201 + if (!(cap.capabilities & V4L2_CAP_STREAMING))
  202 + {
  203 + JZSDK_LOG_ERROR("does not support streaming i/o");
  204 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  205 + }
  206 +
  207 + // 设置摄像头使用格式
  208 + memset(&fmt, 0, sizeof(struct v4l2_format));
  209 +
  210 + //描绘帧的格式
  211 + // fmt结构体 含有 tpye格式 和 fmt 联合体
  212 + // fmt 结构体
  213 + fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  214 + fmt.fmt.pix.width = CAMERA_RECORD_WIDTH;
  215 + fmt.fmt.pix.height = CAMERA_RECORD_HEIGHT;
  216 + fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_H264;
  217 + fmt.fmt.pix.field = V4L2_FIELD_INTERLACED;
  218 +
  219 + //写入格式参数
  220 + if (-1 == xioctl(fd, VIDIOC_S_FMT, &fmt)) //设置格式
  221 + {
  222 + JZSDK_LOG_ERROR("VIDIOC_S_FMT");
  223 + }
  224 +
  225 + /*
  226 + 修改: 加入帧数设置
  227 + */
  228 + struct v4l2_streamparm streamparm;
  229 + streamparm.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
  230 + streamparm.parm.capture.timeperframe.numerator = 1; //每1秒
  231 + streamparm.parm.capture.timeperframe.denominator = CAMERA_RECORD_FRAME; // 帧数
  232 +
  233 + streamparm.parm.capture.capturemode = 0; //低质量图片模式
  234 +
  235 + //写入帧数设置
  236 + if (-1 == xioctl(fd, VIDIOC_S_PARM, &streamparm))
  237 + {
  238 + JZSDK_LOG_ERROR("failed in setting the fps in camera!");
  239 + }
  240 + printf("camera is getting img-data in %d fps\n", streamparm.parm.capture.timeperframe.denominator);
  241 +
  242 + //初始化映射
  243 + T_JZsdkReturnCode ret = init_mmap();
  244 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  245 + {
  246 + return ret;
  247 + }
  248 +
  249 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  250 +}
  251 +
  252 +static T_JZsdkReturnCode close_device()
  253 +{
  254 + if (-1 == close(fd))
  255 + {
  256 + JZSDK_LOG_ERROR("close");
  257 + }
  258 +
  259 + fd = -1;
  260 +}
  261 +
  262 +static T_JZsdkReturnCode open_device()
  263 +{
  264 + //加上O_NONBLOCK会出现如下错误
  265 + // VIDIOC_DQBUF error 11, Resource temporarily unavailable
  266 + //fd = open(CAMERA_DEVICE_NAME, O_RDWR | O_NONBLOCK, 0);
  267 + fd = open(CAMERA_DEVICE_NAME, O_RDWR , 0);
  268 +
  269 + if (-1 == fd)
  270 + {
  271 + JZSDK_LOG_ERROR("打开摄像头设备错误");
  272 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  273 + }
  274 +
  275 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  276 +}
  277 +
  278 +T_JZsdkReturnCode V4l2_Camarainit(int *dev_fd)
  279 +{
  280 + T_JZsdkReturnCode ret;
  281 +
  282 + //1、打开摄像头
  283 + ret = open_device();
  284 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  285 + {
  286 + JZSDK_LOG_ERROR("打开摄像头失败");
  287 + return ret;
  288 + }
  289 +
  290 + //初始化程序
  291 + ret = init_device();
  292 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  293 + {
  294 + JZSDK_LOG_ERROR("初始化摄像头设备失败");
  295 + return ret;
  296 + }
  297 +
  298 + //开始抓取
  299 + ret = start_capturing();
  300 + if (ret != JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS)
  301 + {
  302 + JZSDK_LOG_ERROR("开始抓取失败");
  303 + return ret;
  304 + }
  305 +
  306 + *dev_fd = fd;
  307 +
  308 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  309 +}
  310 +
  311 +T_JZsdkReturnCode V4L2_CamaraUninit()
  312 +{
  313 +
  314 + //停止采集
  315 + stop_capturing();
  316 +
  317 + //释放设备
  318 + uninit_device();
  319 +
  320 + //关闭设备
  321 + close_device();
  322 +
  323 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  324 +}
  325 +
  326 +/***********
  327 + *
  328 + * 取出画面数据
  329 + *
  330 + * ************/
  331 +T_JZsdkReturnCode V4L2_CameraFrameRecord(char **RecordReturnBuffer, int *RecordReturnLength, int Audlength)
  332 +{
  333 + memset(&buf, 0, sizeof(struct v4l2_buffer));
  334 +
  335 + buf.type = V4L2_BUF_TYPE_VIDEO_CAPTURE; //每个结构体都需要设置type为这个参数要记住
  336 + buf.memory = V4L2_MEMORY_MMAP;
  337 +
  338 + //取出画面
  339 + if (-1 == xioctl(fd, VIDIOC_DQBUF, &buf))
  340 + {
  341 + JZSDK_LOG_ERROR("VIDIOC_DQBUF");
  342 + }
  343 +
  344 + //画面长度
  345 + *RecordReturnLength = buf.bytesused;
  346 +
  347 + //画面数组
  348 + *RecordReturnBuffer = (unsigned char*)malloc(*RecordReturnLength + Audlength);
  349 + if(RecordReturnBuffer == NULL)
  350 + {
  351 + JZSDK_LOG_ERROR("摄像头的视频回复帧内存注册错误");
  352 + }
  353 +
  354 + memcpy(*RecordReturnBuffer, buffers[buf.index].start, *RecordReturnLength);
  355 +
  356 + //放回画面内存
  357 + if (-1 == xioctl(fd, VIDIOC_QBUF, &buf))
  358 + {
  359 + JZSDK_LOG_ERROR("VIDIOC_QBUF");
  360 + }
  361 +
  362 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  363 +}
  1 +/**
  2 + ********************************************************************
  3 + * @file V4L2_Record.h
  4 + * V4L2_Record的头文件
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef V4L2_RECORD_H
  11 +#define V4L2_RECORD_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"
  15 +
  16 +#ifdef __cplusplus
  17 +extern "C" {
  18 +#endif
  19 +
  20 +/* Exported constants --------------------------------------------------------*/
  21 +/* 常亮定义*/
  22 +
  23 +/* Exported types ------------------------------------------------------------*/
  24 +
  25 +/* Exported functions --------------------------------------------------------*/
  26 +T_JZsdkReturnCode V4l2_Camarainit(int *dev_fd);
  27 +T_JZsdkReturnCode V4L2_CamaraUninit();
  28 +T_JZsdkReturnCode V4L2_CameraFrameRecord(char **RecordReturnBuffer, int *RecordReturnLength, int Audlength);
  29 +
  30 +
  31 +#ifdef __cplusplus
  32 +}
  33 +#endif
  34 +
  35 +#endif
  1 +
  2 +/* Includes ------------------------------------------------------------------*/
  3 +#include <fcntl.h>
  4 +#include <stdlib.h>
  5 +#include <pthread.h>
  6 +#include <stdio.h>
  7 +
  8 +// 自建库
  9 +#include "../VideoTranscode.h"
  10 +#include "JZsdkLib.h"
  11 +
  12 +/* Private constants ---------------------------------------------------------*/
  13 +#define FFMPEG_CMD_BUF_SIZE (256 + 256)
  14 +
  15 +//转码模式
  16 +#define H264_TRANSCODETO_JPG (1)
  17 +#define H264_TRAMSCODETO_MP4 (2)
  18 +#define H264_TRAMSCODETO_JPG_BURST (3)
  19 +
  20 +/* Private types -------------------------------------------------------------*/
  21 +static void *ffmpeg_VideoTranscodeTask(void *arg);
  22 +
  23 +static int tanscodemode = 0;
  24 +static int GPS_Receive_Date = 0;
  25 +static int GPS_Receive_Time = 0;
  26 +
  27 +
  28 +extern int VideoTranscode_Flag ; //视频转码标志位,off为转码完毕,on为转码完成
  29 +extern int PhotoTranscode_Flag ; //图片转码标志位,off为转码完毕,on为转码完成
  30 +
  31 +FILE *NUMBER_SET_fp;
  32 +char number_set[6];
  33 +
  34 +
  35 +//互斥锁
  36 +static pthread_mutex_t TranscodeLock = PTHREAD_MUTEX_INITIALIZER;
  37 +static pthread_cond_t TransCond = PTHREAD_COND_INITIALIZER;
  38 +
  39 +//转码服务函数
  40 +// 服务初始化函数
  41 +T_JZsdkReturnCode ffmpeg_VideoTranscode_Sever(void)
  42 +{
  43 +
  44 + pthread_t WriteDataTask;
  45 + pthread_attr_t task_attribute; //线程属性
  46 + pthread_attr_init(&task_attribute); //初始化线程属性
  47 + pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程分离属性
  48 + int opus_Protection = pthread_create(&WriteDataTask,&task_attribute,ffmpeg_VideoTranscodeTask,NULL); //线程
  49 + if(opus_Protection != 0)
  50 + {
  51 + JZSDK_LOG_ERROR("创建视频转码线程失败!");
  52 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  53 + }
  54 +
  55 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  56 +}
  57 +
  58 +/*
  59 +
  60 + 转码函数部分
  61 +
  62 +*/
  63 +
  64 +// 拍照转码函数
  65 +static T_JZsdkReturnCode ffmpeg_ShootPhoto_transcode()
  66 +{
  67 + //打开转码标志位
  68 + if (PhotoTranscode_Flag == JZ_FLAGCODE_ON)
  69 + {
  70 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  71 + }
  72 + PhotoTranscode_Flag = JZ_FLAGCODE_ON;
  73 +
  74 + //ffmpeg指令
  75 + char ffmpegCmdStr[FFMPEG_CMD_BUF_SIZE];
  76 + int ret;
  77 +
  78 + //地址拼接
  79 + char str1[40] = "/root/sdcard/DCIM/Photos/PSDK_PHOTO";
  80 + int str2 ;
  81 + char str3[6] = ".jpg";
  82 +
  83 + char *ffmpeg_ShootPhoto_CallBack_InPath = "/root/sdcard/DCIM/Photos/temp.h264";
  84 + char ffmpeg_ShootPhoto_CallBack_OutPath[FFMPEG_CMD_BUF_SIZE];
  85 +
  86 + //输出名字修改
  87 + NUMBER_SET_fp = fopen("/root/sdcard/DCIM/Photos/pthoto_number.txt","r+");
  88 + if(NUMBER_SET_fp == NULL)
  89 + {
  90 + NUMBER_SET_fp = fopen("/root/sdcard/DCIM/Photos/pthoto_number.txt","w+");
  91 + fwrite("00000", 1, 5, NUMBER_SET_fp);
  92 + fseek(NUMBER_SET_fp, 0, SEEK_SET);
  93 + }
  94 +
  95 + fread(number_set, 1, 5, NUMBER_SET_fp);
  96 + str2 = atoi(number_set) + 1;
  97 + snprintf(number_set, 6, "%05d", str2);
  98 +
  99 + fseek(NUMBER_SET_fp, 0, SEEK_SET);
  100 + fwrite(number_set, 1, 5, NUMBER_SET_fp);
  101 +
  102 + //snprintf(ffmpeg_ShootPhoto_CallBack_OutPath, 256, "%s_%d_%d%s", str1,GPS_Receive_Date,GPS_Receive_Time,str2);
  103 + snprintf(ffmpeg_ShootPhoto_CallBack_OutPath, 256, "%s_%s%s", str1, number_set, str3);
  104 +
  105 + fclose(NUMBER_SET_fp);
  106 + NUMBER_SET_fp = NULL;
  107 +
  108 + JZSDK_LOG_INFO("ffmpeg_ShootPhoto_CallBack_OutPath:%s",ffmpeg_ShootPhoto_CallBack_OutPath);
  109 + //JZSDK_LOG_INFO("%s",ffmpeg_ShootPhoto_CallBack_OutPath);
  110 +
  111 + //将h264照片转换为jpg格式
  112 + snprintf(ffmpegCmdStr, FFMPEG_CMD_BUF_SIZE,
  113 + "echo \"y\" | ffmpeg -i \"%s\" -y -f image2 -t 0.001 -s 1980*1080 \"%s\" >/dev/null 2>&1",
  114 + ffmpeg_ShootPhoto_CallBack_InPath,
  115 + ffmpeg_ShootPhoto_CallBack_OutPath);
  116 +
  117 + //JZSDK_LOG_INFO("ffmpegCmdStr:%s",ffmpegCmdStr);
  118 + JZSDK_LOG_INFO("录像保存位置:%s",ffmpeg_ShootPhoto_CallBack_OutPath);
  119 +
  120 +
  121 + JZsdk_RunSystemCmd(ffmpegCmdStr);
  122 +
  123 + PhotoTranscode_Flag = JZ_FLAGCODE_OFF;
  124 +}
  125 +
  126 +// 录像转码函数
  127 +static void ffmpeg_RecordVideo_transcode()
  128 +{
  129 + //打开转码标志位
  130 + if (VideoTranscode_Flag == JZ_FLAGCODE_ON)
  131 + {
  132 + return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
  133 + }
  134 + VideoTranscode_Flag = JZ_FLAGCODE_ON;
  135 +
  136 + //ffmpeg指令
  137 + char ffmpegCmdStr[FFMPEG_CMD_BUF_SIZE];
  138 +
  139 + char *ffmpeg_RecordVideo_InPath = "/root/sdcard/DCIM/Videos/temp.h264";
  140 + char ffmpeg_RecordVideo_OutPath[FFMPEG_CMD_BUF_SIZE];
  141 +
  142 +
  143 + //转码
  144 + char str1[40] = "/root/sdcard/DCIM/Videos/PSDK_VIDEO";
  145 + int str2;
  146 + char str3[10] = ".mp4";
  147 +
  148 + //输出名字修改
  149 + NUMBER_SET_fp = fopen("/root/sdcard/DCIM/Videos/video_number.txt","r+");
  150 + if(NUMBER_SET_fp == NULL)
  151 + {
  152 + NUMBER_SET_fp = fopen("/root/sdcard/DCIM/Videos/video_number.txt","w+");
  153 + fwrite("00000", 1, 5, NUMBER_SET_fp);
  154 + fseek(NUMBER_SET_fp, 0, SEEK_SET);
  155 + }
  156 +
  157 + fread(number_set, 1, 5, NUMBER_SET_fp);
  158 + str2 = atoi(number_set) + 1;
  159 + snprintf(number_set, 6, "%05d", str2);
  160 +
  161 + fseek(NUMBER_SET_fp, 0, SEEK_SET);
  162 + fwrite(number_set, 1, 5, NUMBER_SET_fp);
  163 +
  164 + //snprintf(ffmpeg_RecordVideo_OutPath, 256, "%s_%d_%d%s", str1,GPS_Receive_Date,GPS_Receive_Time,str2);
  165 + snprintf(ffmpeg_RecordVideo_OutPath, 256, "%s_%s%s", str1, number_set, str3);
  166 +
  167 + fclose(NUMBER_SET_fp);
  168 + NUMBER_SET_fp = NULL;
  169 +
  170 + //将h264视频转换为mp4格式
  171 + snprintf(ffmpegCmdStr, FFMPEG_CMD_BUF_SIZE,
  172 + "echo \"y\" | ffmpeg -i \"%s\" -y -vcodec copy \"%s\" >/dev/null 2>&1",
  173 + ffmpeg_RecordVideo_InPath,
  174 + ffmpeg_RecordVideo_OutPath);
  175 +
  176 + //ffmpeg -f h264 -i xxx.264 -vcodec copy xxx.mp4
  177 + //JZSDK_LOG_INFO("ffmpegCmdStr:%s",ffmpegCmdStr);
  178 +
  179 + JZSDK_LOG_INFO("录像保存位置:%s",ffmpeg_RecordVideo_OutPath);
  180 +
  181 + JZsdk_RunSystemCmd(ffmpegCmdStr);
  182 +
  183 + VideoTranscode_Flag = JZ_FLAGCODE_OFF;
  184 +
  185 +}
  186 +
  187 +
  188 +// 连拍转码函数
  189 +static void ffmpeg_ShootPhoroBurst_transcode()
  190 +{
  191 +
  192 + //ffmpeg指令
  193 + char ffmpegCmdStr[FFMPEG_CMD_BUF_SIZE];
  194 + char *ffmpeg_ShootPhoroBurst_InPath = "/root/sdcard/DCIM/Videos/temp.h264";
  195 + char ffmpeg_ShootPhoroBurst_OutPath[FFMPEG_CMD_BUF_SIZE];
  196 +
  197 +
  198 + //转码
  199 + char str1[40] = "/root/sdcard/DCIM/Photos/video_";
  200 + char str2[10] = ".mp4";
  201 +
  202 + //根据时间写名字
  203 + snprintf(ffmpeg_ShootPhoroBurst_OutPath, 256, "%s_%d_%d%s", str1,GPS_Receive_Date,GPS_Receive_Time,str2);
  204 +
  205 + //将h264照片转换为jpg格式
  206 + snprintf(ffmpegCmdStr, FFMPEG_CMD_BUF_SIZE,
  207 + "echo \"y\" | ffmpeg -i \"%s\" -r 25 -f image2 -t 0.001 -s 1280*720 \"%s\" >/dev/null 2>&1",
  208 + ffmpeg_ShootPhoroBurst_InPath,
  209 + ffmpeg_ShootPhoroBurst_OutPath);
  210 +
  211 + //ffmpeg -i output.mp4 -r 30 -f image2 foo-%05d.jpeg
  212 + JZSDK_LOG_INFO("录像保存位置:%s",ffmpeg_ShootPhoroBurst_OutPath);
  213 +
  214 +
  215 + JZsdk_RunSystemCmd(ffmpegCmdStr);
  216 +
  217 +}
  218 +
  219 +/*
  220 +
  221 + 转码解锁函数
  222 +
  223 +*/
  224 +
  225 +//拍照转码解锁函数
  226 +void ffmpeg_H264_tanscodeto(int mode)
  227 +{
  228 + tanscodemode = mode;
  229 +
  230 + pthread_mutex_unlock(&TranscodeLock);
  231 +}
  232 +
  233 +/*
  234 +
  235 + gps时间接受函数
  236 +
  237 +*/
  238 +void ffmpeg_tanscode_DateAndTime_Receive(int date,int time)
  239 +{
  240 + GPS_Receive_Date = date;
  241 + GPS_Receive_Time = time;
  242 +}
  243 +
  244 +
  245 +//转码线程
  246 +static void *ffmpeg_VideoTranscodeTask(void *arg)
  247 +{
  248 +
  249 +
  250 + while (1) {
  251 +
  252 + pthread_mutex_lock(&TranscodeLock);
  253 +
  254 + JZSDK_LOG_INFO("s_VideoTranscode_Mutex解锁线程");
  255 +
  256 + //如果为拍照转码
  257 + if(tanscodemode == H264_TRANSCODETO_JPG)
  258 + {
  259 + // //ffmpeg_CameraTransLock(true);
  260 + ffmpeg_ShootPhoto_transcode();
  261 + //ffmpeg_CameraTransLock(false);
  262 + }
  263 +
  264 + //如果为录像转码
  265 + if(tanscodemode == H264_TRAMSCODETO_MP4)
  266 + {
  267 + //ffmpeg_CameraTransLock(true);
  268 + ffmpeg_RecordVideo_transcode();
  269 + //ffmpeg_CameraTransLock(false);
  270 +
  271 + }
  272 +
  273 + // //如果为连拍转码
  274 + // if(tanscodemode == H264_TRAMSCODETO_JPG_BURST)
  275 + // {
  276 + // ffmpeg_ShootPhoroBurst_transcode();
  277 + // }
  278 +
  279 + tanscodemode = JZ_FLAGCODE_OFF;
  280 + }
  281 +}
  282 +
  1 +
  2 +/* Includes ------------------------------------------------------------------*/
  3 +#include <fcntl.h>
  4 +#include <stdlib.h>
  5 +
  6 +// 自建库
  7 +#include "JZsdkLib.h"
  8 +
  9 +
  10 +int VideoTranscode_Flag = JZ_FLAGCODE_OFF; //视频转码标志位,off为转码完毕,on为转码完成
  11 +int PhotoTranscode_Flag = JZ_FLAGCODE_ON; //图片转码标志位,off为转码完毕,on为转码完成
  1 +/**
  2 + ********************************************************************
  3 + * @file VideoTranscode.h
  4 + * 用于转码拍下来的照片以及视频
  5 + *
  6 + *********************************************************************
  7 + */
  8 +
  9 +/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
  10 +#ifndef VIDEOTRANSCODE_H
  11 +#define VIDEOTRANSCODE_H
  12 +
  13 +/* Includes ------------------------------------------------------------------*/
  14 +
  15 +#ifdef __cplusplus
  16 +extern "C" {
  17 +#endif
  18 +
  19 +/* Exported constants --------------------------------------------------------*/
  20 +/* 常亮定义*/
  21 +
  22 +
  23 +/* Exported types ------------------------------------------------------------*/
  24 +
  25 +
  26 +/* Exported functions --------------------------------------------------------*/
  27 +void ffmpeg_H264_tanscodeto(int mode);
  28 +
  29 +
  30 +
  31 +#ifdef __cplusplus
  32 +}
  33 +#endif
  34 +
  35 +#endif // TEST_PAYLOAD_CAM_EMU_MEDIA_H
  36 +/************************ (C) COPYRIGHT DJI Innovations *******END OF FILE******/
@@ -24,6 +24,11 @@ static void *Gimbal_H3_H10_Motor_control(void *arg); @@ -24,6 +24,11 @@ static void *Gimbal_H3_H10_Motor_control(void *arg);
24 static int H3_H10_Read_MotorAdjustmentPitch(void); 24 static int H3_H10_Read_MotorAdjustmentPitch(void);
25 static void H3_H10_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch); 25 static void H3_H10_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch);
26 26
  27 +int Gimbal_H3_H10_CheckStatus_GimbalFineTuning(int *AdjustmentPitch)
  28 +{
  29 + *AdjustmentPitch = H3_H10_motor_precise_adjustment_pitch;
  30 +}
  31 +
27 void Gimbal_H3_H10_init_motor(void) 32 void Gimbal_H3_H10_init_motor(void)
28 { 33 {
29 H3_H10_motor_precise_adjustment_pitch = H3_H10_Read_MotorAdjustmentPitch();//获取微调角度-读文件获取 34 H3_H10_motor_precise_adjustment_pitch = H3_H10_Read_MotorAdjustmentPitch();//获取微调角度-读文件获取
@@ -33,45 +38,12 @@ void Gimbal_H3_H10_init_motor(void) @@ -33,45 +38,12 @@ void Gimbal_H3_H10_init_motor(void)
33 38
34 int Gimbal_H3_H10_set_angle(int angle) 39 int Gimbal_H3_H10_set_angle(int angle)
35 { 40 {
36 - pthread_t MOTOR_task;  
37 - pthread_attr_t task_attribute; //线程属性  
38 - pthread_attr_init(&task_attribute); //初始化线程属性  
39 - pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程属性  
40 -  
41 - int *arg = (int*) malloc(sizeof(int)); // 分配动态内存  
42 - *arg = angle; // 将参数值保存到动态内存中  
43 -  
44 - int angle_ret = pthread_create(&MOTOR_task,&task_attribute,Gimbal_H3_H10_Motor_control,arg); //TTS mobie  
45 - if(angle_ret != 0)  
46 - {  
47 - printf("创建motor线程失败!\n");  
48 - return -1;  
49 - }  
50 - else  
51 - {  
52 - printf("创建motor线程成功\n");  
53 - }  
54 -  
55 - return 0;  
56 -}  
57 -  
58 -  
59 -//控制电机线程  
60 -static void *Gimbal_H3_H10_Motor_control(void *arg)  
61 -{  
62 - //传入的角度 -900~0  
63 - int angle = *(int*)arg;  
64 -  
65 printf("H3_H10_angle:%d\n",angle); 41 printf("H3_H10_angle:%d\n",angle);
66 42
67 - angle = angle + H3_H10_motor_precise_adjustment_pitch;  
68 -  
69 //每43.5对饮20度 43 //每43.5对饮20度
70 int num = 200 -angle*195/900; 44 int num = 200 -angle*195/900;
71 45
72 pwmWrite(MOTOR,num); 46 pwmWrite(MOTOR,num);
73 -  
74 - free(arg); // 在线程函数中释放动态内存  
75 } 47 }
76 48
77 //微调向上 49 //微调向上
@@ -24,6 +24,7 @@ extern "C" { @@ -24,6 +24,7 @@ extern "C" {
24 /* Exported functions --------------------------------------------------------*/ 24 /* Exported functions --------------------------------------------------------*/
25 int Gimbal_H3_H10_set_angle(int angle); 25 int Gimbal_H3_H10_set_angle(int angle);
26 void Gimbal_H3_H10_init_motor(void); 26 void Gimbal_H3_H10_init_motor(void);
  27 +int Gimbal_H3_H10_CheckStatus_GimbalFineTuning(int *AdjustmentPitch);
27 28
28 29
29 30
@@ -41,33 +41,6 @@ T_JZsdkReturnCode Gimbal_H3_H150ST_init_motor() @@ -41,33 +41,6 @@ T_JZsdkReturnCode Gimbal_H3_H150ST_init_motor()
41 //设置角度 41 //设置角度
42 int H3_H150ST_Gimbal_SetAngle(int angle) 42 int H3_H150ST_Gimbal_SetAngle(int angle)
43 { 43 {
44 - pthread_t MOTOR_task;  
45 - pthread_attr_t task_attribute; //线程属性  
46 - pthread_attr_init(&task_attribute); //初始化线程属性  
47 - pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程属性  
48 -  
49 - int *arg = (int*) malloc(sizeof(int)); // 分配动态内存  
50 - *arg = angle; // 将参数值保存到动态内存中  
51 -  
52 - int angle_ret = pthread_create(&MOTOR_task,&task_attribute, H3_H150ST_Motor_control,arg); //TTS mobie  
53 - if(angle_ret != 0)  
54 - {  
55 - printf("创建motor线程失败!\n");  
56 - return -1;  
57 - }  
58 -  
59 - return 0;  
60 -}  
61 -  
62 -//发送电机pwm值 线程  
63 -static void *H3_H150ST_Motor_control(void *arg)  
64 -{  
65 - //传入的角度 -900~0  
66 - int angle = *(int*)arg;  
67 -  
68 - //调整云台微调值  
69 - angle = angle + H3_H150ST_motor_precise_adjustment_pitch;  
70 -  
71 //调整为PWM值 1000~2000 44 //调整为PWM值 1000~2000
72 int angle_PWM = 0; 45 int angle_PWM = 0;
73 46
@@ -86,10 +59,10 @@ static void *H3_H150ST_Motor_control(void *arg) @@ -86,10 +59,10 @@ static void *H3_H150ST_Motor_control(void *arg)
86 send_angle[1]=(char )(angle_PWM); 59 send_angle[1]=(char )(angle_PWM);
87 send_angle[2]=(char )(angle_PWM>>8); 60 send_angle[2]=(char )(angle_PWM>>8);
88 Gimbal_H3_H150ST_UartDeal_UartSend(send_angle, 4); 61 Gimbal_H3_H150ST_UartDeal_UartSend(send_angle, 4);
89 -  
90 - free(arg); // 在线程函数中释放动态内存  
91 } 62 }
92 63
  64 +
  65 +
93 //H150ST云台范围 66 //H150ST云台范围
94 T_JZsdkReturnCode H3_H150ST_SetGimbalRange(int Range) 67 T_JZsdkReturnCode H3_H150ST_SetGimbalRange(int Range)
95 { 68 {
1 #include <stdio.h> 1 #include <stdio.h>
2 #include <string.h> 2 #include <string.h>
3 #include <stdlib.h> 3 #include <stdlib.h>
  4 +#include <pthread.h>
4 5
5 #include "version_choose.h" 6 #include "version_choose.h"
6 #include "Gimbal_H3/Gimbal_H3.h" 7 #include "Gimbal_H3/Gimbal_H3.h"
@@ -32,12 +33,17 @@ static int Gimbal_RealPitchAngle = 0; @@ -32,12 +33,17 @@ static int Gimbal_RealPitchAngle = 0;
32 33
33 static int Gimbal_LinkageNum; 34 static int Gimbal_LinkageNum;
34 35
  36 +static int Gimbal_SendAngleTask_Init();
  37 +
35 /* 38 /*
36 * Gimbal模块初始化 39 * Gimbal模块初始化
37 */ 40 */
38 41
39 int Gimbal_Init() 42 int Gimbal_Init()
40 { 43 {
  44 + //发送角度线程初始化
  45 + Gimbal_SendAngleTask_Init();
  46 +
41 if (DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T) 47 if (DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T)
42 { 48 {
43 Gimbal_H3_H150ST_init_motor(); 49 Gimbal_H3_H150ST_init_motor();
@@ -88,13 +94,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -88,13 +94,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
88 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 94 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
89 } 95 }
90 96
91 - //2、发送到H3控制云台函数  
92 - H3_H150ST_Gimbal_SetAngle(angle);  
93 -  
94 - //3、记录全球云台值  
95 - Gimbal_PitchAngle = angle;  
96 -  
97 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
98 } 97 }
99 else if (DEVICE_VERSION == JZ_H10) 98 else if (DEVICE_VERSION == JZ_H10)
100 { 99 {
@@ -106,13 +105,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -106,13 +105,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
106 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 105 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
107 } 106 }
108 107
109 - //2、发送到H3_H10控制云台函数  
110 - Gimbal_H3_H10_set_angle(angle);  
111 -  
112 - //3、记录全球云台值  
113 - Gimbal_PitchAngle = angle;  
114 -  
115 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
116 } 108 }
117 else if (DEVICE_VERSION == JZ_H10T) 109 else if (DEVICE_VERSION == JZ_H10T)
118 { 110 {
@@ -123,13 +115,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -123,13 +115,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
123 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 115 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
124 } 116 }
125 117
126 - //2、发送到V3S_H10T控制云台函数  
127 - Gimbal_V3S_H10T_set_angle(angle);  
128 -  
129 - //3、记录全球云台值  
130 - Gimbal_PitchAngle = angle;  
131 -  
132 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
133 } 118 }
134 else if (DEVICE_VERSION == JZ_U3) 119 else if (DEVICE_VERSION == JZ_U3)
135 { 120 {
@@ -140,13 +125,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -140,13 +125,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
140 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 125 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
141 } 126 }
142 127
143 - //2、发送到V3S_U3控制云台函数  
144 - Gimbal_V3S_U3_set_angle(angle);  
145 -  
146 - //3、记录全球云台值  
147 - Gimbal_PitchAngle = angle;  
148 -  
149 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
150 } 128 }
151 else if (DEVICE_VERSION == TF_A1) 129 else if (DEVICE_VERSION == TF_A1)
152 { 130 {
@@ -157,33 +135,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -157,33 +135,6 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
157 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 135 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
158 } 136 }
159 137
160 - //2、记录全局云台值  
161 - Gimbal_PitchAngle = angle;  
162 -  
163 - //3、叠加飞机角度和微调角度  
164 - Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + Get_V3S_TFA1_motor_precise_adjustment_pitch();  
165 -  
166 - //5、修正angle值  
167 - if (Gimbal_RealPitchAngle < -900)  
168 - {  
169 - angle = -900;  
170 - }  
171 - else if (Gimbal_RealPitchAngle > 0)  
172 - {  
173 - angle = 0;  
174 - }  
175 - else  
176 - {  
177 - angle = Gimbal_RealPitchAngle;  
178 - }  
179 -  
180 - //6、发送到V3S_TFA1控制云台函数  
181 - Gimbal_V3S_TFA1_set_angle(angle);  
182 -  
183 - //7、发送角度到飞机  
184 - Gimbal_ReplyPitchToUAV(Gimbal_PitchAngle);  
185 -  
186 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
187 } 138 }
188 else if (DEVICE_VERSION == JZ_H1T) 139 else if (DEVICE_VERSION == JZ_H1T)
189 { 140 {
@@ -194,16 +145,16 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle) @@ -194,16 +145,16 @@ T_JZsdkReturnCode Gimbal_Set_PitchAngle(int angle)
194 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH; 145 return JZ_ERRORCODE_GIMBAL_INVALID_PITCH;
195 } 146 }
196 147
197 - //2、发送到V3S_U3控制云台函数  
198 - Gimbal_V3S_H1T_set_PitchAngle(angle);  
199 -  
200 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
201 } 148 }
202 149
203 else 150 else
204 { 151 {
205 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 152 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
206 } 153 }
  154 +
  155 + Gimbal_PitchAngle = angle;
  156 +
  157 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
207 } 158 }
208 159
209 //设置云台航向角度 160 //设置云台航向角度
@@ -494,23 +445,20 @@ T_JZsdkReturnCode Gimbal_Get_PitchFineTuning() @@ -494,23 +445,20 @@ T_JZsdkReturnCode Gimbal_Get_PitchFineTuning()
494 T_JZsdkReturnCode Gimbal_Obtain_Gimbal_Pitch(int Pitch) 445 T_JZsdkReturnCode Gimbal_Obtain_Gimbal_Pitch(int Pitch)
495 { 446 {
496 447
497 -//目前只有A1修改了真实角度值  
498 - if (DEVICE_VERSION == TF_A1) 448 + //目前 U3和 H1T会接受到云台返回值
  449 + if (DEVICE_VERSION == JZ_U3)
499 { 450 {
500 - //如果接受到的实际角度 - 飞机角度 + 微调角度 > 900 就不处理,避免角度左脚踩右脚上天  
501 - if ( (Pitch - Gimbal_UavSelfPitch + Get_V3S_TFA1_motor_precise_adjustment_pitch()) >900)  
502 - {  
503 - //Gimbal_PitchAngle不变  
504 - return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;  
505 - }  
506 - else  
507 - {  
508 - Gimbal_PitchAngle = (Pitch + Gimbal_UavSelfPitch - Get_V3S_TFA1_motor_precise_adjustment_pitch());  
509 - } 451 + //不处理,避免出现什么问题
510 } 452 }
  453 + else if (DEVICE_VERSION == JZ_H1T)
511 { 454 {
512 Gimbal_PitchAngle = Pitch; 455 Gimbal_PitchAngle = Pitch;
513 } 456 }
  457 + else
  458 + {
  459 + //不处理,避免出现什么问题
  460 + }
  461 +
514 } 462 }
515 463
516 /************************************************************** 464 /**************************************************************
@@ -530,9 +478,6 @@ T_JZsdkReturnCode Gimbal_PitchSelfangleMode(int Pitch) @@ -530,9 +478,6 @@ T_JZsdkReturnCode Gimbal_PitchSelfangleMode(int Pitch)
530 478
531 Gimbal_UavSelfPitch = Pitch; 479 Gimbal_UavSelfPitch = Pitch;
532 480
533 - //设置云台角度  
534 - Gimbal_Set_PitchAngle(Gimbal_PitchAngle);  
535 -  
536 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 481 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
537 482
538 } 483 }
@@ -541,7 +486,7 @@ T_JZsdkReturnCode Gimbal_PitchSelfangleMode(int Pitch) @@ -541,7 +486,7 @@ T_JZsdkReturnCode Gimbal_PitchSelfangleMode(int Pitch)
541 T_JZsdkReturnCode Gimbal_PitchScaleMode(int value) 486 T_JZsdkReturnCode Gimbal_PitchScaleMode(int value)
542 { 487 {
543 int angle; 488 int angle;
544 - if (DEVICE_VERSION == TF_A1) 489 + if (DEVICE_VERSION == TF_A1 || DEVICE_VERSION == JZ_U3 || DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T)
545 { 490 {
546 //0~100 转化为 -900~0 491 //0~100 转化为 -900~0
547 angle = value*9 -900; 492 angle = value*9 -900;
@@ -561,7 +506,9 @@ T_JZsdkReturnCode Gimbal_PitchRotationMode(int value) @@ -561,7 +506,9 @@ T_JZsdkReturnCode Gimbal_PitchRotationMode(int value)
561 { 506 {
562 int angle; 507 int angle;
563 508
564 - if (DEVICE_VERSION == TF_A1) 509 + //JZSDK_LOG_DEBUG("拨轮控制");
  510 +
  511 + if (DEVICE_VERSION == TF_A1 || DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T )
565 { 512 {
566 angle = Gimbal_PitchAngle + value; 513 angle = Gimbal_PitchAngle + value;
567 if (angle > 0) 514 if (angle > 0)
@@ -594,7 +541,7 @@ T_JZsdkReturnCode Gimbal_ReplyPitchToUAV(int angle) @@ -594,7 +541,7 @@ T_JZsdkReturnCode Gimbal_ReplyPitchToUAV(int angle)
594 { 541 {
595 int value; 542 int value;
596 543
597 - if (DEVICE_VERSION == TF_A1) 544 + if (DEVICE_VERSION == TF_A1 || DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T )
598 { 545 {
599 //-900~0 转回 0~100 546 //-900~0 转回 0~100
600 value = (angle+ 900)/9; 547 value = (angle+ 900)/9;
@@ -608,4 +555,204 @@ T_JZsdkReturnCode Gimbal_ReplyPitchToUAV(int angle) @@ -608,4 +555,204 @@ T_JZsdkReturnCode Gimbal_ReplyPitchToUAV(int angle)
608 555
609 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 556 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
610 557
  558 +}
  559 +
  560 +
  561 +
  562 +
  563 +
  564 +
  565 +
  566 +
  567 +//设置云台俯仰角度
  568 +static T_JZsdkReturnCode Gimbal_Set_RealPitchAngle(int angle)
  569 +{
  570 + printf("设置真实俯仰角度\n");
  571 + if (DEVICE_VERSION == JZ_H150S || DEVICE_VERSION == JZ_H150T)
  572 + {
  573 + //获取飞机微调角度
  574 + int AdjustmentPitch;
  575 + Gimbal_H3_H150ST_CheckStatus_GimbalFineTuning(&AdjustmentPitch);
  576 +
  577 + //叠加飞机角度和微调角度
  578 + Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + AdjustmentPitch;
  579 +
  580 + //修正angle值
  581 + if (Gimbal_RealPitchAngle < -900)
  582 + {
  583 + angle = -900;
  584 + }
  585 + else if (Gimbal_RealPitchAngle > 0)
  586 + {
  587 + angle = 0;
  588 + }
  589 + else
  590 + {
  591 + angle = Gimbal_RealPitchAngle;
  592 + }
  593 +
  594 + //发送到云台函数
  595 + H3_H150ST_Gimbal_SetAngle(angle);
  596 +
  597 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  598 +
  599 + }
  600 + else if (DEVICE_VERSION == JZ_H10)
  601 + {
  602 + //获取飞机微调角度
  603 + int AdjustmentPitch;
  604 + Gimbal_H3_H10_CheckStatus_GimbalFineTuning(&AdjustmentPitch);
  605 +
  606 + //叠加飞机角度和微调角度
  607 + Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + AdjustmentPitch;
  608 +
  609 + //修正angle值
  610 + if (Gimbal_RealPitchAngle < -600)
  611 + {
  612 + angle = -600;
  613 + }
  614 + else if (Gimbal_RealPitchAngle > 0)
  615 + {
  616 + angle = 0;
  617 + }
  618 + else
  619 + {
  620 + angle = Gimbal_RealPitchAngle;
  621 + }
  622 +
  623 + //发送到云台函数
  624 + Gimbal_H3_H10_set_angle(angle);
  625 +
  626 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  627 +
  628 + }
  629 + else if (DEVICE_VERSION == JZ_H10T)
  630 + {
  631 + //获取飞机微调角度
  632 + int AdjustmentPitch;
  633 + Gimbal_V3S_H10T_CheckStatus_GimbalFineTuning(&AdjustmentPitch);
  634 +
  635 + //叠加飞机角度和微调角度
  636 + Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + AdjustmentPitch;
  637 +
  638 + //修正angle值
  639 + if (Gimbal_RealPitchAngle < -600)
  640 + {
  641 + angle = -600;
  642 + }
  643 + else if (Gimbal_RealPitchAngle > 0)
  644 + {
  645 + angle = 0;
  646 + }
  647 + else
  648 + {
  649 + angle = Gimbal_RealPitchAngle;
  650 + }
  651 +
  652 + //发送到云台函数
  653 + Gimbal_V3S_H10T_set_angle(angle);
  654 +
  655 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  656 + }
  657 + else if (DEVICE_VERSION == JZ_U3)
  658 + {
  659 + //获取飞机微调角度
  660 + int AdjustmentPitch;
  661 + Gimbal_V3S_U3_CheckStatus_GimbalFineTuning(&AdjustmentPitch);
  662 +
  663 + //叠加飞机角度和微调角度
  664 + Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + AdjustmentPitch;
  665 +
  666 + //修正angle值
  667 + if (Gimbal_RealPitchAngle < -900)
  668 + {
  669 + angle = -900;
  670 + }
  671 + else if (Gimbal_RealPitchAngle > 0)
  672 + {
  673 + angle = 0;
  674 + }
  675 + else
  676 + {
  677 + angle = Gimbal_RealPitchAngle;
  678 + }
  679 +
  680 + //发送到控制云台函数
  681 + Gimbal_V3S_U3_set_angle(angle);
  682 +
  683 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  684 + }
  685 + else if (DEVICE_VERSION == TF_A1)
  686 + {
  687 + //叠加飞机角度和微调角度
  688 + Gimbal_RealPitchAngle = angle - Gimbal_UavSelfPitch + Get_V3S_TFA1_motor_precise_adjustment_pitch();
  689 +
  690 + //修正angle值
  691 + if (Gimbal_RealPitchAngle < -900)
  692 + {
  693 + angle = -900;
  694 + }
  695 + else if (Gimbal_RealPitchAngle > 0)
  696 + {
  697 + angle = 0;
  698 + }
  699 + else
  700 + {
  701 + angle = Gimbal_RealPitchAngle;
  702 + }
  703 +
  704 + //发送到V3S_TFA1控制云台函数
  705 + Gimbal_V3S_TFA1_set_angle(angle);
  706 +
  707 + return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  708 + }
  709 + else if (DEVICE_VERSION == JZ_H1T)
  710 + {
  711 +
  712 + }
  713 +
  714 +}
  715 +
  716 +
  717 +
  718 +/**************************
  719 + *
  720 + *
  721 + * 云台角度发送线程
  722 + *
  723 + *
  724 + * ***************************/
  725 +static void *Gimbal_SendAngleTask(void *arg)
  726 +{
  727 + int angle;
  728 + int UAV_self_angle;
  729 +
  730 + while (1)
  731 + {
  732 +
  733 + if (Gimbal_PitchAngle != angle || Gimbal_UavSelfPitch != UAV_self_angle)
  734 + {
  735 + angle = Gimbal_PitchAngle;
  736 + UAV_self_angle = Gimbal_UavSelfPitch;
  737 + Gimbal_Set_RealPitchAngle(angle);
  738 +
  739 + }
  740 +
  741 + delayMs(1);
  742 + }
  743 +
  744 +}
  745 +
  746 +static int Gimbal_SendAngleTask_Init()
  747 +{
  748 + pthread_t WriteDataTask;
  749 + pthread_attr_t task_attribute; //线程属性
  750 + pthread_attr_init(&task_attribute); //初始化线程属性
  751 + pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程分离属性
  752 + int opus_Protection = pthread_create(&WriteDataTask,&task_attribute,Gimbal_SendAngleTask,NULL); //线程
  753 + if(opus_Protection != 0)
  754 + {
  755 + JZSDK_LOG_ERROR("创建控件写入线程失败!");
  756 + return -1;
  757 + }
611 } 758 }
@@ -25,6 +25,11 @@ static void *Gimbal_V3S_H10T_Motor_control(void *arg); @@ -25,6 +25,11 @@ static void *Gimbal_V3S_H10T_Motor_control(void *arg);
25 static int V3S_H10T_Read_MotorAdjustmentPitch(void); 25 static int V3S_H10T_Read_MotorAdjustmentPitch(void);
26 static void V3S_H10T_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch); 26 static void V3S_H10T_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch);
27 27
  28 +int Gimbal_V3S_H10T_CheckStatus_GimbalFineTuning(int *AdjustmentPitch)
  29 +{
  30 + *AdjustmentPitch = V3S_H10T_motor_precise_adjustment_pitch;
  31 +}
  32 +
28 void Gimbal_V3S_H10T_init_motor(void) 33 void Gimbal_V3S_H10T_init_motor(void)
29 { 34 {
30 V3S_H10T_motor_precise_adjustment_pitch = V3S_H10T_Read_MotorAdjustmentPitch();//获取微调角度-读文件获取 35 V3S_H10T_motor_precise_adjustment_pitch = V3S_H10T_Read_MotorAdjustmentPitch();//获取微调角度-读文件获取
@@ -34,35 +39,7 @@ void Gimbal_V3S_H10T_init_motor(void) @@ -34,35 +39,7 @@ void Gimbal_V3S_H10T_init_motor(void)
34 39
35 int Gimbal_V3S_H10T_set_angle(int angle) 40 int Gimbal_V3S_H10T_set_angle(int angle)
36 { 41 {
37 - pthread_t MOTOR_task;  
38 - pthread_attr_t task_attribute; //线程属性  
39 - pthread_attr_init(&task_attribute); //初始化线程属性  
40 - pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程属性  
41 -  
42 - int *arg = (int*) malloc(sizeof(int)); // 分配动态内存  
43 - *arg = angle; // 将参数值保存到动态内存中  
44 -  
45 - int angle_ret = pthread_create(&MOTOR_task,&task_attribute,Gimbal_V3S_H10T_Motor_control,arg); //TTS mobie  
46 - if(angle_ret != 0)  
47 - {  
48 - printf("创建motor线程失败!\n");  
49 - return -1;  
50 - }  
51 - else  
52 - {  
53 - printf("创建motor线程成功\n");  
54 - }  
55 -  
56 - return 0;  
57 -}  
58 -  
59 -  
60 -//控制电机线程  
61 -static void *Gimbal_V3S_H10T_Motor_control(void *arg)  
62 -{  
63 //传入的角度 -600~0 42 //传入的角度 -600~0
64 - int angle = *(int*)arg;  
65 -  
66 int PWM_num = 0; 43 int PWM_num = 0;
67 44
68 printf("V3S_H10T_angle:%d\n",angle); 45 printf("V3S_H10T_angle:%d\n",angle);
@@ -94,10 +71,9 @@ static void *Gimbal_V3S_H10T_Motor_control(void *arg) @@ -94,10 +71,9 @@ static void *Gimbal_V3S_H10T_Motor_control(void *arg)
94 } 71 }
95 72
96 Ircut_PWM_control(PWM_num); 73 Ircut_PWM_control(PWM_num);
97 -  
98 - free(arg); // 在线程函数中释放动态内存  
99 } 74 }
100 75
  76 +
101 //微调向上 77 //微调向上
102 void V3S_H10T_gimbal_up(void) 78 void V3S_H10T_gimbal_up(void)
103 { 79 {
@@ -24,6 +24,7 @@ extern "C" { @@ -24,6 +24,7 @@ extern "C" {
24 /* Exported functions --------------------------------------------------------*/ 24 /* Exported functions --------------------------------------------------------*/
25 int Gimbal_V3S_H10T_set_angle(int angle); 25 int Gimbal_V3S_H10T_set_angle(int angle);
26 void Gimbal_V3S_H10T_init_motor(void); 26 void Gimbal_V3S_H10T_init_motor(void);
  27 +int Gimbal_V3S_H10T_CheckStatus_GimbalFineTuning(int *AdjustmentPitch);
27 28
28 29
29 30
@@ -21,7 +21,6 @@ @@ -21,7 +21,6 @@
21 21
22 static int V3S_TFA1_motor_precise_adjustment_pitch =0;//默认微调值为0 22 static int V3S_TFA1_motor_precise_adjustment_pitch =0;//默认微调值为0
23 23
24 -static void *Gimbal_V3S_TFA1_Motor_control(void *arg);  
25 static int V3S_TFA1_Read_MotorAdjustmentPitch(void); 24 static int V3S_TFA1_Read_MotorAdjustmentPitch(void);
26 static void V3S_TFA1_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch); 25 static void V3S_TFA1_Write_MotorAdjustmentPitch(int MotorAdjustmentPitch);
27 26
@@ -55,62 +54,9 @@ static int Gimbal_TFA1_sendAngle(int angle) @@ -55,62 +54,9 @@ static int Gimbal_TFA1_sendAngle(int angle)
55 int Gimbal_V3S_TFA1_set_angle(int angle) 54 int Gimbal_V3S_TFA1_set_angle(int angle)
56 { 55 {
57 Gimbal_TFA1_sendAngle(angle); 56 Gimbal_TFA1_sendAngle(angle);
58 -  
59 - // pthread_t MOTOR_task;  
60 - // pthread_attr_t task_attribute; //线程属性  
61 - // pthread_attr_init(&task_attribute); //初始化线程属性  
62 - // pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程属性  
63 -  
64 - // int *arg = (int*) malloc(sizeof(int)); // 分配动态内存  
65 -  
66 - // *arg = angle; // 将参数值保存到动态内存中  
67 -  
68 - // int angle_ret = pthread_create(&MOTOR_task,&task_attribute,Gimbal_V3S_TFA1_Motor_control,arg); //TTS mobie  
69 - // if(angle_ret != 0)  
70 - // {  
71 - // printf("创建motor线程失败!\n");  
72 - // return -1;  
73 - // }  
74 - // else  
75 - // {  
76 - // printf("创建motor线程成功\n");  
77 - // }  
78 -  
79 - // return 0;  
80 } 57 }
81 58
82 59
83 -//控制电机线程  
84 -static void *Gimbal_V3S_TFA1_Motor_control(void *arg)  
85 -{  
86 - //传入的角度 -900~0  
87 - int angle = *(int*)arg;  
88 -  
89 - //微调角度值 移动到上一步  
90 - //angle = angle + V3S_TFA1_motor_precise_adjustment_pitch;  
91 -  
92 - printf("V3S_TFA1_RealAngle:%d\n",angle);  
93 -  
94 - if(angle >= 0 )  
95 - {  
96 - angle = 0;  
97 - }  
98 - else if(angle <= -900)  
99 - {  
100 - angle = -900;  
101 - }  
102 -  
103 - else if( (angle > -900) && (angle < 0) )  
104 - {  
105 - //angle不变  
106 - }  
107 -  
108 - //发送角度给串口2  
109 - JZsdk_Uart_Send_SetGimbalPitch(UART_DEV_2, angle);  
110 -  
111 - free(arg); // 在线程函数中释放动态内存  
112 -}  
113 -  
114 //云台微调 60 //云台微调
115 T_JZsdkReturnCode Gimbal_V3S_TFA1_set_PitchFineTuning(int Pitch) 61 T_JZsdkReturnCode Gimbal_V3S_TFA1_set_PitchFineTuning(int Pitch)
116 { 62 {
@@ -34,38 +34,7 @@ void Gimbal_V3S_U3_init_motor(void) @@ -34,38 +34,7 @@ void Gimbal_V3S_U3_init_motor(void)
34 34
35 int Gimbal_V3S_U3_set_angle(int angle) 35 int Gimbal_V3S_U3_set_angle(int angle)
36 { 36 {
37 - pthread_t MOTOR_task;  
38 - pthread_attr_t task_attribute; //线程属性  
39 - pthread_attr_init(&task_attribute); //初始化线程属性  
40 - pthread_attr_setdetachstate(&task_attribute, PTHREAD_CREATE_DETACHED); //设置线程属性  
41 -  
42 - int *arg = (int*) malloc(sizeof(int)); // 分配动态内存  
43 - *arg = angle; // 将参数值保存到动态内存中  
44 -  
45 - int angle_ret = pthread_create(&MOTOR_task,&task_attribute,Gimbal_V3S_U3_Motor_control,arg); //TTS mobie  
46 - if(angle_ret != 0)  
47 - {  
48 - printf("创建motor线程失败!\n");  
49 - return -1;  
50 - }  
51 - else  
52 - {  
53 - printf("创建motor线程成功\n");  
54 - }  
55 -  
56 - return 0;  
57 -}  
58 -  
59 -  
60 -//控制电机线程  
61 -static void *Gimbal_V3S_U3_Motor_control(void *arg)  
62 -{  
63 - //传入的角度 -900~0  
64 - int angle = *(int*)arg;  
65 -  
66 //微调角度值 37 //微调角度值
67 - angle = angle + V3S_U3_motor_precise_adjustment_pitch;  
68 -  
69 printf("V3S_U3_angle:%d\n",angle); 38 printf("V3S_U3_angle:%d\n",angle);
70 39
71 if(angle >= 0 ) 40 if(angle >= 0 )
@@ -84,8 +53,6 @@ static void *Gimbal_V3S_U3_Motor_control(void *arg) @@ -84,8 +53,6 @@ static void *Gimbal_V3S_U3_Motor_control(void *arg)
84 53
85 //发送角度给串口2 54 //发送角度给串口2
86 JZsdk_Uart_Send_SetGimbalPitch(UART_DEV_2, angle); 55 JZsdk_Uart_Send_SetGimbalPitch(UART_DEV_2, angle);
87 -  
88 - free(arg); // 在线程函数中释放动态内存  
89 } 56 }
90 57
91 //云台微调 58 //云台微调
@@ -11,8 +11,13 @@ @@ -11,8 +11,13 @@
11 11
12 static int SearchLight_Frequency; //探照灯频率 12 static int SearchLight_Frequency; //探照灯频率
13 static int SearchLight_Mode; //探照灯模式 13 static int SearchLight_Mode; //探照灯模式
14 -static int SearchLight_LeftLumen; //探照灯左灯亮度  
15 -static int SearchLight_RightLumen; //探照灯右灯亮度 14 +
  15 +
  16 +static int SearchLight_LeftLumen; //探照灯设置左灯亮度
  17 +static int SearchLight_RightLumen; //探照灯设置右灯亮度
  18 +static int SearchLight_RealLeftLumen; //探照灯实际左灯亮度
  19 +static int SearchLight_RealRightLumen; //探照灯实际右灯亮度
  20 +
16 static int SearchLight_LeftTemperature; //探照灯左边温度 21 static int SearchLight_LeftTemperature; //探照灯左边温度
17 static int SearchLight_RightTemperature; //探照灯右边温度 22 static int SearchLight_RightTemperature; //探照灯右边温度
18 23
@@ -119,8 +124,30 @@ T_JZsdkReturnCode Lighting_Set_SearchLightLumen(int LeftLumen, int RightLumen) @@ -119,8 +124,30 @@ T_JZsdkReturnCode Lighting_Set_SearchLightLumen(int LeftLumen, int RightLumen)
119 { 124 {
120 printf("设置%x探照灯灯光亮度\n",DEVICE_VERSION); 125 printf("设置%x探照灯灯光亮度\n",DEVICE_VERSION);
121 126
  127 + if (LeftLumen >= 100)
  128 + {
  129 + LeftLumen = 100;
  130 + }
  131 + else if (LeftLumen <= 0)
  132 + {
  133 + LeftLumen = 0;
  134 + }
  135 +
  136 + if (RightLumen >= 100)
  137 + {
  138 + RightLumen = 100;
  139 + }
  140 + else if (RightLumen <= 0)
  141 + {
  142 + RightLumen = 0;
  143 + }
  144 +
  145 +
  146 +
122 if (DEVICE_VERSION == JZ_U3) 147 if (DEVICE_VERSION == JZ_U3)
123 { 148 {
  149 + SearchLight_RightLumen = RightLumen;
  150 + SearchLight_LeftLumen = LeftLumen;
124 return SearchLight_V3S_U3_Set_SearchLightLumen(LeftLumen, RightLumen); 151 return SearchLight_V3S_U3_Set_SearchLightLumen(LeftLumen, RightLumen);
125 } 152 }
126 else if (DEVICE_VERSION == JZ_H1T) 153 else if (DEVICE_VERSION == JZ_H1T)
@@ -129,6 +156,8 @@ T_JZsdkReturnCode Lighting_Set_SearchLightLumen(int LeftLumen, int RightLumen) @@ -129,6 +156,8 @@ T_JZsdkReturnCode Lighting_Set_SearchLightLumen(int LeftLumen, int RightLumen)
129 } 156 }
130 else if (DEVICE_VERSION == TF_A1) 157 else if (DEVICE_VERSION == TF_A1)
131 { 158 {
  159 + SearchLight_RightLumen = RightLumen;
  160 + SearchLight_LeftLumen = LeftLumen;
132 return SearchLight_V3S_TFA1_Set_SearchLightLumen(LeftLumen, RightLumen); 161 return SearchLight_V3S_TFA1_Set_SearchLightLumen(LeftLumen, RightLumen);
133 } 162 }
134 163
@@ -140,13 +169,24 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightLumen(int LeftLumen, int RightLumen @@ -140,13 +169,24 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightLumen(int LeftLumen, int RightLumen
140 { 169 {
141 printf("接收到%x探照灯灯光亮度 左灯%d 右灯%d\n",DEVICE_VERSION, LeftLumen, RightLumen); 170 printf("接收到%x探照灯灯光亮度 左灯%d 右灯%d\n",DEVICE_VERSION, LeftLumen, RightLumen);
142 171
143 - SearchLight_RightLumen = RightLumen;  
144 - SearchLight_LeftLumen = LeftLumen; 172 + //如果是主喊话器副灯的单一设备
  173 + if (DEVICE_VERSION == TF_A1 || DEBUG_VERSION == JZ_U3)
  174 + {
  175 + SearchLight_RealRightLumen = RightLumen;
  176 + SearchLight_RealLeftLumen = LeftLumen;
  177 + }
  178 +
  179 + else
  180 + {
  181 + SearchLight_RightLumen = RightLumen;
  182 + SearchLight_LeftLumen = LeftLumen;
  183 + }
  184 +
145 185
146 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 186 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
147 } 187 }
148 188
149 -//获取探照灯的灯光亮度 189 +//获取探照灯设置的灯光亮度
150 T_JZsdkReturnCode Lighting_Get_SearchLightLumen(int *LeftLumen, int *RightLumen) 190 T_JZsdkReturnCode Lighting_Get_SearchLightLumen(int *LeftLumen, int *RightLumen)
151 { 191 {
152 *LeftLumen = SearchLight_LeftLumen; 192 *LeftLumen = SearchLight_LeftLumen;
@@ -212,53 +252,6 @@ T_JZsdkReturnCode Lighting_CheckStatus_SearchLightFrequency() @@ -212,53 +252,6 @@ T_JZsdkReturnCode Lighting_CheckStatus_SearchLightFrequency()
212 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE; 252 return JZ_ERROR_SYSTEM_MODULE_CODE_FAILURE;
213 } 253 }
214 254
215 -  
216 -  
217 -/********************************************************************************************************************************  
218 - *  
219 - * 探照灯 温度相关  
220 - *  
221 -********************************************************************************************************************************/  
222 -static int Light_Luminance_StepBack_Calculation(int temper, int liumin)  
223 -{  
224 -  
225 - //以下为假设值 未经实测  
226 - //以70度 为过热标准 91 为顶峰  
227 - //70度~ 73 度时 每次降低2亮度  
228 - //74~78时 每次降低3  
229 - //79~84时 每次降低5  
230 - //85~ 91时 每次降低8  
231 - //大于91时 每次降低12  
232 - //不过超过80后 灯那边会被强制关掉  
233 - int StepBackValue = 0;  
234 - if ( (temper >= 70 ) && (temper <= 73) )  
235 - {  
236 - StepBackValue = 1;  
237 - }  
238 - else if ( (temper >= 74 ) && (temper <= 78) )  
239 - {  
240 - StepBackValue = 2;  
241 - }  
242 - else if ( (temper >= 79 ) && (temper <= 84) )  
243 - {  
244 - StepBackValue = 4;  
245 - }  
246 - else if ( (temper >= 85 ) && (temper <= 91))  
247 - {  
248 - StepBackValue = 6;  
249 - }  
250 - else if ( (temper > 91 ))  
251 - {  
252 - StepBackValue = 8;  
253 - }  
254 - else  
255 - {  
256 - StepBackValue = 0;  
257 - }  
258 -  
259 - return (liumin - StepBackValue);  
260 -}  
261 -  
262 //收到并修改探照灯的温度(中继修改) 255 //收到并修改探照灯的温度(中继修改)
263 T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, int RightTemperature) 256 T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, int RightTemperature)
264 { 257 {
@@ -277,18 +270,14 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, in @@ -277,18 +270,14 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, in
277 //如果是JZ u3 270 //如果是JZ u3
278 if (DEVICE_VERSION == JZ_U3) 271 if (DEVICE_VERSION == JZ_U3)
279 { 272 {
280 -  
281 - if (Max_tmeperature >= 70) 273 + //温控开始
  274 + TempLumen = JZsdk_SearchLightTemControl_Input(Max_tmeperature, Max_Liuminance);
  275 +
  276 + if (TempLumen != Max_Liuminance)
282 { 277 {
283 - //温控开始  
284 - Max_Liuminance = Light_Luminance_StepBack_Calculation(Max_tmeperature, Max_Liuminance);  
285 -  
286 //重设亮度 278 //重设亮度
287 - Lighting_Set_SearchLightLumen(Max_Liuminance, Max_Liuminance);  
288 - 279 + UIcontrol_Set_SearchLightLumen(NO_SPECIFIED, 0, TempLumen, TempLumen);
289 } 280 }
290 -  
291 -  
292 } 281 }
293 if (DEVICE_VERSION == TF_A1) 282 if (DEVICE_VERSION == TF_A1)
294 { 283 {
@@ -298,13 +287,10 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, in @@ -298,13 +287,10 @@ T_JZsdkReturnCode Lighting_Obtain_SearchLightTemperature(int LeftTemperature, in
298 if (TempLumen != Max_Liuminance) 287 if (TempLumen != Max_Liuminance)
299 { 288 {
300 //重设亮度 289 //重设亮度
301 - //Lighting_Set_SearchLightLumen(TempLumen, TempLumen);  
302 UIcontrol_Set_SearchLightLumen(NO_SPECIFIED, 0, TempLumen, TempLumen); 290 UIcontrol_Set_SearchLightLumen(NO_SPECIFIED, 0, TempLumen, TempLumen);
303 } 291 }
304 } 292 }
305 293
306 -  
307 -  
308 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 294 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
309 } 295 }
310 296
@@ -454,4 +440,14 @@ T_JZsdkReturnCode Lighting_CheckStatus_WarningLightColor(int *ValueColor1, int * @@ -454,4 +440,14 @@ T_JZsdkReturnCode Lighting_CheckStatus_WarningLightColor(int *ValueColor1, int *
454 Lighting_Get_WarningLight_Status(ValueColor1, ValueColor2); 440 Lighting_Get_WarningLight_Status(ValueColor1, ValueColor2);
455 441
456 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 442 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
  443 +}
  444 +
  445 +/*********
  446 + *
  447 + *刷新亮度函数
  448 + *
  449 +**********/
  450 +T_JZsdkReturnCode JZsdk_SearchLight_FlushLumen(int InputLumen)
  451 +{
  452 + JZsdk_SearchLightTemControl_FlushLumen(InputLumen);
457 } 453 }
@@ -53,6 +53,8 @@ T_JZsdkReturnCode Lighting_Obtain_WarningLight_Color(int color1, int color2); @@ -53,6 +53,8 @@ T_JZsdkReturnCode Lighting_Obtain_WarningLight_Color(int color1, int color2);
53 T_JZsdkReturnCode Lighting_Get_WarningLight_Color(int *color1, int *color2); 53 T_JZsdkReturnCode Lighting_Get_WarningLight_Color(int *color1, int *color2);
54 T_JZsdkReturnCode Lighting_CheckStatus_WarningLightColor(int *ValueColor1, int *ValueColor2); 54 T_JZsdkReturnCode Lighting_CheckStatus_WarningLightColor(int *ValueColor1, int *ValueColor2);
55 55
  56 +T_JZsdkReturnCode JZsdk_SearchLight_FlushLumen(int InputLumen);
  57 +
56 #ifdef __cplusplus 58 #ifdef __cplusplus
57 } 59 }
58 #endif 60 #endif
@@ -5,11 +5,13 @@ @@ -5,11 +5,13 @@
5 5
6 typedef enum { 6 typedef enum {
7 DEFAULT_STATUS = 0x0000, //默认状态 7 DEFAULT_STATUS = 0x0000, //默认状态
8 - LUMEN_UP = 0x0001, //温度提高  
9 - LUMEN_DOWN =0x0002, //温度降低 8 + LUMEN_UP = 0x0001, //亮度提高
  9 + LUMEN_DOWN =0x0002, //亮度降低
10 10
11 } JZ_TemControl_Code; 11 } JZ_TemControl_Code;
12 12
  13 +
  14 +
13 // typedef enum { 15 // typedef enum {
14 // JZ_T30 = 0x0000, 16 // JZ_T30 = 0x0000,
15 // JZ_T60 = 0x0001, 17 // JZ_T60 = 0x0001,
@@ -20,6 +22,7 @@ typedef enum { @@ -20,6 +22,7 @@ typedef enum {
20 // } JZ_DeviceModel_Code; 22 // } JZ_DeviceModel_Code;
21 23
22 static int InitialLumen = 0; //最初亮度 24 static int InitialLumen = 0; //最初亮度
  25 +static int InitialFlag = 0; //最初亮度变化flag
23 26
24 27
25 /*** 28 /***
@@ -38,7 +41,11 @@ int JZsdk_SearchLightSetInitialLumen(int value) @@ -38,7 +41,11 @@ int JZsdk_SearchLightSetInitialLumen(int value)
38 InitialLumen = 0; 41 InitialLumen = 0;
39 } 42 }
40 43
  44 +
41 InitialLumen = value; 45 InitialLumen = value;
  46 + InitialFlag = DEFAULT_STATUS;
  47 +
  48 + printf("刷新亮度初值%d\n",InitialLumen);
42 } 49 }
43 50
44 /*** 51 /***
@@ -191,14 +198,24 @@ int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLume @@ -191,14 +198,24 @@ int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLume
191 if (ControlFlag == LUMEN_DOWN) 198 if (ControlFlag == LUMEN_DOWN)
192 { 199 {
193 *OutputLumen = InputLumen - 1; 200 *OutputLumen = InputLumen - 1;
194 -  
195 - //由于温度需要下降,说明初值亮度还是太高了  
196 - //将初值亮度降低2点  
197 - InitialLumen = InitialLumen-2; 201 +
  202 + //如果在亮度回升期间,需要降低亮度
  203 + if (InitialFlag == LUMEN_UP)
  204 + {
  205 + //由于温度需要下降,说明初值亮度还是太高了
  206 + //将初值亮度降低1点
  207 + InitialLumen = InitialLumen-1;
  208 + printf("触发降低初值%d\n",InitialLumen);
  209 +
  210 + InitialFlag = LUMEN_DOWN;
  211 + }
198 } 212 }
199 else if (ControlFlag == LUMEN_UP) 213 else if (ControlFlag == LUMEN_UP)
200 { 214 {
201 *OutputLumen = InputLumen + 1; 215 *OutputLumen = InputLumen + 1;
  216 +
  217 + //如果亮度回升了
  218 + InitialFlag = LUMEN_UP;
202 } 219 }
203 else 220 else
204 { 221 {
@@ -210,3 +227,20 @@ int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLume @@ -210,3 +227,20 @@ int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLume
210 227
211 return 0; 228 return 0;
212 } 229 }
  230 +
  231 +/***
  232 + *
  233 + * 用于判断是否超出最大温度范围10度
  234 + * 用于超出温度时的直接关灯
  235 + * 超过最大范围10度后 返回1
  236 + * 不超返回0
  237 + * ****/
  238 +int JZsdk_SearchLightTemControl_WhetherExceedsMaxRange(int InputTemp)
  239 +{
  240 + int LimitTemp = (JZsdk_SearchLightGetLimitTemp(DEVICE_VERSION) + 10);
  241 + if (InputTemp > LimitTemp)
  242 + {
  243 + return 1;
  244 + }
  245 + return 0;
  246 +}
@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
15 15
16 int JZsdk_SearchLightSetInitialLumen(int value); 16 int JZsdk_SearchLightSetInitialLumen(int value);
17 int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLumen, int *OutputDelay); 17 int JZsdk_SearchLightTemControl(float InputTemp, int InputLumen, int *OutputLumen, int *OutputDelay);
  18 +int JZsdk_SearchLightTemControl_WhetherExceedsMaxRange(int InputTemp);
18 19
19 20
20 #endif 21 #endif
@@ -17,16 +17,34 @@ static int g_InputTemp = 0; @@ -17,16 +17,34 @@ static int g_InputTemp = 0;
17 static int g_InputLumen = 0; 17 static int g_InputLumen = 0;
18 static int g_OutputLumen = 0; 18 static int g_OutputLumen = 0;
19 19
  20 +static int g_OutputLumen_FinishFlag = 0;
  21 +
20 //1、输入函数 22 //1、输入函数
21 T_JZsdkReturnCode JZsdk_SearchLightTemControl_Input(int InputTemp, int InputLumen) 23 T_JZsdkReturnCode JZsdk_SearchLightTemControl_Input(int InputTemp, int InputLumen)
22 { 24 {
  25 + //1、判断是否超出温控范围了
  26 + int ret = JZsdk_SearchLightTemControl_WhetherExceedsMaxRange(InputTemp);
  27 + if (ret == 1) //超出最大温度10度
  28 + {
  29 + //返回亮度0
  30 + return 0;
  31 + }
  32 +
  33 +
23 //输入参数 34 //输入参数
24 g_InputTemp = InputTemp; 35 g_InputTemp = InputTemp;
25 g_InputLumen = InputLumen; 36 g_InputLumen = InputLumen;
26 37
27 - delayMs(1);  
28 -  
29 - return g_OutputLumen; 38 + delayMs(2);
  39 +
  40 + //如果触发过温控,则返回温控后的值
  41 + if (g_OutputLumen_FinishFlag == JZ_FLAGCODE_ON)
  42 + {
  43 + g_OutputLumen_FinishFlag = JZ_FLAGCODE_OFF;
  44 + return g_OutputLumen;
  45 + }
  46 +
  47 + return g_InputLumen;
30 } 48 }
31 49
32 //2、刷新亮度函数 50 //2、刷新亮度函数
@@ -44,6 +62,7 @@ static void *TempControl_Task(void *arg) @@ -44,6 +62,7 @@ static void *TempControl_Task(void *arg)
44 while (1) 62 while (1)
45 { 63 {
46 JZsdk_SearchLightTemControl( (float)g_InputTemp, g_InputLumen, &g_OutputLumen, &DelayTime); 64 JZsdk_SearchLightTemControl( (float)g_InputTemp, g_InputLumen, &g_OutputLumen, &DelayTime);
  65 + g_OutputLumen_FinishFlag = JZ_FLAGCODE_ON;
47 66
48 if (DelayTime > 0) 67 if (DelayTime > 0)
49 { 68 {
@@ -20,10 +20,14 @@ T_JZsdkReturnCode SearchLight_V3S_TFA1_SearchLightControl(int mode) @@ -20,10 +20,14 @@ T_JZsdkReturnCode SearchLight_V3S_TFA1_SearchLightControl(int mode)
20 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 20 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
21 } 21 }
22 22
  23 +
23 T_JZsdkReturnCode SearchLight_V3S_TFA1_Set_SearchLightLumen(int LeftLumen, int RightLumen) 24 T_JZsdkReturnCode SearchLight_V3S_TFA1_Set_SearchLightLumen(int LeftLumen, int RightLumen)
24 { 25 {
25 - //向u3的单片机发送探照灯控制帧 26 + //向tfa1的单片机发送探照灯控制帧
26 JZsdk_Uart_Send_SearchLight_SetLumen(UART_DEV_2, LeftLumen, RightLumen); 27 JZsdk_Uart_Send_SearchLight_SetLumen(UART_DEV_2, LeftLumen, RightLumen);
27 28
  29 + //向tfa1的单片机发送查询亮度帧
  30 + //JZsdk_Uart_Send_SearchLight_CheckStatus_Lumen(UART_DEV_2);
  31 +
28 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 32 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
29 } 33 }
@@ -13,8 +13,12 @@ @@ -13,8 +13,12 @@
13 #include "opus/Megaphone_Opus.h" 13 #include "opus/Megaphone_Opus.h"
14 14
15 #include "UI_control.h" 15 #include "UI_control.h"
  16 +#include "JZsdkLib.h"
16 17
17 #include "ircut.h" 18 #include "ircut.h"
  19 +
  20 +#include "version_choose.h"
  21 +
18 /**************************************************************************************************************************************************** 22 /****************************************************************************************************************************************************
19 * 23 *
20 * 接收外部接口部分 24 * 接收外部接口部分
@@ -52,9 +56,21 @@ int Megaphone_Init() @@ -52,9 +56,21 @@ int Megaphone_Init()
52 56
53 else if (APP_VERSION == APP_UART) 57 else if (APP_VERSION == APP_UART)
54 { 58 {
55 - //播放喊话器启动中  
56 - Megaphone_TTS_Play(strlen("喊话器直连模式启动中"),"喊话器直连模式启动中", 0); 59 + if (SPECIAL_VERSION == SPECIAL_DAOTONG)
  60 + {
  61 + //设置语音为英文
  62 + Megaphone_TTS_SetTone(0x11);
  63 +
  64 + //播放喊话器启动中
  65 + Megaphone_TTS_Play(strlen("The direct connection mode of the speaker is being activated"),"The direct connection mode of the speaker is being activated", 0);
  66 + }
  67 + else
  68 + {
  69 + //播放喊话器启动中
  70 + Megaphone_TTS_Play(strlen("喊话器直连模式启动中"),"喊话器直连模式启动中", 0);
  71 + }
57 } 72 }
  73 +
58 74
59 #elif FIRMWARE_ORIGIN == OVERSEAS_VERSION //海外版才有其他国家的语音 75 #elif FIRMWARE_ORIGIN == OVERSEAS_VERSION //海外版才有其他国家的语音
60 76
@@ -219,14 +235,17 @@ T_JZsdkReturnCode Megaphone_audio_PlayPause() @@ -219,14 +235,17 @@ T_JZsdkReturnCode Megaphone_audio_PlayPause()
219 235
220 //2、向音频库发送暂停音乐帧 236 //2、向音频库发送暂停音乐帧
221 Music_SendFrame_PauseMusic(); 237 Music_SendFrame_PauseMusic();
222 - 238 + // while (Megaphone_get_play_status() == 0x10)
  239 + // {
  240 + // delayMs(1);
  241 + // }
  242 +
223 //3、关闭TTS播放 理论上这里没有TTS需要关闭,但是以防万一还是加上 243 //3、关闭TTS播放 理论上这里没有TTS需要关闭,但是以防万一还是加上
224 TTS_ttsPlayStop(); 244 TTS_ttsPlayStop();
225 245
226 //4、关闭opus播放 246 //4、关闭opus播放
227 Opus_OpusPlayStop(); 247 Opus_OpusPlayStop();
228 248
229 -  
230 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS; 249 return JZ_ERROR_SYSTEM_MODULE_CODE_SUCCESS;
231 } 250 }
232 /********* 251 /*********
@@ -242,6 +261,11 @@ T_JZsdkReturnCode Megaphone_audio_PlayStop() @@ -242,6 +261,11 @@ T_JZsdkReturnCode Megaphone_audio_PlayStop()
242 261
243 //2、向音频库发送暂停音乐帧 262 //2、向音频库发送暂停音乐帧
244 Music_SendFrame_PauseMusic(); 263 Music_SendFrame_PauseMusic();
  264 + // while (Megaphone_get_play_status() == 0x10)
  265 + // {
  266 + // printf("循环暂停\n");
  267 + // delayMs(1);
  268 + // }
245 269
246 //3、关闭TTS播放 270 //3、关闭TTS播放
247 TTS_ttsPlayStop(); 271 TTS_ttsPlayStop();
@@ -680,8 +704,6 @@ T_JZsdkReturnCode Megaphone_RealTimeVoice_Trans(char *data, int length) @@ -680,8 +704,6 @@ T_JZsdkReturnCode Megaphone_RealTimeVoice_Trans(char *data, int length)
680 **********/ 704 **********/
681 T_JZsdkReturnCode Megaphone_RealTimeVoice_Close() 705 T_JZsdkReturnCode Megaphone_RealTimeVoice_Close()
682 { 706 {
683 -  
684 -  
685 //1、关闭解码器 707 //1、关闭解码器
686 Opus_RealTimeVoice_Close(); 708 Opus_RealTimeVoice_Close();
687 709
@@ -584,6 +584,7 @@ void returnframe(char* data, int datasize)//回调函数,监听播放状态 @@ -584,6 +584,7 @@ void returnframe(char* data, int datasize)//回调函数,监听播放状态
584 584
585 //回复关闭状态 585 //回复关闭状态
586 Megaphone_Reply_PlayStatus_end(); 586 Megaphone_Reply_PlayStatus_end();
  587 +
587 } 588 }
588 } 589 }
589 else 590 else
@@ -123,7 +123,7 @@ static int Music_RealTimeMP2_PlayData(unsigned char *data,int len) @@ -123,7 +123,7 @@ static int Music_RealTimeMP2_PlayData(unsigned char *data,int len)
123 { 123 {
124 unsigned char playFile[len + 9 + 2]; 124 unsigned char playFile[len + 9 + 2];
125 125
126 - //printf("播放开始\n"); 126 + printf("播放开始\n");
127 127
128 128
129 //清空 129 //清空
@@ -146,7 +146,7 @@ static int Music_RealTimeMP2_PlayData(unsigned char *data,int len) @@ -146,7 +146,7 @@ static int Music_RealTimeMP2_PlayData(unsigned char *data,int len)
146 146
147 Music_SendFrame_FramePlay(playFile,len); 147 Music_SendFrame_FramePlay(playFile,len);
148 148
149 - //printf("播放结束\n"); 149 + printf("播放结束\n");
150 150
151 return 0; 151 return 0;
152 } 152 }
@@ -170,13 +170,13 @@ static void *Music_RealTimeMP2_LoopPlay(void *arg) @@ -170,13 +170,13 @@ static void *Music_RealTimeMP2_LoopPlay(void *arg)
170 } 170 }
171 } 171 }
172 172
173 - printf("开始播放函数\n"); 173 + printf("开始播放函数\n");
174 174
175 while(Music_RealTimeMP2__PlayData_LoopReadFlag != JZ_FLAGCODE_OFF) 175 while(Music_RealTimeMP2__PlayData_LoopReadFlag != JZ_FLAGCODE_OFF)
176 { 176 {
177 if(Music_RealTimeMP2_PlayData_LoopHead!=Music_RealTimeMP2_PlayData_LoopEnd) 177 if(Music_RealTimeMP2_PlayData_LoopHead!=Music_RealTimeMP2_PlayData_LoopEnd)
178 { 178 {
179 - //printf("播放线程执行中\n"); 179 + printf("播放线程执行中\n");
180 180
181 ret = Music_RealTimeMP2_PlayData(Music_RealTimeMP2_PlayData_Loop[Music_RealTimeMP2_PlayData_LoopHead],128); 181 ret = Music_RealTimeMP2_PlayData(Music_RealTimeMP2_PlayData_Loop[Music_RealTimeMP2_PlayData_LoopHead],128);
182 Music_RealTimeMP2_PlayData_LoopHead++; 182 Music_RealTimeMP2_PlayData_LoopHead++;
@@ -263,7 +263,7 @@ static void *Music_RealTimeMP2_WriteData_Task(void *arg) @@ -263,7 +263,7 @@ static void *Music_RealTimeMP2_WriteData_Task(void *arg)
263 263
264 if(Music_RealTimeMP2_WriteData_LoopHead!=Music_RealTimeMP2_WriteData_LoopEnd) 264 if(Music_RealTimeMP2_WriteData_LoopHead!=Music_RealTimeMP2_WriteData_LoopEnd)
265 { 265 {
266 - //printf("缓冲线程写入中\n"); 266 + printf("缓冲线程写入中\n");
267 267
268 //将输入缓冲池的数据放入播放缓冲池 268 //将输入缓冲池的数据放入播放缓冲池
269 Music_RealTimeMP2_Put_WriteData_In_PlayLoop(); 269 Music_RealTimeMP2_Put_WriteData_In_PlayLoop();
@@ -321,7 +321,7 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length) @@ -321,7 +321,7 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length)
321 321
322 //写入处理 322 //写入处理
323 //① 、检查池子当前组内有无剩余数据,如果池子当前组有剩 上次写入的语音数据, 接着往里面写入 323 //① 、检查池子当前组内有无剩余数据,如果池子当前组有剩 上次写入的语音数据, 接着往里面写入
324 - if ( (Music_RealTimeMP2_WriteData_ResidueLenth > 0) && (ReadTimeMP2_StatusFlag == JZ_FLAGCODE_ON)) //如果残留物有长度 324 + if (Music_RealTimeMP2_WriteData_ResidueLenth > 0) //如果残留物有长度
325 { 325 {
326 326
327 if (Music_RealTimeMP2_WriteData_ResidueLenth + length < 128) 327 if (Music_RealTimeMP2_WriteData_ResidueLenth + length < 128)
@@ -364,9 +364,9 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length) @@ -364,9 +364,9 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length)
364 364
365 365
366 366
367 - //②、从新的组处理数据W 367 + //②、从新的组处理数据
368 //待处理数据超过128长度时 368 //待处理数据超过128长度时
369 - while( (length - temp_lenth) >= 128 && (ReadTimeMP2_StatusFlag == JZ_FLAGCODE_ON) ) 369 + while( (length - temp_lenth) >= 128)
370 { 370 {
371 // 在写入解码前加锁 371 // 在写入解码前加锁
372 pthread_mutex_lock(&RealTimeMP2_WriteDataLock); 372 pthread_mutex_lock(&RealTimeMP2_WriteDataLock);
@@ -395,7 +395,7 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length) @@ -395,7 +395,7 @@ static int Music_RealTimeMP2_WriteDataToLoop(unsigned char *buf,int length)
395 } 395 }
396 396
397 //③、如果长度还有剩,把数据存到池子内的新组,并记录残留物长度 397 //③、如果长度还有剩,把数据存到池子内的新组,并记录残留物长度
398 - if( (length - temp_lenth) > 0 && (ReadTimeMP2_StatusFlag == JZ_FLAGCODE_ON) ) 398 + if( (length - temp_lenth) > 0)
399 { 399 {
400 for ( ; temp_lenth < length ; Music_RealTimeMP2_WriteData_ResidueLenth++) 400 for ( ; temp_lenth < length ; Music_RealTimeMP2_WriteData_ResidueLenth++)
401 { 401 {
@@ -46,8 +46,8 @@ static int Opus_RealTimeVoice_WriteData_ResidueLenth; // 写入缓存池池子 @@ -46,8 +46,8 @@ static int Opus_RealTimeVoice_WriteData_ResidueLenth; // 写入缓存池池子
46 static int Opus_RealTimeVoice_WriteDataFlag=0;//读取标志位0为停止,1为开始 46 static int Opus_RealTimeVoice_WriteDataFlag=0;//读取标志位0为停止,1为开始
47 static int Opus_RealTimeVoice_WriteDataStopFlag = 0; 47 static int Opus_RealTimeVoice_WriteDataStopFlag = 0;
48 48
49 -pthread_mutex_t WriteDataLock = PTHREAD_MUTEX_INITIALIZER;  
50 -pthread_cond_t WriteCond = PTHREAD_COND_INITIALIZER; 49 +static pthread_mutex_t WriteDataLock = PTHREAD_MUTEX_INITIALIZER;
  50 +static pthread_cond_t WriteCond = PTHREAD_COND_INITIALIZER;
51 int WriteDataFlag = 0; 51 int WriteDataFlag = 0;
52 52
53 static void Opus_RealTimeVoice_WriteDataHeadReset(); 53 static void Opus_RealTimeVoice_WriteDataHeadReset();
@@ -331,8 +331,13 @@ int Opus_RealTimeVoice_WriteDataToLoop(unsigned char *buf,int length) @@ -331,8 +331,13 @@ int Opus_RealTimeVoice_WriteDataToLoop(unsigned char *buf,int length)
331 JZSDK_LOG_ERROR("输入进缓冲池的数据长度有误:%d",length); 331 JZSDK_LOG_ERROR("输入进缓冲池的数据长度有误:%d",length);
332 return -1; 332 return -1;
333 } 333 }
334 -  
335 334
  335 + if (ReadTimeVoice_StatusFlag != JZ_FLAGCODE_ON)
  336 + {
  337 + JZSDK_LOG_ERROR("实时喊话未开启");
  338 + return -1;
  339 + }
  340 +
336 //写入处理 341 //写入处理
337 //① 、检查池子当前组内有无剩余数据,如果池子当前组有剩 上次写入的语音数据, 接着往里面写入 342 //① 、检查池子当前组内有无剩余数据,如果池子当前组有剩 上次写入的语音数据, 接着往里面写入
338 if (Opus_RealTimeVoice_WriteData_ResidueLenth > 0) //如果残留物有长度 343 if (Opus_RealTimeVoice_WriteData_ResidueLenth > 0) //如果残留物有长度
@@ -211,7 +211,7 @@ static void *PlayFixedFile_task(void *arg) @@ -211,7 +211,7 @@ static void *PlayFixedFile_task(void *arg)
211 timeNum = 0; 211 timeNum = 0;
212 212
213 //播放结束延迟 213 //播放结束延迟
214 - while ( (timeNum <=2500) && (Opus_play_Flag == 1)) 214 + while ( (timeNum <=3000) && (Opus_play_Flag == 1))
215 { 215 {
216 delayMs(10); 216 delayMs(10);
217 timeNum +=10; 217 timeNum +=10;
@@ -225,7 +225,7 @@ static void *PlayFixedFile_task(void *arg) @@ -225,7 +225,7 @@ static void *PlayFixedFile_task(void *arg)
225 timeNum = 0; 225 timeNum = 0;
226 226
227 //播放结束延迟 227 //播放结束延迟
228 - while ((RecordVoiceOpusLoopPlayMode == 1) && (timeNum <=2500) && (Opus_play_Flag == 1)) 228 + while ((RecordVoiceOpusLoopPlayMode == 1) && (timeNum <=3000) && (Opus_play_Flag == 1))
229 { 229 {
230 delayMs(10); 230 delayMs(10);
231 timeNum +=10; 231 timeNum +=10;
@@ -1005,7 +1005,7 @@ T_JZsdkReturnCode UIcontrol_Set_SearchLightLumen(int DeviceName, int WeatherFlus @@ -1005,7 +1005,7 @@ T_JZsdkReturnCode UIcontrol_Set_SearchLightLumen(int DeviceName, int WeatherFlus
1005 1005
1006 if (WeatherFlush == 1) 1006 if (WeatherFlush == 1)
1007 { 1007 {
1008 - JZsdk_SearchLightTemControl_FlushLumen(MAX(value1,value2)); 1008 + JZsdk_SearchLight_FlushLumen(MAX(value1,value2));
1009 } 1009 }
1010 1010
1011 delayMs(10); 1011 delayMs(10);
1 #1、输入设备名字,程序模式,硬件号,版本号 1 #1、输入设备名字,程序模式,硬件号,版本号
2 -payload_name="JZ_H150T" 2 +payload_name="JZ_H1E"
3 payload_mode="APP_UART" # APP_PSDK 或者 APP_UART 3 payload_mode="APP_UART" # APP_PSDK 或者 APP_UART
4 -payload_platform="PLATFORM_H3"  
5 -payload_version="V00.00.01.02" 4 +payload_platform="PLATFORM_V3S"
  5 +payload_version="V00.00.01.03"
6 payload_origin="DOMESTIC_VERSION" # 国内版DOMESTIC_VERSION 海外版OVERSEAS_VERSION 6 payload_origin="DOMESTIC_VERSION" # 国内版DOMESTIC_VERSION 海外版OVERSEAS_VERSION
7 #2、根据负载选择滤波方式,目前仅h10使用带阻滤波 7 #2、根据负载选择滤波方式,目前仅h10使用带阻滤波
8 #high_pass_filtering 8 #high_pass_filtering
@@ -204,11 +204,29 @@ int Main_WorkModeSet(int mode) @@ -204,11 +204,29 @@ int Main_WorkModeSet(int mode)
204 204
205 else if (APP_VERSION == APP_UART) 205 else if (APP_VERSION == APP_UART)
206 { 206 {
207 - //播报喊话器准备就绪  
208 - delayMs(3500); 207 + if (SPECIAL_VERSION == SPECIAL_DAOTONG)
  208 + {
  209 + //设置语音为英文
  210 + Megaphone_TTS_SetTone(0x11);
209 211
210 - //播放喊话器启动中  
211 - Megaphone_TTS_Play(strlen("喊话器直连模式准备就绪"), "喊话器直连模式准备就绪", 0); 212 + //播放喊话器启动中
  213 + Megaphone_TTS_Play(strlen("Speaker Direct Mode Ready"),"Speaker Direct Mode Ready", 0);
  214 +
  215 + delayMs(1000);
  216 +
  217 + //设置语音为中文
  218 + Megaphone_TTS_SetTone(0x01);
  219 + }
  220 + else
  221 + {
  222 + //播报喊话器准备就绪
  223 + delayMs(3500);
  224 +
  225 + //播放喊话器启动中
  226 + Megaphone_TTS_Play(strlen("喊话器直连模式准备就绪"), "喊话器直连模式准备就绪", 0);
  227 + }
  228 +
  229 +
212 } 230 }
213 231
214 232
@@ -22,7 +22,7 @@ int main() @@ -22,7 +22,7 @@ int main()
22 //前者可用于 uart连接对外接口 或者是 通过uart控制的psdk 22 //前者可用于 uart连接对外接口 或者是 通过uart控制的psdk
23 //后者则是用于直接镶套在psdk程序里面 23 //后者则是用于直接镶套在psdk程序里面
24 24
25 - printf("JZ串口程序 Version%x.%x.%x.%x\n",MAJOR_VERSION, MINOR_VERSION, MODIFY_VERSION, DEBUG_VERSION); 25 + JZSDK_LOG_DEBUG("%x,UartVersion%x.%x.%x.%x\n",DEVICE_VERSION,MAJOR_VERSION, MINOR_VERSION, MODIFY_VERSION, DEBUG_VERSION);
26 JZsdk_LibInit(); 26 JZsdk_LibInit();
27 27
28 if (APP_VERSION == APP_UART) 28 if (APP_VERSION == APP_UART)
@@ -7,7 +7,7 @@ @@ -7,7 +7,7 @@
7 #define VERSION_CHOOSE_H 7 #define VERSION_CHOOSE_H
8 8
9 //1~10行 除了D可以修改版本选择 禁止动任何东西 9 //1~10行 除了D可以修改版本选择 禁止动任何东西
10 -#define DEVICE_VERSION JZ_H150T 10 +#define DEVICE_VERSION JZ_H150S
11 11
12 //禁止修改行 选择是串口程序 还是 psdk程序 12 //禁止修改行 选择是串口程序 还是 psdk程序
13 #define APP_VERSION APP_UART 13 #define APP_VERSION APP_UART
@@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
19 #define MAJOR_VERSION 0x00 19 #define MAJOR_VERSION 0x00
20 #define MINOR_VERSION 0x00 20 #define MINOR_VERSION 0x00
21 #define MODIFY_VERSION 0x01 21 #define MODIFY_VERSION 0x01
22 -#define DEBUG_VERSION 0x02 22 +#define DEBUG_VERSION 0x03
23 23
24 //禁止修改行 滤波方式 24 //禁止修改行 滤波方式
25 #define FILTERING_TYPE HIGH_PASS_FILTERING 25 #define FILTERING_TYPE HIGH_PASS_FILTERING
@@ -27,6 +27,13 @@ @@ -27,6 +27,13 @@
27 //禁止修改行固件属地 目前 国内版/海外版 27 //禁止修改行固件属地 目前 国内版/海外版
28 #define FIRMWARE_ORIGIN DOMESTIC_VERSION 28 #define FIRMWARE_ORIGIN DOMESTIC_VERSION
29 29
  30 +//指定特殊固件
  31 +#define SPECIAL_VERSION SPECIAL_DAOTONG
  32 +
  33 +//特殊版本号
  34 +#define SPECIAL_NORMAL 0x01
  35 +#define SPECIAL_DAOTONG 0x02
  36 +
30 //软件模式 37 //软件模式
31 #define APP_PSDK 0x01 //psdk设备 38 #define APP_PSDK 0x01 //psdk设备
32 #define APP_UART 0x02 //串口设备 39 #define APP_UART 0x02 //串口设备
@@ -28,20 +28,20 @@ The CXX compiler identification is GNU, found in "/mnt/hgfs/share/展架程序/b @@ -28,20 +28,20 @@ The CXX compiler identification is GNU, found in "/mnt/hgfs/share/展架程序/b
28 Detecting C compiler ABI info compiled with the following output: 28 Detecting C compiler ABI info compiled with the following output:
29 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp 29 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp
30 30
31 -Run Build Command(s):/usr/bin/make -f Makefile cmTC_5f42a/fast && make: Warning: File 'Makefile' has modification time 7.1 s in the future  
32 -/usr/bin/make -f CMakeFiles/cmTC_5f42a.dir/build.make CMakeFiles/cmTC_5f42a.dir/build 31 +Run Build Command(s):/usr/bin/make -f Makefile cmTC_9575b/fast && make: Warning: File 'Makefile' has modification time 0.079 s in the future
  32 +/usr/bin/make -f CMakeFiles/cmTC_9575b.dir/build.make CMakeFiles/cmTC_9575b.dir/build
33 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 33 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
34 -make[1]: Warning: File 'CMakeFiles/cmTC_5f42a.dir/flags.make' has modification time 7.1 s in the future  
35 -Building C object CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o  
36 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -o CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -c /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c 34 +make[1]: Warning: File 'CMakeFiles/cmTC_9575b.dir/flags.make' has modification time 0.075 s in the future
  35 +Building C object CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o
  36 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -o CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -c /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c
37 Using built-in specs. 37 Using built-in specs.
38 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc 38 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc
39 Target: arm-cortexa9-linux-gnueabihf 39 Target: arm-cortexa9-linux-gnueabihf
40 Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c,c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long 40 Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c,c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long
41 Thread model: posix 41 Thread model: posix
42 gcc version 4.9.3 (ctng-1.21.0-229g-FA) 42 gcc version 4.9.3 (ctng-1.21.0-229g-FA)
43 -COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
44 - /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1 -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_REENTRANT /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -std=gnu99 -version -o /tmp/ccMabtGh.s 43 +COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  44 + /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1 -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_REENTRANT /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -std=gnu99 -version -o /tmp/cc3aHeBE.s
45 GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf) 45 GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)
46 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3 46 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3
47 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 47 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
@@ -60,15 +60,15 @@ GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf) @@ -60,15 +60,15 @@ GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)
60 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3 60 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3
61 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 61 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
62 Compiler executable checksum: eeb0d0cd8c4112e84e5c64edda5289df 62 Compiler executable checksum: eeb0d0cd8c4112e84e5c64edda5289df
63 -COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
64 - /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o /tmp/ccMabtGh.s 63 +COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  64 + /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o /tmp/cc3aHeBE.s
65 GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1 65 GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1
66 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/ 66 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/
67 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/ 67 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/
68 -COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
69 -Linking C executable cmTC_5f42a  
70 -/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5f42a.dir/link.txt --verbose=1  
71 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -rdynamic CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -o cmTC_5f42a 68 +COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  69 +Linking C executable cmTC_9575b
  70 +/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9575b.dir/link.txt --verbose=1
  71 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -rdynamic CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -o cmTC_9575b
72 Using built-in specs. 72 Using built-in specs.
73 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc 73 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc
74 COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper 74 COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper
@@ -78,8 +78,8 @@ Thread model: posix @@ -78,8 +78,8 @@ Thread model: posix
78 gcc version 4.9.3 (ctng-1.21.0-229g-FA) 78 gcc version 4.9.3 (ctng-1.21.0-229g-FA)
79 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/ 79 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/
80 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/ 80 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/
81 -COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-rdynamic' '-o' 'cmTC_5f42a' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
82 - /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccl77azl.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_5f42a /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib -lm -ldl -lstdc++ CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lpthread -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o 81 +COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-rdynamic' '-o' 'cmTC_9575b' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  82 + /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccYDc8uH.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_9575b /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib -lm -ldl -lstdc++ CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lpthread -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o
83 make[1]: warning: Clock skew detected. Your build may be incomplete. 83 make[1]: warning: Clock skew detected. Your build may be incomplete.
84 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 84 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
85 make: warning: Clock skew detected. Your build may be incomplete. 85 make: warning: Clock skew detected. Your build may be incomplete.
@@ -105,20 +105,20 @@ Parsed C implicit link information from above output: @@ -105,20 +105,20 @@ Parsed C implicit link information from above output:
105 link line regex: [^( *|.*[/\])(arm-cortexa9-linux-gnueabihf-ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] 105 link line regex: [^( *|.*[/\])(arm-cortexa9-linux-gnueabihf-ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
106 ignore line: [Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp] 106 ignore line: [Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp]
107 ignore line: [] 107 ignore line: []
108 - ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_5f42a/fast && make: Warning: File 'Makefile' has modification time 7.1 s in the future]  
109 - ignore line: [/usr/bin/make -f CMakeFiles/cmTC_5f42a.dir/build.make CMakeFiles/cmTC_5f42a.dir/build] 108 + ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_9575b/fast && make: Warning: File 'Makefile' has modification time 0.079 s in the future]
  109 + ignore line: [/usr/bin/make -f CMakeFiles/cmTC_9575b.dir/build.make CMakeFiles/cmTC_9575b.dir/build]
110 ignore line: [make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'] 110 ignore line: [make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp']
111 - ignore line: [make[1]: Warning: File 'CMakeFiles/cmTC_5f42a.dir/flags.make' has modification time 7.1 s in the future]  
112 - ignore line: [Building C object CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o]  
113 - ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -o CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -c /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c] 111 + ignore line: [make[1]: Warning: File 'CMakeFiles/cmTC_9575b.dir/flags.make' has modification time 0.075 s in the future]
  112 + ignore line: [Building C object CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o]
  113 + ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -o CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -c /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c]
114 ignore line: [Using built-in specs.] 114 ignore line: [Using built-in specs.]
115 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc] 115 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc]
116 ignore line: [Target: arm-cortexa9-linux-gnueabihf] 116 ignore line: [Target: arm-cortexa9-linux-gnueabihf]
117 ignore line: [Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl -Bstatic -lstdc++ -Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long] 117 ignore line: [Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl -Bstatic -lstdc++ -Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long]
118 ignore line: [Thread model: posix] 118 ignore line: [Thread model: posix]
119 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ] 119 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ]
120 - ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
121 - ignore line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1 -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_REENTRANT /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -std=gnu99 -version -o /tmp/ccMabtGh.s] 120 + ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  121 + ignore line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1 -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_REENTRANT /usr/local/share/cmake-3.24/Modules/CMakeCCompilerABI.c -quiet -dumpbase CMakeCCompilerABI.c -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -std=gnu99 -version -o /tmp/cc3aHeBE.s]
122 ignore line: [GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)] 122 ignore line: [GNU C (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)]
123 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3] 123 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3]
124 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] 124 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
@@ -137,15 +137,15 @@ Parsed C implicit link information from above output: @@ -137,15 +137,15 @@ Parsed C implicit link information from above output:
137 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3] 137 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3]
138 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] 138 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
139 ignore line: [Compiler executable checksum: eeb0d0cd8c4112e84e5c64edda5289df] 139 ignore line: [Compiler executable checksum: eeb0d0cd8c4112e84e5c64edda5289df]
140 - ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
141 - ignore line: [ /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o /tmp/ccMabtGh.s] 140 + ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  141 + ignore line: [ /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o /tmp/cc3aHeBE.s]
142 ignore line: [GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1] 142 ignore line: [GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1]
143 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/] 143 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/]
144 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/] 144 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/]
145 - ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
146 - ignore line: [Linking C executable cmTC_5f42a]  
147 - ignore line: [/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5f42a.dir/link.txt --verbose=1]  
148 - ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -rdynamic CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -o cmTC_5f42a ] 145 + ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-o' 'CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o' '-c' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  146 + ignore line: [Linking C executable cmTC_9575b]
  147 + ignore line: [/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9575b.dir/link.txt --verbose=1]
  148 + ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc -pthread -std=gnu99 -lm -ldl -lstdc++ -v -rdynamic CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -o cmTC_9575b ]
149 ignore line: [Using built-in specs.] 149 ignore line: [Using built-in specs.]
150 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc] 150 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-gcc]
151 ignore line: [COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] 151 ignore line: [COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper]
@@ -155,13 +155,13 @@ Parsed C implicit link information from above output: @@ -155,13 +155,13 @@ Parsed C implicit link information from above output:
155 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ] 155 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ]
156 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/] 156 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/]
157 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/] 157 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/]
158 - ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-rdynamic' '-o' 'cmTC_5f42a' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
159 - link line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccl77azl.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_5f42a /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib -lm -ldl -lstdc++ CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lpthread -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o] 158 + ignore line: [COLLECT_GCC_OPTIONS='-pthread' '-std=gnu99' '-v' '-rdynamic' '-o' 'cmTC_9575b' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  159 + link line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccYDc8uH.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lpthread -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_9575b /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib -lm -ldl -lstdc++ CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o -lgcc --as-needed -lgcc_s --no-as-needed -lpthread -lc -lgcc --as-needed -lgcc_s --no-as-needed /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o]
160 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2] ==> ignore 160 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2] ==> ignore
161 arg [-plugin] ==> ignore 161 arg [-plugin] ==> ignore
162 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so] ==> ignore 162 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so] ==> ignore
163 arg [-plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] ==> ignore 163 arg [-plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] ==> ignore
164 - arg [-plugin-opt=-fresolution=/tmp/ccl77azl.res] ==> ignore 164 + arg [-plugin-opt=-fresolution=/tmp/ccYDc8uH.res] ==> ignore
165 arg [-plugin-opt=-pass-through=-lgcc] ==> ignore 165 arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
166 arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore 166 arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
167 arg [-plugin-opt=-pass-through=-lpthread] ==> ignore 167 arg [-plugin-opt=-pass-through=-lpthread] ==> ignore
@@ -179,7 +179,7 @@ Parsed C implicit link information from above output: @@ -179,7 +179,7 @@ Parsed C implicit link information from above output:
179 arg [-m] ==> ignore 179 arg [-m] ==> ignore
180 arg [armelf_linux_eabi] ==> ignore 180 arg [armelf_linux_eabi] ==> ignore
181 arg [-o] ==> ignore 181 arg [-o] ==> ignore
182 - arg [cmTC_5f42a] ==> ignore 182 + arg [cmTC_9575b] ==> ignore
183 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] 183 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o]
184 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] 184 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o]
185 arg [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] ==> obj [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] 185 arg [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] ==> obj [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o]
@@ -191,7 +191,7 @@ Parsed C implicit link information from above output: @@ -191,7 +191,7 @@ Parsed C implicit link information from above output:
191 arg [-lm] ==> lib [m] 191 arg [-lm] ==> lib [m]
192 arg [-ldl] ==> lib [dl] 192 arg [-ldl] ==> lib [dl]
193 arg [-lstdc++] ==> lib [stdc++] 193 arg [-lstdc++] ==> lib [stdc++]
194 - arg [CMakeFiles/cmTC_5f42a.dir/CMakeCCompilerABI.c.o] ==> ignore 194 + arg [CMakeFiles/cmTC_9575b.dir/CMakeCCompilerABI.c.o] ==> ignore
195 arg [-lgcc] ==> lib [gcc] 195 arg [-lgcc] ==> lib [gcc]
196 arg [--as-needed] ==> ignore 196 arg [--as-needed] ==> ignore
197 arg [-lgcc_s] ==> lib [gcc_s] 197 arg [-lgcc_s] ==> lib [gcc_s]
@@ -223,20 +223,18 @@ Parsed C implicit link information from above output: @@ -223,20 +223,18 @@ Parsed C implicit link information from above output:
223 Detecting CXX compiler ABI info compiled with the following output: 223 Detecting CXX compiler ABI info compiled with the following output:
224 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp 224 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp
225 225
226 -Run Build Command(s):/usr/bin/make -f Makefile cmTC_9bf83/fast && make: Warning: File 'Makefile' has modification time 6.9 s in the future  
227 -/usr/bin/make -f CMakeFiles/cmTC_9bf83.dir/build.make CMakeFiles/cmTC_9bf83.dir/build 226 +Run Build Command(s):/usr/bin/make -f Makefile cmTC_e89fc/fast && /usr/bin/make -f CMakeFiles/cmTC_e89fc.dir/build.make CMakeFiles/cmTC_e89fc.dir/build
228 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 227 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
229 -make[1]: Warning: File 'CMakeFiles/cmTC_9bf83.dir/flags.make' has modification time 6.9 s in the future  
230 -Building CXX object CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o  
231 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -o CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp 228 +Building CXX object CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o
  229 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -o CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp
232 Using built-in specs. 230 Using built-in specs.
233 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ 231 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++
234 Target: arm-cortexa9-linux-gnueabihf 232 Target: arm-cortexa9-linux-gnueabihf
235 Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c,c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long 233 Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c,c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long
236 Thread model: posix 234 Thread model: posix
237 gcc version 4.9.3 (ctng-1.21.0-229g-FA) 235 gcc version 4.9.3 (ctng-1.21.0-229g-FA)
238 -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
239 - /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1plus -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_GNU_SOURCE /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -version -o /tmp/ccCe9Fbm.s 236 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  237 + /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1plus -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_GNU_SOURCE /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -version -o /tmp/ccHxxMqH.s
240 GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf) 238 GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)
241 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3 239 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3
242 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 240 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
@@ -261,15 +259,15 @@ GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf) @@ -261,15 +259,15 @@ GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)
261 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3 259 compiled by GNU C version 4.8.4, GMP version 6.0.0, MPFR version 3.1.3, MPC version 1.0.3
262 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 260 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
263 Compiler executable checksum: 3ff7ac3bbb22638e38898d02aefebadb 261 Compiler executable checksum: 3ff7ac3bbb22638e38898d02aefebadb
264 -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
265 - /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccCe9Fbm.s 262 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  263 + /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccHxxMqH.s
266 GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1 264 GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1
267 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/ 265 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/
268 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/ 266 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/
269 -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
270 -Linking CXX executable cmTC_9bf83  
271 -/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9bf83.dir/link.txt --verbose=1  
272 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -rdynamic CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_9bf83 267 +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  268 +Linking CXX executable cmTC_e89fc
  269 +/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e89fc.dir/link.txt --verbose=1
  270 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -rdynamic CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_e89fc
273 Using built-in specs. 271 Using built-in specs.
274 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ 272 COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++
275 COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper 273 COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper
@@ -279,11 +277,9 @@ Thread model: posix @@ -279,11 +277,9 @@ Thread model: posix
279 gcc version 4.9.3 (ctng-1.21.0-229g-FA) 277 gcc version 4.9.3 (ctng-1.21.0-229g-FA)
280 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/ 278 COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/
281 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/ 279 LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/
282 -COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_9bf83' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'  
283 - /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccnVmSVo.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_9bf83 /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o  
284 -make[1]: warning: Clock skew detected. Your build may be incomplete. 280 +COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_e89fc' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu'
  281 + /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/cc7vzHrK.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_e89fc /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o
285 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 282 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
286 -make: warning: Clock skew detected. Your build may be incomplete.  
287 283
288 284
289 285
@@ -312,20 +308,18 @@ Parsed CXX implicit link information from above output: @@ -312,20 +308,18 @@ Parsed CXX implicit link information from above output:
312 link line regex: [^( *|.*[/\])(arm-cortexa9-linux-gnueabihf-ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] 308 link line regex: [^( *|.*[/\])(arm-cortexa9-linux-gnueabihf-ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
313 ignore line: [Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp] 309 ignore line: [Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp]
314 ignore line: [] 310 ignore line: []
315 - ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_9bf83/fast && make: Warning: File 'Makefile' has modification time 6.9 s in the future]  
316 - ignore line: [/usr/bin/make -f CMakeFiles/cmTC_9bf83.dir/build.make CMakeFiles/cmTC_9bf83.dir/build] 311 + ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_e89fc/fast && /usr/bin/make -f CMakeFiles/cmTC_e89fc.dir/build.make CMakeFiles/cmTC_e89fc.dir/build]
317 ignore line: [make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'] 312 ignore line: [make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp']
318 - ignore line: [make[1]: Warning: File 'CMakeFiles/cmTC_9bf83.dir/flags.make' has modification time 6.9 s in the future]  
319 - ignore line: [Building CXX object CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o]  
320 - ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -o CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp] 313 + ignore line: [Building CXX object CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o]
  314 + ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -o CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -c /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp]
321 ignore line: [Using built-in specs.] 315 ignore line: [Using built-in specs.]
322 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++] 316 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++]
323 ignore line: [Target: arm-cortexa9-linux-gnueabihf] 317 ignore line: [Target: arm-cortexa9-linux-gnueabihf]
324 ignore line: [Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl -Bstatic -lstdc++ -Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long] 318 ignore line: [Configured with: /work/toolchain/build/src/gcc-4.9.3/configure --build=x86_64-build_pc-linux-gnu --host=x86_64-build_pc-linux-gnu --target=arm-cortexa9-linux-gnueabihf --prefix=/opt/FriendlyARM/toolchain/4.9.3 --with-sysroot=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-languages=c c++ --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=vfpv3 --with-float=hard --with-pkgversion=ctng-1.21.0-229g-FA --with-bugurl=http://www.friendlyarm.com/ --enable-__cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --with-gmp=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpfr=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-mpc=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-isl=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-cloog=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --with-libelf=/work/toolchain/build/arm-cortexa9-linux-gnueabihf/buildtools --enable-lto --with-host-libstdcxx='-static-libgcc -Wl -Bstatic -lstdc++ -Bdynamic -lm' --enable-threads=posix --enable-linker-build-id --with-linker-hash-style=gnu --enable-plugin --enable-gold --disable-multilib --with-local-prefix=/opt/FriendlyARM/toolchain/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root --enable-long-long]
325 ignore line: [Thread model: posix] 319 ignore line: [Thread model: posix]
326 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ] 320 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ]
327 - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
328 - ignore line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1plus -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_GNU_SOURCE /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -version -o /tmp/ccCe9Fbm.s] 321 + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  322 + ignore line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/cc1plus -quiet -v -iprefix /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/ -isysroot /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root -D_GNU_SOURCE /usr/local/share/cmake-3.24/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpbase CMakeCXXCompilerABI.cpp -march=armv7-a -mtune=cortex-a9 -mfloat-abi=hard -mfpu=vfpv3 -mtls-dialect=gnu -auxbase-strip CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -version -o /tmp/ccHxxMqH.s]
329 ignore line: [GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)] 323 ignore line: [GNU C++ (ctng-1.21.0-229g-FA) version 4.9.3 (arm-cortexa9-linux-gnueabihf)]
330 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3] 324 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3]
331 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] 325 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
@@ -350,15 +344,15 @@ Parsed CXX implicit link information from above output: @@ -350,15 +344,15 @@ Parsed CXX implicit link information from above output:
350 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3] 344 ignore line: [ compiled by GNU C version 4.8.4 GMP version 6.0.0 MPFR version 3.1.3 MPC version 1.0.3]
351 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] 345 ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
352 ignore line: [Compiler executable checksum: 3ff7ac3bbb22638e38898d02aefebadb] 346 ignore line: [Compiler executable checksum: 3ff7ac3bbb22638e38898d02aefebadb]
353 - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
354 - ignore line: [ /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccCe9Fbm.s] 347 + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  348 + ignore line: [ /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/as -v -march=armv7-a -mfloat-abi=hard -mfpu=vfpv3 -meabi=5 -o CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccHxxMqH.s]
355 ignore line: [GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1] 349 ignore line: [GNU assembler version 2.25.1 (arm-cortexa9-linux-gnueabihf) using BFD version (ctng-1.21.0-229g-FA) 2.25.1]
356 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/] 350 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/]
357 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/] 351 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/]
358 - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
359 - ignore line: [Linking CXX executable cmTC_9bf83]  
360 - ignore line: [/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9bf83.dir/link.txt --verbose=1]  
361 - ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -rdynamic CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_9bf83 ] 352 + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  353 + ignore line: [Linking CXX executable cmTC_e89fc]
  354 + ignore line: [/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e89fc.dir/link.txt --verbose=1]
  355 + ignore line: [/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -v -rdynamic CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_e89fc ]
362 ignore line: [Using built-in specs.] 356 ignore line: [Using built-in specs.]
363 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++] 357 ignore line: [COLLECT_GCC=/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++]
364 ignore line: [COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] 358 ignore line: [COLLECT_LTO_WRAPPER=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper]
@@ -368,13 +362,13 @@ Parsed CXX implicit link information from above output: @@ -368,13 +362,13 @@ Parsed CXX implicit link information from above output:
368 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ] 362 ignore line: [gcc version 4.9.3 (ctng-1.21.0-229g-FA) ]
369 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/] 363 ignore line: [COMPILER_PATH=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../libexec/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/bin/]
370 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/] 364 ignore line: [LIBRARY_PATH=/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/:/usr/local/arm/4.9.3/bin/../lib/gcc/:/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib/:/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/]
371 - ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_9bf83' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']  
372 - link line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/ccnVmSVo.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_9bf83 /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o] 365 + ignore line: [COLLECT_GCC_OPTIONS='-v' '-rdynamic' '-o' 'cmTC_e89fc' '-shared-libgcc' '-march=armv7-a' '-mtune=cortex-a9' '-mfloat-abi=hard' '-mfpu=vfpv3' '-mtls-dialect=gnu']
  366 + link line: [ /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2 -plugin /usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so -plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper -plugin-opt=-fresolution=/tmp/cc7vzHrK.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --sysroot=/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root --build-id --eh-frame-hdr --hash-style=gnu -export-dynamic -dynamic-linker /lib/ld-linux-armhf.so.3 -X -m armelf_linux_eabi -o cmTC_e89fc /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3 -L/usr/local/arm/4.9.3/bin/../lib/gcc -L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib -L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtend.o /usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crtn.o]
373 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2] ==> ignore 367 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/collect2] ==> ignore
374 arg [-plugin] ==> ignore 368 arg [-plugin] ==> ignore
375 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so] ==> ignore 369 arg [/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/liblto_plugin.so] ==> ignore
376 arg [-plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] ==> ignore 370 arg [-plugin-opt=/usr/local/arm/4.9.3/bin/../libexec/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/lto-wrapper] ==> ignore
377 - arg [-plugin-opt=-fresolution=/tmp/ccnVmSVo.res] ==> ignore 371 + arg [-plugin-opt=-fresolution=/tmp/cc7vzHrK.res] ==> ignore
378 arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore 372 arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
379 arg [-plugin-opt=-pass-through=-lgcc] ==> ignore 373 arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
380 arg [-plugin-opt=-pass-through=-lc] ==> ignore 374 arg [-plugin-opt=-pass-through=-lc] ==> ignore
@@ -391,7 +385,7 @@ Parsed CXX implicit link information from above output: @@ -391,7 +385,7 @@ Parsed CXX implicit link information from above output:
391 arg [-m] ==> ignore 385 arg [-m] ==> ignore
392 arg [armelf_linux_eabi] ==> ignore 386 arg [armelf_linux_eabi] ==> ignore
393 arg [-o] ==> ignore 387 arg [-o] ==> ignore
394 - arg [cmTC_9bf83] ==> ignore 388 + arg [cmTC_e89fc] ==> ignore
395 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] 389 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crt1.o]
396 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] 390 arg [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o] ==> obj [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib/crti.o]
397 arg [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] ==> obj [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] 391 arg [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o] ==> obj [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/crtbegin.o]
@@ -400,7 +394,7 @@ Parsed CXX implicit link information from above output: @@ -400,7 +394,7 @@ Parsed CXX implicit link information from above output:
400 arg [-L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib] ==> dir [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib] 394 arg [-L/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib] ==> dir [/usr/local/arm/4.9.3/bin/../lib/gcc/arm-cortexa9-linux-gnueabihf/4.9.3/../../../../arm-cortexa9-linux-gnueabihf/lib]
401 arg [-L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib] ==> dir [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib] 395 arg [-L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib] ==> dir [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/lib]
402 arg [-L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib] ==> dir [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib] 396 arg [-L/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib] ==> dir [/usr/local/arm/4.9.3/bin/../arm-cortexa9-linux-gnueabihf/sys-root/usr/lib]
403 - arg [CMakeFiles/cmTC_9bf83.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore 397 + arg [CMakeFiles/cmTC_e89fc.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
404 arg [-lstdc++] ==> lib [stdc++] 398 arg [-lstdc++] ==> lib [stdc++]
405 arg [-lm] ==> lib [m] 399 arg [-lm] ==> lib [m]
406 arg [-lgcc_s] ==> lib [gcc_s] 400 arg [-lgcc_s] ==> lib [gcc_s]
@@ -431,15 +425,15 @@ Parsed CXX implicit link information from above output: @@ -431,15 +425,15 @@ Parsed CXX implicit link information from above output:
431 Detecting CXX [-std=c++14] compiler features compiled with the following output: 425 Detecting CXX [-std=c++14] compiler features compiled with the following output:
432 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp 426 Change Dir: /mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp
433 427
434 -Run Build Command(s):/usr/bin/make -f Makefile cmTC_75e7f/fast && make: Warning: File 'Makefile' has modification time 6.7 s in the future  
435 -/usr/bin/make -f CMakeFiles/cmTC_75e7f.dir/build.make CMakeFiles/cmTC_75e7f.dir/build 428 +Run Build Command(s):/usr/bin/make -f Makefile cmTC_3a26b/fast && make: Warning: File 'Makefile' has modification time 0.66 s in the future
  429 +/usr/bin/make -f CMakeFiles/cmTC_3a26b.dir/build.make CMakeFiles/cmTC_3a26b.dir/build
436 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 430 make[1]: Entering directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
437 -make[1]: Warning: File 'CMakeFiles/cmTC_75e7f.dir/flags.make' has modification time 6.7 s in the future  
438 -Building CXX object CMakeFiles/cmTC_75e7f.dir/feature_tests.cxx.o  
439 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -std=c++14 -o CMakeFiles/cmTC_75e7f.dir/feature_tests.cxx.o -c /mnt/hgfs/share/展架程序/build/CMakeFiles/feature_tests.cxx  
440 -Linking CXX executable cmTC_75e7f  
441 -/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_75e7f.dir/link.txt --verbose=1  
442 -/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -rdynamic CMakeFiles/cmTC_75e7f.dir/feature_tests.cxx.o -o cmTC_75e7f 431 +make[1]: Warning: File 'CMakeFiles/cmTC_3a26b.dir/flags.make' has modification time 0.65 s in the future
  432 +Building CXX object CMakeFiles/cmTC_3a26b.dir/feature_tests.cxx.o
  433 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -std=c++14 -o CMakeFiles/cmTC_3a26b.dir/feature_tests.cxx.o -c /mnt/hgfs/share/展架程序/build/CMakeFiles/feature_tests.cxx
  434 +Linking CXX executable cmTC_3a26b
  435 +/usr/local/bin/cmake -E cmake_link_script CMakeFiles/cmTC_3a26b.dir/link.txt --verbose=1
  436 +/usr/local/arm/4.9.3/bin/arm-cortexa9-linux-gnueabihf-g++ -rdynamic CMakeFiles/cmTC_3a26b.dir/feature_tests.cxx.o -o cmTC_3a26b
443 make[1]: 警告:检测到时钟错误。您的创建可能是不完整的。 437 make[1]: 警告:检测到时钟错误。您的创建可能是不完整的。
444 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp' 438 make[1]: Leaving directory '/mnt/hgfs/share/展架程序/build/CMakeFiles/CMakeTmp'
445 make: 警告:检测到时钟错误。您的创建可能是不完整的。 439 make: 警告:检测到时钟错误。您的创建可能是不完整的。
@@ -35,6 +35,10 @@ CMakeFiles/JZ_UART_APP.dir/Module/Gimbal/Gimbal_InAndOut.c.o: \ @@ -35,6 +35,10 @@ CMakeFiles/JZ_UART_APP.dir/Module/Gimbal/Gimbal_InAndOut.c.o: \
35 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/pthreadtypes.h \ 35 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/pthreadtypes.h \
36 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/alloca.h \ 36 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/alloca.h \
37 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/stdlib-float.h \ 37 /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/stdlib-float.h \
  38 + /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/pthread.h \
  39 + /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/sched.h \
  40 + /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/sched.h \
  41 + /usr/local/arm/4.9.3/arm-cortexa9-linux-gnueabihf/sys-root/usr/include/bits/setjmp.h \
38 /mnt/hgfs/share/展架程序/./application/version_choose.h \ 42 /mnt/hgfs/share/展架程序/./application/version_choose.h \
39 /mnt/hgfs/share/展架程序/Module/Gimbal/Gimbal_H3/Gimbal_H3.h \ 43 /mnt/hgfs/share/展架程序/Module/Gimbal/Gimbal_H3/Gimbal_H3.h \
40 /mnt/hgfs/share/展架程序/Module/Gimbal/Gimbal_H3/Gimbal_H3_H150ST/Gimbal_H3_H150ST.h \ 44 /mnt/hgfs/share/展架程序/Module/Gimbal/Gimbal_H3/Gimbal_H3_H150ST/Gimbal_H3_H150ST.h \
@@ -40,4 +40,15 @@ CMakeFiles/JZ_UART_APP.dir/Module/Megaphone/Megaphone_InputAndOutput.c.o: \ @@ -40,4 +40,15 @@ CMakeFiles/JZ_UART_APP.dir/Module/Megaphone/Megaphone_InputAndOutput.c.o: \
40 /mnt/hgfs/share/展架程序/Module/Megaphone/opus/RecordVoice/Megaphone_RecordVoice.h \ 40 /mnt/hgfs/share/展架程序/Module/Megaphone/opus/RecordVoice/Megaphone_RecordVoice.h \
41 /mnt/hgfs/share/展架程序/Module/Megaphone/opus/RealTimeVoice/Megaphone_RealTimeVoice.h \ 41 /mnt/hgfs/share/展架程序/Module/Megaphone/opus/RealTimeVoice/Megaphone_RealTimeVoice.h \
42 /mnt/hgfs/share/展架程序/./Module/UI_control/UI_control.h \ 42 /mnt/hgfs/share/展架程序/./Module/UI_control/UI_control.h \
43 - /mnt/hgfs/share/展架程序/./Module/Ircut/ircut.h 43 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdkLib.h \
  44 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdkBase.h \
  45 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Logger/JZsdk_Logger.h \
  46 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Osal/JZsdk_FileSystm.h \
  47 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Osal/../JZsdk_Code/JZsdk_Code.h \
  48 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Delay/JZsdk_Delay.h \
  49 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Code/JZsdk_FLagCode.h \
  50 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_CommonFuntion/JZsdkCommonFuntion.h \
  51 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_CommonFuntion/JZsdk_string/JZsdk_string.h \
  52 + /mnt/hgfs/share/展架程序/./JZsdk/JZsdk_Base/JZsdk_Code/JZsdk_Code.h \
  53 + /mnt/hgfs/share/展架程序/./Module/Ircut/ircut.h \
  54 + /mnt/hgfs/share/展架程序/./application/version_choose.h
不能预览此文件类型
1 #!/bin/bash 1 #!/bin/bash
2 #1、输入分支名,账号,密码,描述信息 2 #1、输入分支名,账号,密码,描述信息
3 -branch_name="dev_00.00.01.02" 3 +branch_name="dev_00.00.01.03"
4 Account="PanHaoBin" 4 Account="PanHaoBin"
5 PassWord="ookk3866" 5 PassWord="ookk3866"
6 Message="00 00 01 02更新" 6 Message="00 00 01 02更新"