更新时间:2023-10-26 GMT+08:00
分享

原始视频数据(视频前后处理)

功能描述

音视频传输过程中,可以对采集到的音视频数据进行前处理和后处理,获取想要的播放效果。

对于有自行处理音视频数据需求的场景,HWRtcEngine SDK提供原始数据功能,您可以在将数据发送给编码器前进行前处理,对捕捉到的音频信号或视频帧进行修改,也可以在将数据发送给解码器后进行后处理,对接收到的音频信号或视频帧进行修改。

原始视频数据可以进行视频前处理,然后发送给远端。也可以进行视频后处理。

接口调用流程

实现原始视频数据(视频前后处理)

  1. 注册视频前后处理

    获取mHwRtcEngine的MediaEngine对象,调用setVideoFrameObserver方法进行注册。

    传入的参数是需要实现了IHRTCVideoFrameObserver的实例对象。

    从回调中获取视频帧,并进行处理。

    @Override
    public void onVideoFrameCapture(HRTCVideoFrame hrtcVideoFrame) {
        // 原始视频回调,从接口回调中取到原始视频数据以作前处理
    }
    
    @Override
    public void onVideoFrameRender(String s, HRTCVideoFrame hrtcVideoFrame) {
        // 原始视频数据处理后回调
    }
    
    @Override
    public boolean requireCaptureVideoFrame() {
        // 是否需要开启前处理
        return false;
    }
    
    @Override
    public boolean requireRenderVideoFrame() {
        // 是否需要开启后处理
        return false;
    }
  2. 加入房间

    参考接口调用流程中加入房间的时序图步骤加入房间。

相关文档