recordClip 1.6.1+

GameRecorderManager.recordClip(Object object)

记录精彩的视频片段,调用时必须是正在录屏,以调用时的录屏时刻为基准,指定前x秒,后y秒为将要裁剪的片段,可以多次调用,记录不同时刻。在结束录屏时,可以调用 clipVideo 接口剪辑并合成记录的片段。

输入

属性 类型 默认值 是否必填 说明 支持版本
timeRange Array [3, 3] 数组的值表示记录这一时刻的前后时间段内的视频,单位是s
success function 记录剪辑片段成功的回调函数 1.20.0
fail function 记录剪辑片段失败的回调函数 1.20.0
complete function 接口调用结束的回调函数 1.20.0

输出

1.20.0 以上版本该接口 success 会返回一个唯一索引 index,用于 tt.clipVideo 接口调用时指定裁剪拼接顺序。

success返回对象参数的扩展属性:

名称 数据类型 描述
index number 裁剪片段的唯一索引

示例

const recorder = tt.getGameRecorderManager();
const clipIndexList = [] // 剪辑索引列表


recorder.start({
  duration: 30,
})

recorder.onStop((res)=>{
  recorder.clipVideo({
    path: res.videoPath,
    success(r){
      console.log(r.videoPath);
    }
  })
})

// 假设录制第15秒时,执行第一次 recordClip
recorder.recordClip({
  timeRange: [5, 3],
  success(r) {
    console.log(r.index)  // 裁剪唯一索引
    clipIndexList.push(r.index)
  }
})

// 录制到第20秒时,再次执行recordClip
recorder.recordClip({
  timeRange: [3, 5],
  success(r) {
    console.log(r.index) // 裁剪唯一索引
    clipIndexList.push(r.index)
  }
})

以上示例代码最终得到的录屏文件将是一段包含了第10秒到第25秒内容的视频。