XtfCaptureRecordedGameClip

从当前运行的游戏的 GameDVR 检索视频剪辑。

语法

HRESULT XtfCaptureRecordedGameClip(
         PCWSTR address,
         PCWSTR fullFileName,
         UINT32 numSeconds
)  

参数

address
类型:PCWSTR

[in] 主机的 IP 地址。

fullFileName
类型:PCWSTR

[in] 视频将写入的文件的完整路径和文件名。

numSeconds
类型:UINT32

[in] 要检索的视频的秒数。 最小值为 6 秒。 最大值为 300 秒。

返回值

类型:HRESULT

如果成功,则返回 S_OK;否则返回错误代码。 以下是可能的错误代码:

错误代码 说明
0x82323001 GameDVR 服务意外关闭。
0x82323002 没有足够的存储空间来保存另一个剪辑。
0x82323003 在调用 StopRecordAsync 前,未完成 StartRecordAsync 或未从此 ApplicationClipCapture 实例调用它。
0x82323004 并发录制过多。
0x82323005 HTTP 响应文本过大。
0x82323006 有关早期调用 StartRecordingAsync 的信息缺失。
0x82323007 在 StartRecordAsync 后未在分配的时间内调用 StopRecordAsync。
0x82323008 异步调用失败,但没有返回错误代码。
0x82323009 对云 ID 不可用的云剪辑尝试了更新。
0x8232300A 写入文件时出错。
0x8232300B 找不到要录制的任何帧。 可能的原因包括:
  • 在指定的时间段内游戏在后台运行。
  • 在激活游戏后过早请求了录制。
0x8232300C 找不到要录制的任何帧。 可能的原因包括:
  • 在指定的时间段内游戏在后台运行。
  • 在指定的时间段内未运行游戏。
0x8232300D 剪辑元数据未正确格式化。
0x8232300E 开始时间太早或离未来太远。
0x8232300F 录制持续时间太短或太长。 (6 - 300 秒)
0x82323010 用户或游戏无权访问指定的剪辑。
0x82323011 没有要更新的字段。
0x82323012 在请求的时间段内禁用了录制。
0x82323013 正在进行另一录制时调用了 StartRecordAsync。
0x82323014 调用了 StopRecordAsync,但是没有开始任何录制。
0x82323015 正在进行另一录制时调用了 RecordTimespanAsync。
0x82323016 上传剪辑有延迟。 将稍后重新尝试上传。 游戏可以安全地忽略此错误,或使用它通知用户:请求仍在队列中但需要更多时间来完成。
0x82323017 没有游戏正在运行,或者游戏没有适当的凭据。
0x82323018 当前游戏已阻止录制。
0x82323019 剪辑尚未上传到云中。
0x8232301A 为不允许的操作指定了访客用户。
0x8232301B GameDVR 不可用,因为正在广播。
0x8C11040D 在目标主机上未运行游戏。

备注

当某一游戏正在运行时,主机在 FIFO 视频缓冲区中最多可自动存储 300 秒的视频。 XtfCaptureRecordedGameClip 从缓冲区检索指定数量的以前存储的视频,并将其存储在 中指定的文件中 fullFileName。 该文件以 MP4 视频格式保存。 有关使用 GameDVR 捕获视频剪辑的详细信息,请参阅 GameDVR 和广播

要求

头文件:xtfapi.h

库:XtfApi.lib

支持平台:Windows(适用于 Xbox 主机工具)

另请参阅

XtfCaptureScreenshot
XTF 传输错误(NDA 主题)要求授权
其他 Xtf API