# 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) {

  }
})