浏览代码

Z991239-4966 #comment 优化添加水印接口

80274480 1 年之前
父节点
当前提交
0a4af00167

+ 8 - 19
Module/mod_SalesRecorder/mod_SalesRecorder.cpp

@@ -322,7 +322,7 @@ void SalesRecordServiceSession::Handle_DeleteVideo(SpReqAnsContext<SalesRecorder
 void SalesRecordServiceSession::Handle_AppendWatermark(SpReqAnsContext<SalesRecorderSerVice_AppendWatermark_Req, SalesRecorderSerVice_AppendWatermark_Ans>::Pointer ctx)
 {
 	DbgToBeidou(ctx->link, __FUNCTION__)();
-	ErrorCodeEnum ErrorCode = m_pEntity->HandleVideoAppendWatermark(CSimpleStringW2A(ctx->Req.VideoName).GetData(), CSimpleStringW2A(ctx->Req.Watermark).GetData());
+	ErrorCodeEnum ErrorCode = m_pEntity->HandleVideoAppendWatermark(CSimpleStringW2A(ctx->Req.VideoName).GetData(), ctx->Req.Watermark.GetData());
 	ctx->Answer(ErrorCode);
 }
 
@@ -856,6 +856,7 @@ static unsigned long GetFileSize(const char* filename)
 	return statbuf.st_size;
 }
 
+
 ErrorCodeEnum CSalesRecorderEntity::SaveVideo( const char * videofilename)
 {
 	ErrorCodeEnum ErrorCode = Error_Succeed;
@@ -932,6 +933,7 @@ ErrorCodeEnum CSalesRecorderEntity::SaveVideo( const char * videofilename)
 	return ErrorCode;
 }
 
+
 CSimpleStringA CSalesRecorderEntity::GetTerminalStage()
 {
 	CSmartPointer<IEntityFunction> Func = GetFunction();
@@ -955,27 +957,23 @@ void CSalesRecorderEntity::SecureClientRelease()
 }
 
 
-// 请求InteractiveControl结束录像 add by ly 2018/03/12
 ErrorCodeEnum CSalesRecorderEntity::StopRecordVideo()
 {
 	auto rc = Error_Succeed;
 
 	auto pUIClient = new InteractiveControl::UIService_ClientBase(this);
 
-	if(pUIClient->Connect() != Error_Succeed)
-	{
+	if(pUIClient->Connect() != Error_Succeed){
 		pUIClient->SafeDelete();
 		pUIClient = NULL;
 		rc = Error_DevConnFailed;
 	}
-	else
-	{
+	else{
 		DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("UIClient connected success!");
 		InteractiveControl::UIService_StopRecordVideo_Req req;
 		InteractiveControl::UIService_StopRecordVideo_Ans ans;
 		rc = (*pUIClient)(EntityResource::getLink().upgradeLink())->StopRecordVideo(req, ans, 5000);
-		if(rc != Error_Succeed)
-		{
+		if(rc != Error_Succeed){
 			DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM)("Stop record video failed return 0x%08x", rc);
 		}
 
@@ -1212,24 +1210,15 @@ void CSalesRecorderEntity::HandleReturnMenu()
 }
 
 
-ErrorCodeEnum CSalesRecorderEntity::HandleVideoAppendWatermark(const char* pszVideoName, const char* pszWaterMark)
+ErrorCodeEnum CSalesRecorderEntity::HandleVideoAppendWatermark(const char* pszVideoName, const wchar_t* pszWaterMark)
 {
 	ErrorCodeEnum Error = Error_Failed;
 	if (NULL == pszWaterMark){
 		return Error_Param;
 	}
 
-	wchar_t* result[10] = { 0 };
-	auto arr1 = CSimpleStringA2W(pszWaterMark).Split('|');
-	auto arr2 = CAutoArray<CSimpleStringW>(arr1.GetCount());
-	int icount = sizeof(result) / sizeof(char*);
-	for (int i = 0; i < arr1.GetCount() && i < sizeof(result) / sizeof(char*); i++){
-		arr2[i] = CSimpleStringW(arr1[i]);
-		result[i] = (wchar_t*)arr2[i].GetData();
-	}
-
 	if (m_bStarted && (NULL != m_pRecorder)){
-		if (m_pRecorder->SetRightVideoWaterMark(result[1])) {
+		if (m_pRecorder->SetRightVideoWaterMark(pszWaterMark)) {
 			Error = Error_Succeed;
 		}
 	}

+ 1 - 1
Module/mod_SalesRecorder/mod_SalesRecorder.h

@@ -163,7 +163,7 @@ namespace SalesRecorder {
 		ErrorCodeEnum HandleSaveVideo();
 		ErrorCodeEnum HandleDeleteVideo();
 		void HandleReturnMenu();
-		ErrorCodeEnum HandleVideoAppendWatermark(const char* pszVideoName, const char* pszWaterMark);
+		ErrorCodeEnum HandleVideoAppendWatermark(const char* pszVideoName, const wchar_t* pszWaterMark);
 		ErrorCodeEnum HandleStartRecord(const char *pszMessage, const bool bRemoteRecord);
 		ErrorCodeEnum HandleSalesRecordEntityException(const char* pszMessage);
 		ErrorCodeEnum RealSelfCheck();

+ 1 - 1
Module/mod_interactivecontrol/mod_interactivecontrol.cpp

@@ -1415,7 +1415,7 @@ ErrorCodeEnum CITCtrlEntity::AppendWaterMark(CSimpleStringW strVideoName, CSimpl
 	}
 	else {
 		char strmsg[MAX_PATH] = { 0 };
-		_snprintf(strmsg, MAX_PATH, "append water mark failed for 0x%08x", rc);
+		snprintf(strmsg, MAX_PATH, "append water mark failed for 0x%08x", rc);
 		LogWarn(Severity_Middle, Error_Debug, LOG_EVT_RECORD_APPEND_WATERMARK_FAILED, strmsg);
 		DbgWithLink(LOG_LEVEL_ERROR, LOG_TYPE_USER).setLogCode("QLR040230BZ70501").setResultCode("RTA3B3D")(strmsg);
 	}

+ 3 - 1
Other/libvideorecord/libvideorecord.cpp

@@ -63,14 +63,16 @@ bool Clibvideorecord::ReNameVideoFile(const char*newfilename)
 	return true;
 }
 
-bool Clibvideorecord::SetRightVideoWaterMark(wchar_t* strWaterMark)
+bool Clibvideorecord::SetRightVideoWaterMark(const wchar_t* strWaterMark)
 {
 	bool bRet = false;
+
 	if (NULL == strWaterMark){
 		return bRet;
 	}
 
 	size_t ulen = wcslen(strWaterMark);
+
 	bRet = m_pImpl->setRightWaterMark(strWaterMark, ulen * sizeof(wchar_t));
 
 	return bRet;

+ 1 - 1
Other/libvideorecord/libvideorecord.h

@@ -161,7 +161,7 @@ public:
 	bool StopVideoRecord();			//退出
 	void CloseVideoFile();			//结束当前录像
 	bool ReNameVideoFile(const char*newfilename);         //session变化,修改当前录像文件名
-	bool SetRightVideoWaterMark(wchar_t* strWaterMark);	  //设置拼接后右侧视频的水印
+	bool SetRightVideoWaterMark(const wchar_t* strWaterMark);	  //设置拼接后右侧视频的水印
 
 	bool PauseRecord();				//暂停录像
 	bool ContinueRecord();			//继续录像