| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /*************************************************************************
- 【文件名】 Mixer.h
- 【功能模块和目的】 呼叫通道混音器类头文件
- 【开发者及日期】 郑石诺 2015/05/15
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- #include "IMixerHost.h"
- class CDspChannel;
- class CChannelResource;
- /*************************************************************************
- 【类名】 CMixer
- 【功能】
- 【接口说明】 呼叫通道混音器类
- 【开发者及日期】 郑石诺 2015/05/15
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class CMixer
- {
- public:
- CMixer(IMixerHost& Host);
- ~CMixer(void);
- bool allowedMonitor(void) const { return m_pMonitorChan == NULL; }
- //{ return m_pRecordDsp == NULL && m_pMonitorChan == NULL; }
- // 操作接口
- bool playSound(PlayVoiceContent* pContent); // 放音收号
- bool playTone(int Type); // 播放信号音
- bool playStop(void); // 停止放音
- bool startRecord(RecordContent* pContent); // 开始录音
- bool stopRecord(void); // 停止录音
- void release(void); // 释放所有资源
- bool setupMonitor(CChannelResource* pMonitorParty); // 建立监听
- bool undoMonitor(CChannelResource* pMonitorParty); // 撤销监听
- // voice处理接口
- void onPlayEnd(LPCTSTR lpDtmf);
- void onRecEnd(UINT TaskId);
- void onToneEnd(int ToneTp);
- private:
- bool __attachPlayDsp(void);
- void __detachPlayDsp(void);
- bool __attachRecordDsp(void);
- void __detachRecordDsp(void);
- private:
- IMixerHost& m_Host;
- CDspChannel* m_pPlayDsp;
- CDspChannel* m_pRecordDsp;
- CChannelResource* m_pMonitorChan;
- };
|