📄 h265vview_local0.h
字号:
/*
///////////////////////////////////////////////////////////////////////////////
// //
// Copyright (C) 2006-2008 Beijing, pengzhen (pengzhenxp@yahoo.com.cn) //
// //
///////////////////////////////////////////////////////////////////////////////
*/
#ifndef __H265V_VIEW_LOCAL0_H__
#define __H265V_VIEW_LOCAL0_H__
#define MV_SIZE (16)
#define MV_width(a) ((a)/MV_SIZE)
#define MV_height(a) ((a)/MV_SIZE)
#define MV_stride(a) (((a)/8)*8)
#define m_iVideo_Resource_Width ( 352 )
#define m_iVideo_Resource_Height ( 288 )
#define m_iVideo_Resource_Size0 ( m_iVideo_Resource_Width*m_iVideo_Resource_Height ) /* video */
#define m_iVideo_Resource_Size ( m_iVideo_Resource_Size0*3/2 )
#define m_iAudio_Resource_Size0 ( 1152 ) /* audio */
#define m_iAudio_Resource_Size ( m_iAudio_Resource_Size0*sizeof(short) )
#define audio_wave_header_size ( 44 ) /* wave header size */
#define get_scale(a,b) (b) ? (1<<12)*(a)/(b) : 0
#define get_xy(a,b) (((a)*(b))>>12)
#define acquire_exclusive() ::EnterCriticalSection( m_csViewLock )
#define release_exclusive() ::LeaveCriticalSection( m_csViewLock )
#ifdef __USE_THREAD__
#define StartView() if(m_hViewThread){m_ViewMilliSecond = 40; ::ResumeThread( m_hViewThread );} /* 25 f/s */
#define StopView() if(m_hViewThread){m_ViewMilliSecond = 0; ::SuspendThread( m_hViewThread );}
#else
#define StartView() if( !m_uTimer ) { m_uTimer = SetTimer(10000,40,NULL); }/* 25 f/s */
#define StopView() if( m_uTimer ) { KillTimer(m_uTimer); m_uTimer = 0; }
#endif //__USE_THREAD__
#define CursorIF() ((m_pProcessShareData->m_bDrawMatrix|m_bHistogram)&m_bSendWnd) | \
((m_pProcessShareData->m_bDrawMatrix|m_bHistogram)&m_bRecieveWnd)
#define GET_YUYV() m_dvp_pack_yuv420( m_pVideo_Y, m_iVideo_Width, \
m_pVideo_U, \
m_pVideo_V, (m_iVideo_Width>>1), \
m_pMediaVideoRenderer->m_pSurfaceAddress, \
m_iVideo_Width,m_iVideo_Height, \
m_pMediaVideoRenderer->m_pitch ) ; \
//#define hmpv_read_fcnt() ( clock() )
#define hmpv_read_fcnt() ( GetTickCount() )
#define BeginVideoView() m_iVideoFrames =0 ; \
if( m_device_Video ) { m_iVideoTotalFramesWork = m_iVideoTotalFrames ; \
m_pVideoFile.SeekToBegin() ; } \
else { m_iVideoTotalFramesWork = m_iVideoTotalFramesResource ; \
m_pVideo_Resource_Work = m_pVideo_Resource ; }
#define BeginAudioView() m_iAudioFrames =0 ; \
if( m_device_Audio ) { m_iAudioTotalFramesWork = m_iAudioTotalFrames ; \
m_pAudioFile.SeekToBegin() ; /* wave header size */ \
m_pAudioFile.Seek( audio_wave_header_size, CFile::current ) ; } \
else { m_iAudioTotalFramesWork = m_iAudioTotalFramesResource ; \
m_pAudio_Resource_Work = m_pAudio_Resource ; }
#define BeginView() BeginVideoView() BeginAudioView()
#endif //__H265V_VIEW_LOCAL0_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -