通过阅读本文,您可以了解到Windows SDK的IAliEngineMediaEngine接口详情。

目录

媒体引擎接口

API 描述 支持的最低版本
RegisterVideoSampleObserver 订阅视频数据输出。 2.1
UnRegisterVideoSampleObserver 取消订阅视频数据输出。 2.1
RegisterLocalVideoTextureObserver 订阅本地视频纹理数据。 2.1
UnRegisterLocalVideoTextureObserver 取消本地视频纹理数据输出。 2.1
RegisterAudioFrameObserver 订阅音频数据输出。 2.1
UnRegisterAudioFrameObserver 取消音频数据输出。 2.1
RegisterAudioEventObserver 订阅音频事件(默认订阅)。 2.1
UnRegisterAudioEventObserver 取消订阅音频事件。 2.1
SetSubscribeAudioNumChannel 设置输出音频声道数(混音前数据不支持该参数设置)。 2.1
SetSubscribeAudioSampleRate 设置输出音频采样率(混音前数据不支持该参数设置)。 2.1
SubscribeAudioData 订阅音频数据。 2.1
UnsubscribeAudioData 取消订阅音频数据。 2.1
SetExternalVideoSource 启用外部视频输入源。 2.1
PushExternalVideoFrame 输入视频数据。 2.1
SetExternalAudioSource 设置是否启用外部音频输入源。 2.1
PushExternalAudioFrameRawData 输入音频数据。 2.1
SetExternalAudioPublishVolume 设置混音音量。 2.1
GetExternalAudioPublishVolume 获取混音音量。 2.1
SetMixedWithMic 设置是否与麦克风采集音频混合。 2.1
SetExteranlAudioRender 设置是否启用外部输入音频播放。 2.1
PushExternalAudioRenderRawData 输入外部音频播放数据。 2.1
SetExternalAudioRenderVolume 设置音频外部播放源音量。 2.1
GetExternalAudioRenderVolume 获取音频外部播放源音量。 2.1

接口详情

  • RegisterVideoSampleObserver:订阅视频数据输出。
    void RegisterVideoSampleObserver(IVideoFrameObserver* observer);
    参数说明
    名称 类型 描述
    observer IVideoFrameObserver* 视频数据接收对象。
    说明 输出数据将通过IVideoFrameObserver回调返回。
  • UnRegisterVideoSampleObserver:取消订阅视频数据输出。
    void UnRegisterVideoSampleObserver(IVideoFrameObserver* observer);
    参数说明
    名称 类型 描述
    observer IVideoFrameObserver* 视频数据接收对象。
  • RegisterLocalVideoTextureObserver:订阅本地视频纹理数据。
    void RegisterLocalVideoTextureObserver(IVideoTextureObserver* observer);
    参数说明
    名称 类型 描述
    observer IVideoTextureObserver* 视频数据接收对象。
    说明 输出数据将通过IVideoTextureObserver回调返回。
  • UnRegisterLocalVideoTextureObserver:取消本地视频纹理数据输出。
    void UnRegisterLocalVideoTextureObserver(IVideoTextureObserver* observer);
    参数说明
    名称 类型 描述
    observer IVideoTextureObserver* 视频数据接收对象。
  • RegisterAudioFrameObserver:订阅音频数据输出。
    int RegisterAudioFrameObserver(IAudioFrameObserver* observer);
    参数说明
    名称 类型 描述
    observer IAudioFrameObserver* 音频数据接收对象。
  • UnRegisterAudioFrameObserver:取消音频数据输出。
    void UnRegisterAudioFrameObserver(IAudioFrameObserver* observer);
    参数说明
    名称 类型 描述
    observer IAudioFrameObserver* 音频数据接收对象。
  • RegisterAudioEventObserver:订阅音频事件(默认订阅), 如音频啸叫。
    int RegisterAudioEventObserver();
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • UnRegisterAudioEventObserver:取消订阅音频事件。
    void UnRegisterAudioEventObserver();
  • SetSubscribeAudioNumChannel:设置输出音频声道数(混音前数据不支持该参数设置)。
    void SetSubscribeAudioNumChannel(AliEngineAudioNumChannelType audioNumChannel);
    参数说明
    名称 类型 描述
    audioNumChannel AliEngineAudioNumChannelType 声道数,默认单声道。
  • SetSubscribeAudioSampleRate:设置输出音频采样率(混音前数据不支持该参数设置)。
    void SetSubscribeAudioSampleRate(AliEngineAudioSampleRate audioSampleRate);
    参数说明
    名称 类型 描述
    audioSampleRate AliEngineAudioSampleRate 采样率,默认44.1kHz。
  • SubscribeAudioData:订阅音频数据。
    void SubscribeAudioData(AliEngineAudioSource audioSource);
    参数说明
    名称 类型 描述
    audioSource AliEngineAudioSource 音频数据源。
    说明 订阅音频数据输出前,需先通过SetSubscribeAudioNumChannelSetSubscribeAudioSampleRate设置输出音频数据参数。
  • UnsubscribeAudioData:取消订阅音频数据。
    void UnsubscribeAudioData(AliEngineAudioSource audioSource);
    参数说明
    名称 类型 描述
    audioSource AliEngineAudioSource 音频数据源。
  • SetExternalVideoSource:启用外部视频输入源。
    int SetExternalVideoSource(bool enable, bool useTexture, AliEngineVideoTrack type, AliEngineRenderMode renderMode);
    参数说明
    名称 类型 描述
    enable bool 是否启用外部视频输入源。取值:
    • true:开启。
    • false:关闭。
    useTexture bool 是否使用texture模式。
    type AliEngineVideoTrack 流类型。
    renderMode AliEngineRenderMode 渲染模式。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • PushExternalVideoFrame:输入视频数据。
    int PushExternalVideoFrame(const AliEngineVideoRawData &frame, AliEngineVideoTrack type);
    参数说明
    名称 类型 描述
    frame const AliEngineVideoRawData & 帧数据。
    type AliEngineVideoTrack 流类型。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • SetExternalAudioSource:设置是否启用外部音频输入源。
    int SetExternalAudioSource(bool enable, unsigned int sampleRate, unsigned int channelsPerFrame);
    参数说明
    名称 类型 描述
    enable bool 是否启用外部音频输入源。取值:
    • true:开启。
    • false(默认值):关闭。
    sampleRate unsigned int 采样率,例如16000Hz、48000Hz等。
    channelsPerFrame unsigned int 声道数,例如1或2。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • PushExternalAudioFrameRawData:输入音频数据。
    int PushExternalAudioFrameRawData(const void * data, unsigned int sampleLen, double timestamp);
    参数说明
    名称 类型 描述
    data const void * 音频数据,不建议超过40ms数据。
    sampleLen unsigned int 采样。
    timestamp double 时间戳。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • SetExternalAudioPublishVolume:设置混音音量。
    int SetExternalAudioPublishVolume(int vol);
    参数说明
    名称 类型 描述
    vol int 音量,取值范围:[0,100],默认值为50。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • GetExternalAudioPublishVolume:获取混音音量。
    int GetExternalAudioPublishVolume();
    返回说明

    返回当前混音音量。

  • SetMixedWithMic:设置是否与麦克风采集音频混合。
    int SetMixedWithMic(bool mixed);
    参数说明
    名称 类型 描述
    mixed bool 是否与麦克风采集音频混合。取值:
    • true(默认值):混音。
    • false:完全替换麦克风采集数据。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • SetExteranlAudioRender:设置是否启用外部输入音频播放。
    int SetExteranlAudioRender(bool enable, unsigned int sampleRate, unsigned int channelsPerFrame);
    参数说明
    名称 类型 描述
    enable bool 是否启用外部输入音频播放。取值:
    • true:开启。
    • false(默认值):关闭。
    sampleRate unsigned int 采样率,例如16kHz、48kHz等。
    channelsPerFrame unsigned int 声道数,例如1或2。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • PushExternalAudioRenderRawData:输入外部音频播放数据。
    int PushExternalAudioRenderRawData(const void* audioSamples, unsigned int sampleLength, unsigned int sampleRate, unsigned int channelsPerFrame, long long timestamp);
    参数说明
    名称 类型 描述
    audioSamples const void* 音频数据。
    sampleLength unsigned int 音频数据长度。
    sampleRate unsigned int 音频采样率。
    channelsPerFrame unsigned int 音频声道数。
    timestamp long long 时间戳。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • SetExternalAudioRenderVolume:设置音频外部播放源音量。
    int SetExternalAudioRenderVolume(int volScal);
    参数说明
    名称 类型 描述
    volScal int 音量,取值范围:[0,100],默认值为50。
    返回说明

    0表示方法调用成功,其他表示方法调用失败。

  • GetExternalAudioRenderVolume:获取音频外部播放源音量。
    int GetExternalAudioRenderVolume();
    返回说明

    0表示方法调用成功,其他表示方法调用失败。