📄 myendpoint.h
字号:
/*
VIS H.323 Video Conference System
--Sample for VIS H.323 DLL Library 2.1 Release
For more information,visit our homepage
[http://www.115studio.com]
or mail to us for tech support and bug report
[support@115studio.com]
2000-2004 115Studio
2004-04-05
*/
#ifndef _MYENDPOINT_H_
#define _MYENDPOINT_H_
#include "..\lib\h323exp.h"
#include "..\lib\ILSexp.h"
class CVISConfDlg;
class CMyEndPoint;
///////////
class CMyVideoGrabber:public CVideoGrabber
{
public:
CMyVideoGrabber(){m_pep=NULL;}
virtual void OnStream(BYTE *frame,int width,int height);
CMyEndPoint *m_pep;
};
/////////////
class CMyEndPoint : public CH323EndPoint
{
public:
CMyEndPoint(CVISConfDlg &dlg);
virtual ~CMyEndPoint();
BOOL StartRemoteAudio();
BOOL StopRemoteAudio();
BOOL StartLocalAudio();
BOOL StopLocalAudio();
BOOL StartRemoteVideo();
BOOL StopRemoteVideo();
BOOL StartLocalVideo();
BOOL StopLocalVideo();
static DWORD WINAPI RemoteVideoThreadProc(LPVOID param);
static DWORD WINAPI RemoteAudioThreadProc(LPVOID param);
static DWORD WINAPI LocalAudioThreadProc(LPVOID param);
//
virtual void OnAnswerCall(DWORD connID,const char *RoomID);
virtual void OnWaitForAnswer(DWORD connID);
virtual void OnConnectionCleared(DWORD connID, DWORD duration,enum CallEndReason reason);
virtual void OnConnectionEstablished(DWORD connID);
virtual BOOL OnRenderAudioFrame(DWORD connID,BYTE* frame,int len);
virtual BOOL OnReadAudioFrame(DWORD connID,BYTE* frame,int len);
virtual BOOL OnAudioStop(DWORD connID, BOOL outgoing,const char *CodecName);
virtual BOOL OnAudioStart(DWORD connID,BOOL outgoing,const char *CodecName);
virtual BOOL OnRenderVideoFrame(DWORD connID,BYTE *frame, int width, int height);
virtual BOOL OnReadVideoFrame(DWORD connID,BYTE* frame,int width,int height);
virtual BOOL OnVideoStop(DWORD connID,BOOL outgoing,const char *CodecName);
virtual BOOL OnVideoStart(DWORD connID,BOOL outgoing,const char* CodecName);
virtual void OnReceiveUserInput(DWORD connID,const char* value);
virtual void OnUseGatekeeper(enum UseGKResult result,const char* name_GK);
CAudioMixer m_AudioMixer;
CVideoMixer m_VideoMixer;
CVISConfDlg &m_dlg;
CMyVideoGrabber m_VideoGrabber;
CAudioPlayer m_AudioPlayer;
CAudioRecorder m_AudioRecorder;
HANDLE m_hRemoteVideoThread;
BOOL m_bStopRemoteVideoThread;
HANDLE m_hRemoteAudioThread;
BOOL m_bStopRemoteAudioThread;
HANDLE m_hLocalAudioThread;
BOOL m_bStopLocalAudioThread;
};
class CILSClientWnd;
///////////////////
class CMyILSClient:public CILSClient
{
public:
CMyILSClient(CILSClientWnd &IlsWnd);
virtual ~CMyILSClient();
virtual void OnEnumUsers(DWORD id, DWORD result, USER_INFO &ui);
virtual void OnUpdate(DWORD id, DWORD result);
virtual void OnUnregister(DWORD id, DWORD result);
virtual void OnRegister(DWORD id, DWORD result);
virtual void OnGetUserInfo(DWORD id, DWORD result, USER_INFO &ui);
virtual void OnEnumUserNames(DWORD id, DWORD result, const char *name);
virtual void OnUserStateChanged(DWORD state, const char *server);
CILSClientWnd& m_IlsWnd;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -