Эх сурвалжийг харах

Z991239-5930 #comment 完善下摄像头回显功能

80274480 8 сар өмнө
parent
commit
531c1f3a92

+ 4 - 1
Module/mod_sipphone/mod_sipphone.cpp

@@ -2441,7 +2441,7 @@ int CSIPEntity::StartCameraRender(int icamid, int ivideoview_x, int ivideoview_y
 	render_param.ilocal_view_cy = ivideoview_cy;
 	render_param.ilocal_view_x = ivideoview_x;
 	render_param.ilocal_view_y = ivideoview_y;
-	render_param.ilocal_render_queue = 1;
+	render_param.erender_queue = eSnapshot_Queue;
 
 	m_render->plocal_render = CreateVideoRenderObj(&t_callback);
 	LogWarn(Severity_Low, Error_Debug, EVENT_MOD_SIP_LOCAL_VIDEO_RENDER_CREATE, "local video render create.");
@@ -3079,6 +3079,8 @@ void CSIPPhoneSession::control_video( ControlVideoCommand_t *pCmd)
 				render_param.iremote_move = pCmd->remote_hwd_move;
 				render_param.ilocal_fresh_time = pCmd->local_fresh_time;
 				render_param.iremote_fresh_time = pCmd->remote_fresh_time;
+				render_param.erender_queue = ePreview_Queue;
+
 				start_video_render(&render_param, false);
 			}
 		} 
@@ -3129,6 +3131,7 @@ void CSIPPhoneSession::video_render(VideoRenderCommand_t* pCmd)
 		render_param.iremote_move = pCmd->remote_hwd_move;
 		render_param.ilocal_fresh_time = pCmd->local_fresh_time;
 		render_param.iremote_fresh_time = pCmd->remote_fresh_time;
+		render_param.erender_queue = ePreview_Queue;
 
 		start_video_render(&render_param, true);
 	}

+ 1 - 1
Module/mod_sipphone/video_render.cpp

@@ -151,7 +151,7 @@ void* rvc_videorender_func(void* arg)
 	int iwidth = 0;
 	int iheight = 0;
 	if (CAMERA_TYPE_ENV == irender_camera) {
-		if (0 == param->render_param.ilocal_render_queue) {
+		if (ePreview_Queue == param->render_param.erender_queue) {
 			local_video_queue = new Clibvideoqueue(REC_COMMON_VIDEO_ENV_SHM_PREVIEW_QUEUE);
 			iwidth = REC_COMMON_VIDEO_PREVIEW_WIDTH;
 			iheight = REC_COMMON_VIDEO_PREVIEW_HEIGHT;

+ 6 - 1
Module/mod_sipphone/video_render.h

@@ -12,6 +12,11 @@
 #define MAX_PATH 260
 #endif
 
+enum eVideoRenderQueue {
+	ePreview_Queue,
+	eSnapshot_Queue
+};
+
 typedef struct rvc_video_box_move_callback_s {
 	void (*on_video_box_move)(int imessagetype, int ivideotype, int ileft, int ibottom, void* user_data);
 	void* user_data;
@@ -43,7 +48,7 @@ typedef struct rvc_video_render_params_s {
 	int iremote_move; 
 	int ilocal_fresh_time;
 	int iremote_fresh_time;
-	int ilocal_render_queue;
+	eVideoRenderQueue erender_queue;
 }rvc_video_render_params_t;