ZegoAudioRoom
Typedefs | Enumerations | Functions
zego-api-external-audio-device.h File Reference
#include "zego-api-defines.h"
#include "audio_in_output.h"
#include "zego-api-audio-frame.h"

Go to the source code of this file.

Typedefs

typedef enum ZegoAuxPublishChannelAudioSrcType ZegoAuxPublishChannelAudioSrcType
 
typedef enum ZegoExternalAudioDeviceSourceType ZegoAudioDeviceSrcType
 

Enumerations

enum  ZegoAuxPublishChannelAudioSrcType { kZegoAuxPublishChannelAudioSrcTypeNone = -1 , kZegoAuxPublishChannelAudioSrcTypeSameAsMainPublishChannel = 0 , kZegoAuxPublishChannelAudioSrcTypeExternalCapture = 1 , kZegoAuxPublishChannelAudioSrcTypePlayer = 2 }
 
enum  ZegoExternalAudioDeviceSourceType {
  kZegoExternalAudioDeviceSourceTypeNone = -1 , kZegoExternalAudioDeviceSourceTypeSameAsMainPublishChannel = 0 , kZegoExternalAudioDeviceSourceTypeExternalCapture = 1 , kZegoExternalAudioDeviceSourceTypePlayer = 2 ,
  kZegoExternalAudioDeviceSourceTypeMIC = 3 , kZegoExternalAudioDeviceSourceTypeMediaCapture = 4
}
 

Functions

ZEGOAVKIT_API int zego_external_audio_device_enable (bool enable)
 
ZEGOAVKIT_API int zego_external_audio_device_set_audio_src_for_auxiliary_publish_channel (enum ZegoAuxPublishChannelAudioSrcType type)
 
ZEGOAVKIT_API int zego_external_audio_device_set_audio_source (int publish_channel_index, ZegoExternalAudioDeviceSourceType source_type)
 
ZEGOAVKIT_API int zego_external_audio_device_start_capture (int publish_channel_index)
 
ZEGOAVKIT_API int zego_external_audio_device_stop_capture (int publish_channel_index)
 
ZEGOAVKIT_API int zego_external_audio_device_on_record_audio_frame (int publish_channel_index, struct ZegoAudioFrame *audio_frame)
 
ZEGOAVKIT_API int zego_external_audio_device_start_render ()
 
ZEGOAVKIT_API int zego_external_audio_device_stop_render ()
 
ZEGOAVKIT_API int zego_external_audio_device_on_playback_audio_frame (struct ZegoAudioFrame *audio_frame)
 
ZEGOAVKIT_API int zego_external_audio_device_on_reference_audio_frame (struct ZegoAudioFrame *audio_frame)
 

Typedef Documentation

◆ ZegoAudioDeviceSrcType

推流通道音频采集源类别

◆ ZegoAuxPublishChannelAudioSrcType

辅助推流通道音频采集源类别

Deprecated:
废弃

Enumeration Type Documentation

◆ ZegoAuxPublishChannelAudioSrcType

辅助推流通道音频采集源类别

Deprecated:
废弃
Enumerator
kZegoAuxPublishChannelAudioSrcTypeNone 

无声

kZegoAuxPublishChannelAudioSrcTypeSameAsMainPublishChannel 

和主推流通道一样

kZegoAuxPublishChannelAudioSrcTypeExternalCapture 

使用外部采集

kZegoAuxPublishChannelAudioSrcTypePlayer 

使用媒体播放器的音源

◆ ZegoExternalAudioDeviceSourceType

推流通道音频采集源类别

Enumerator
kZegoExternalAudioDeviceSourceTypeNone 

关闭外部音源

kZegoExternalAudioDeviceSourceTypeSameAsMainPublishChannel 

和主推流通道一样

kZegoExternalAudioDeviceSourceTypeExternalCapture 

使用外部采集

kZegoExternalAudioDeviceSourceTypePlayer 

使用媒体播放器的音源

kZegoExternalAudioDeviceSourceTypeMIC 

使用麦克风,仅主推流通道可用

kZegoExternalAudioDeviceSourceTypeMediaCapture 

使用媒体采集工厂的音源

Function Documentation

◆ zego_external_audio_device_enable()

ZEGOAVKIT_API int zego_external_audio_device_enable ( bool  enable)

主推流通道外部音频采集开关

Parameters
enable是否启用外部音频采集
Returns
详见 enum ZegoErrorCode
Note
必须在开启预览或者启动推流/拉流 前调用才有效;
开发者采用外部采集和渲染后,SDK 内部不负责声音增强、噪音抑制、回音消除等功能,需要用户自己实现。
Deprecated:
请使用 zego_external_audio_device_set_audio_source 代替

◆ zego_external_audio_device_on_playback_audio_frame()

ZEGOAVKIT_API int zego_external_audio_device_on_playback_audio_frame ( struct ZegoAudioFrame *  audio_frame)

从 SDK 取音频渲染数据(PCM)

Parameters
audio_frame得到的音频数据
Returns
详见 enum ZegoErrorCode
Note
必须在启动拉流以后,且已经调用了 zego_external_audio_device_start_render API,此接口调用才有效
必须在反初始化 SDK 之前停止调用

◆ zego_external_audio_device_on_record_audio_frame()

ZEGOAVKIT_API int zego_external_audio_device_on_record_audio_frame ( int  publish_channel_index,
struct ZegoAudioFrame *  audio_frame 
)

把采集到的音频数据(AAC 或者 PCM) 塞给 SDK。

Parameters
publish_channel_index选定推流通道
audio_frame采集到的音频帧
Returns
详见 enum ZegoErrorCode
Note
必须在启动推流以后,且已经调用了 zego_external_audio_device_start_capture API,此接口调用才有效
必须在反初始化 SDK 之前停止调用

◆ zego_external_audio_device_on_reference_audio_frame()

ZEGOAVKIT_API int zego_external_audio_device_on_reference_audio_frame ( struct ZegoAudioFrame *  audio_frame)

把音频数据(PCM)塞给 SDK,用于外部渲染音频数据的回声消除参考数据

Parameters
audio_frame参考音频数据
Returns
详见 enum ZegoErrorCode
Note
必须在开启预览或者启动推流/拉流前,调用 SetConfig("ext_render_gen_ref_inner=false");
必须在启动拉流以后,此接口调用才有效
必须在反初始化 SDK 之前停止调用

◆ zego_external_audio_device_set_audio_source()

ZEGOAVKIT_API int zego_external_audio_device_set_audio_source ( int  publish_channel_index,
ZegoExternalAudioDeviceSourceType  source_type 
)

设置推流通道的音源

Parameters
publish_channel_index选定推流通道
source_type音频来源, 详见 ZegoExternalAudioDeviceSourceType 定义
Returns
详见 enum ZegoErrorCode
Note
必须在开启预览或者启动推流/拉流 前调用才有效
开发者采用外部采集和渲染后,SDK 内部不负责声音增强、噪音抑制、回音消除等功能,需要用户自己实现
当 publish_channel_index = 0 时表示主通道, 只支持外部采集方式
当 publish_channel_index = 1 时表示辅助通道, 支持三种音源模式, 和主推流通道一样, 使用外部采集, 使用媒体播放器的音源
当 publish_channel_index > 1 时, 当前只支持外部采集方式
当 source_type 选择 kZegoExternalAudioDeviceSourceTypeNone 时表示关闭外部音源, 主通道使用内部采集音源, 其他通道无音源

◆ zego_external_audio_device_set_audio_src_for_auxiliary_publish_channel()

ZEGOAVKIT_API int zego_external_audio_device_set_audio_src_for_auxiliary_publish_channel ( enum ZegoAuxPublishChannelAudioSrcType  type)

选择辅助推流通道的音频采集源

Parameters
type辅助推流通道音频采集源类别,参考 enum ZegoAuxPublishChannelAudioSrcType
Returns
详见 enum ZegoErrorCode
Note
必须在开启预览或者启动推流/拉流 前调用才有效;
Deprecated:
请使用 zego_external_audio_device_set_audio_source 代替

◆ zego_external_audio_device_start_capture()

ZEGOAVKIT_API int zego_external_audio_device_start_capture ( int  publish_channel_index)

开始外部音频采集(通知 SDK)

Parameters
publish_channel_index选定推流通道
Returns
详见 enum ZegoErrorCode

◆ zego_external_audio_device_start_render()

ZEGOAVKIT_API int zego_external_audio_device_start_render ( )

开始外部音频播放(通知 SDK)

Returns
详见 enum ZegoErrorCode

◆ zego_external_audio_device_stop_capture()

ZEGOAVKIT_API int zego_external_audio_device_stop_capture ( int  publish_channel_index)

结束外部音频采集(通知 SDK)

Parameters
publish_channel_index选定推流通道
Returns
详见 enum ZegoErrorCode

◆ zego_external_audio_device_stop_render()

ZEGOAVKIT_API int zego_external_audio_device_stop_render ( )

结束外部音频播放(通知 SDK)

Returns
详见 enum ZegoErrorCode