# 自定义视频采集

# 简介

实时视频传输过程中,JC SDK 会启动默认的视频模块进行采集和渲染。当遇到不支持系统标准 API 的视频设备的时候,或者希望使用自己已经拥有的视频模块进行视频采集和渲染的时候,将视频文件作为视频输入源。

# 前提条件

在自定义视频采集和渲染前,确保已经初始化了 JCMediaDevice 模块。

# 自定义视频输入源

在视频通话中,您可以自定义视频输入源,菊风提供将视频文件作为视频源的方案以实现该功能:

  1. 调用 startVideoFile (opens new window)开启该功能。
  2. 调用 setVideoFileFrame (opens new window)逐帧添加视频数据。
  3. 发起通话或者加入频道。
  4. 渲染视频画面。
  5. 在结束通话后调用 stopVideoFile (opens new window)关闭该功能)
// 开启以视频文件作为视频源的功能
mediaDevice.startVideoFile();
// 添加视频数据源
mediaDevice.setVideoFileFrame(data, JCMediaDevice.I420, width, height, angle, mirror, keyFrame);
// 渲染视频画面
...
// 关闭该功能
mediaDevice.stopVideoFile();

TIP

文件和摄像头作为视频输入源只能存在一种,如果当前摄像头已开启的话会关闭当前摄像头。

最后更新时间: 2024/8/7 17:15:00