GameRecorder

基础库 2.8.0 开始支持,低版本需做兼容处理

游戏画面录制对象

方法

boolean GameRecorder.isFrameSupported()

获取是否支持录制游戏画面

boolean GameRecorder.isSoundSupported()

获取是否在录制游戏画面的同时支持录制游戏音频的信息

boolean GameRecorder.isVolumeSupported()

获取是否支持调节录制视频的音量

boolean GameRecorder.isAtempoSupported()

获取是否支持调节录制视频的播放速率

GameRecorder.start(Object object)

开始录制游戏画面

Promise GameRecorder.stop()

结束录制游戏画面。结束录制后可以发起分享。

Promise GameRecorder.pause()

暂停录制游戏画面。

Promise GameRecorder.resume()

恢复录制游戏画面。

Promise GameRecorder.abort()

放弃录制游戏画面。此时已经录制的内容会被丢弃。

GameRecorder.on(string event, function callback)

注册监听录制事件的回调函数。当对应事件触发时,回调函数会被执行。

GameRecorder.off(string event, function callback)

取消监听录制事件。当对应事件触发时,该回调函数不再执行。

错误

错误码 错误信息 说明
wx.error.GameRecorder_UnknownError unknown error 未知错误,没有被归纳到的错误
wx.error.GameRecorder_InternalFailed internal failed 游戏画面录制 SDK 内部错误
wx.error.GameRecorder_NotSupported frame not supported 当前设备不支持录制游戏画面
wx.error.GameRecorder_StartDurationInvalid duration invalid duration 参数不合法
wx.error.GameRecorder_StartBitRateInvalid bitrate invalid bitrate 参数不合法
wx.error.GameRecorder_StartFPSInvalid fps invalid fps 参数不合法
wx.error.GameRecorder_StartGOPInvalid gop invalid gop 参数不合法
wx.error.GameRecorder_StartWhileAlreadyStartRecording start while already start recording 在已经开始录制的情况下调用 start
wx.error.GameRecorder_StartWhilePaused start while already paused 在已经暂停录制的情况下调用 start,此时只能调用 resume 恢复录制
wx.error.GameRecorder_PauseWhileNotStartRecording pause while not start recording 在还没有开始录制的情况下调用 pause
wx.error.GameRecorder_PauseWhileAlreadyPaused pause while already paused 在已经暂停录制的情况下调用 pause
wx.error.GameRecorder_ResumeWhileNotStartRecording resume while not start recording 在还没有开始录制的情况下调用 resume
wx.error.GameRecorder_ResumeWhileRecording resume while recording 在录制中调用 resume,调用 resume 只能在暂停状态下
wx.error.GameRecorder_AbortWhileNotStartRecording abort while not start recording 在还没有开始录制的情况下调用 abort
wx.error.GameRecorder_StopWhileNotStartRecording stop while not start recording 在还没有开始录制的情况下调用 stop
wx.error.GameRecorder_NoVideo no recorded video 在还没有一个录制好的对局回放的情况下发起分享
wx.error.GameRecorder_BGMNotFound bgm not found share.bgm 指定的额背景音乐不存在
wx.error.GameRecorder_TimeRangeInvalid time range invalid share.timeRange 不合法
wx.error.GameRecorder_EditDurationOutOfLimit duration out of limit share.timeRange 的所有片段的总和超出上限
wx.error.GameRecorder_TimeRangeTooShort time range too short.It should be longer than 2s share.timeRange 太短

错误码的使用方法

// 可以监听 error 事件
const recorder = wx.getGameRecorder()
recorder.on('error', res => {
  const error = res.error
  if (error.code === wx.error.GameRecorder_StartWhileAlreadyStartRecording) {

  }
})

// 也可以在接口的 Promise 中获取
recorder.stop()
.catch(res => {
  if (res.error.code === wx.error.GameRecorder_StopWhileNotStartRecording) {

  }
})