Class ZegoExternalAudioDevice


  • public class ZegoExternalAudioDevice
    extends java.lang.Object
    外部音频设备类。

    Copyright © 2017 Zego. All rights reserved.

    • Constructor Detail

      • ZegoExternalAudioDevice

        public ZegoExternalAudioDevice()
    • Method Detail

      • enableExternalAudioDevice

        @Deprecated
        public static void enableExternalAudioDevice​(boolean enable)
        Deprecated.
        请使用 setAudioSource(int,int) 代替
        音频外部采集、渲染总开关。

        注意:1. 必须在开启预览/推流/拉流之前调用才有效;
        2. 当开启音频外部采集和渲染后,SDK 内部不负责声音增强、噪音抑制、回音消除等功能,需要用户自己实现

        Parameters:
        enable - true:开启,false:关闭。默认为false
      • setAudioSource

        public static int setAudioSource​(int publish_channel_index,
                                         int source_type)
        设置推流通道的音源

        注意:1. 必须在开启预览/推流/拉流之前调用才有效;
        2. 当开启音频外部采集和渲染后,SDK 内部不负责声音增强、噪音抑制、回音消除等功能,需要用户自己实现
        3. 当 publish_channel_index = 0 时表示主通道, 只支持外部采集方式
        4. 当 publish_channel_index = 1 时表示辅助通道, 支持三种音源, 和主推流通道一样, 使用外部采集, 使用媒体播放器的音源
        5. 当 publish_channel_index 大于 1 时, 只支持外部采集方式
        6. 当 source_type 选择 None 时表示关闭外部音源, 主通道使用内部采集音源, 其他通道无音源

        Parameters:
        publish_channel_index - 推流通道,参考 ZegoConstants.PublishChannelIndex
        source_type - 频采集源类别, 参考 ZegoExternalAudioDevice.AudioSourceType
        Returns:
        参考 ZegoConstants.ZegoAPIErrorCode
      • startCapture

        public static boolean startCapture()
        开启音频外部采集。

        注意:必须在InitSDK之后调用

        Returns:
        true:调用成功,false:调用失败
      • stopCapture

        public static boolean stopCapture()
        关闭音频外部采集。

        注意:必须在InitSDK之后调用

        Returns:
        true:调用成功,false:调用失败
      • startRender

        public static boolean startRender()
        开启音频外部渲染。

        注意:必须在InitSDK之后调用

        Returns:
        true:调用成功,false:调用失败
      • stopRender

        public static boolean stopRender()
        关闭音频外部渲染。

        注意:必须在InitSDK之后调用

        Returns:
        true:调用成功,false:调用失败
      • onRecordAudioFrame

        public static boolean onRecordAudioFrame​(ZegoAudioFrame audioFrame)
        发送外部采集数据(AAC 或者 PCM)。

        注意:必须先调用startCapture()开启音频外部采集,等待推流成功后再发送数据

        Parameters:
        audioFrame - 音频数据
        Returns:
        true:调用成功,false:调用失败
      • onRecordAudioFrame

        public static int onRecordAudioFrame​(int publish_channel_index,
                                             ZegoAudioFrame audioFrame)
        发送外部采集数据(AAC 或者 PCM)。

        注意:必须先调用startCapture()开启音频外部采集,等待推流成功后再发送数据

        Parameters:
        publish_channel_index - 推流通道,参考 ZegoConstants.PublishChannelIndex
        audioFrame - 音频数据
        Returns:
        true:调用成功,false:调用失败
      • onPlaybackAudioFrame

        public static boolean onPlaybackAudioFrame​(ZegoAudioFrame audioFrame)
        获取sdk采集的数据(PCM),用于外部渲染。

        注意:必须先调用startRender() 开启音频外部渲染,等待拉流成功后再获取数据

        Parameters:
        audioFrame - 音频数据
        Returns:
        true:调用成功,false:调用失败
      • onReferenceAudioFrame

        public static boolean onReferenceAudioFrame​(ZegoAudioFrame audioFrame)
        发送外部音频数据,用作对自定义渲染音频消除回声的参考。

        注意:必须先调用startCapture()开启音频外部采集,等待推流成功后再发送数据

        Parameters:
        audioFrame - 音频数据
        Returns:
        true:调用成功,false:调用失败