摘要:学习如何使用实时通信(RTC)API创建音频与视频会议、共享应用程序、共享白板、简单的点对点聊天对话以及整合音频与视频调节向导的接口。实时通信API为任何基于Microsoft Windows XP的应用程序提供了卓越的基于个人计算机的通信性能--即时消息、音频与视频会议、应用程序的共享/协作。
样例代码说明了使用实时通信(RTC)API的优点,非常方便的产生音频与视频会议、共享应用程序、共享白板、简单的点对点聊天对话以及音频与视频调节向导的接口。 但是在本文中不会讨论其他的通过实时通信RTC生效的性能,比如声学回波消除(AEC)、向前纠错(FEC)、带宽测定、动态抖动缓冲器治理、自动增益控制(AGC)和质量控制(QC)算法等。上面这些特性请参阅 Media Support in the Microsoft Windows Real-Time Communications Client实时通信客户端接口
// Set the listen mode for RTC client // RTCLM_BOTH opens the standard Sip port 5060, as well as // a dynamic port. hr = m_pClient->put_ListenForIncomingSessions(RTCLM_BOTH); 在一个会话期间,音频与视频媒体类型可以被添加也可以被删除,所以客户端必须监听这些事件类型。请参阅本文"处理实时流会话事件"部分获取关于状态改变和事件处理的内容。处理实时通信事件
// Based on the RTC_EVENT type, query for the // appropriate event interface and call a helper // method to handle the event switch ( wParam ) { …. …. …. case RTCE_MEDIA: { IRTCMediaEvent * pEvent = NULL;
if ((m_AVDlg) && (m_AVDlg.GetState () != RTCSS_IDLE)) { // Deliver the media state to the session window m_AVDlg.DeliverMedia(lMediaType, enType, enReason); } } 强度事件