Interface IZegoMediaPlayerVideoPlayWithIndexCallback2


  • public interface IZegoMediaPlayerVideoPlayWithIndexCallback2
    多实例媒体播放器的视频帧数据回调接口,格式为I420/NV12/NV21 当格式为ARGB32/ABGR32/RGBA32/BGRA32,数据通过 IZegoMediaPlayerVideoPlayWithIndexCallback 回调。 当格式为I420/NV12/NV21,数据通过 IZegoMediaPlayerVideoPlayWithIndexCallback2 回调。 其他非法格式都判定为I420
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      int dequeueInputBuffer​(int width, int height, int[] strides, int[] byteBufferLens, int playerIndex)
      SDK 向 App 获取 VideoFrame 索引,SDK 会通过这个返回值向 App 请求对应的 ByteBuffer 地址,用于填充 SDK 采集到的视频数据。
      VideoFrame getInputBuffer​(int index, int playerIndex)
      SDK 向 App 申请 VideoFrame 内存用于将采集的数据返回给 App 渲染。
      void queueInputBuffer​(int bufferIndex, ZegoVideoDataFormat format, int playerIndex)
      SDK 通知 App 数据拷贝,并返回流 ID 等数据信息。 SDK 通过此方法通知 App,对应索引的 ByteBuffer 数据拷贝完毕,并将流 ID 等信息返回。
    • Method Detail

      • dequeueInputBuffer

        int dequeueInputBuffer​(int width,
                               int height,
                               int[] strides,
                               int[] byteBufferLens,
                               int playerIndex)
        SDK 向 App 获取 VideoFrame 索引,SDK 会通过这个返回值向 App 请求对应的 ByteBuffer 地址,用于填充 SDK 采集到的视频数据。
        Parameters:
        width - 视频宽
        height - 视频高
        strides - 内存对齐宽度,即视频帧数据每一行字节数
        byteBufferLens - 未解码视频帧数据只用到了VideoFrame#byteBuffers[0] 需要创建byteBufferLens[0]大小的内存,用于填充 SDK未解码数据。
        playerIndex - 媒体播放器序号
        Returns:
        Buffer 索引
      • getInputBuffer

        VideoFrame getInputBuffer​(int index,
                                  int playerIndex)
        SDK 向 App 申请 VideoFrame 内存用于将采集的数据返回给 App 渲染。
        Parameters:
        index - VideoFrame 索引,SDK 通过 dequeueInputBuffer(int, int, int[], int[], int) 获得的索引值
        playerIndex - 媒体播放器序号
        Returns:
        VideoFrame App 给 SDK 分配的 VideoFrame 内存,SDK 拿到这块内存后,会将 index 对应的实际数据填充到这块内存中。
      • queueInputBuffer

        void queueInputBuffer​(int bufferIndex,
                              ZegoVideoDataFormat format,
                              int playerIndex)
        SDK 通知 App 数据拷贝,并返回流 ID 等数据信息。 SDK 通过此方法通知 App,对应索引的 ByteBuffer 数据拷贝完毕,并将流 ID 等信息返回。
        Parameters:
        bufferIndex - Buffer 索引,SDK 通过 dequeueInputBuffer(int, int, int[], int[], int) 获得的索引值
        format - 视频帧数据格式
        playerIndex - 媒体播放器序号