コード例 #1
0
int dvr_thmb_getPlayingTime(cdvr_thmb_t *pdvr)
{
	int ret = -1;
	if(pdvr->dispMode == DISP_VIDEO_SCREEN) {
		SINT32 time = ExtGpVideoEngineGetCurTime();
		printf("get cur time: %d\n", time);
		pdvr->pVideoInfo->play_time = time;

		//ret = ExtGpVideoEngineGetPlayingStatus();
		//printf("get video decode status: %d\n", ret);

		if(g_VideoEnd) {
			printf("%s:%d, play video end %d\n", __FUNCTION__, __LINE__, g_VideoEnd);
			//pdvr->pVideoInfo->play_time = -1;
		}
		ret = 0;
	}
	return ret;
}
コード例 #2
0
ファイル: playback_pipe.c プロジェクト: go2ev-devteam/GPCV
int dvr_thmb_getPlayingTime(void)
{
	int ret = -1;
	if(g_cdvr == NULL) {
		return ret;
	}
	pthread_mutex_lock(&g_cdvr->pb_mutex);
	if(g_cdvr->dispMode == DISP_VIDEO_SCREEN) {
		if(g_cdvr->pVideoInfo->videoMode != VIDEO_OPEN && g_cdvr->pVideoInfo->videoMode != VIDEO_PAUSE) {
			SINT32 time = ExtGpVideoEngineGetCurTime();
			printf("%s:%d time %ld gtime: %ld\n", __FUNCTION__, __LINE__, time, g_cdvr->pVideoInfo->play_time);
			if(g_cdvr->pVideoInfo->show_time != g_cdvr->pVideoInfo->play_time) {
				g_cdvr->pVideoInfo->show_time = g_cdvr->pVideoInfo->play_time;
				ret = 0;
			}
			else {
				ret = -1;
			}
		}

		if(g_VideoEnd) {
			g_VideoEnd = 0;
			ExtGpVideoEngineStop();
			g_cdvr->pVideoInfo->videoMode = VIDEO_OPEN;
			g_cdvr->pVideoInfo->speed = 0;
		//	dvr_thmb_dispFullScreen(g_cdvr);
			dvr_thmb_dispFullScreen_Replace(g_cdvr);
			printf("%s:%d\n", __FUNCTION__, __LINE__);
			//g_vid_vol = ExtGpVideoEngineGetVolume();
			Dsp_Open();
			ExtGpVideoEngineSetVolume(g_sys_vol);
			ret = 0;
		}
	}
	pthread_mutex_unlock(&g_cdvr->pb_mutex);
	return ret;
}