For a user to create and upload a video to Xbox Live, he or she must have an Xbox Live Gold membership. While this feature is available to all users who have Gold memberships, it’s only active by default for the accounts of teens and adults. For children, and for teens, their permission to use game DVR is subject to parental controls.
If there are multiple people playing simultaneously on the same console, game DVR will record clips as long as at least one player is an adult or a teen who has permission and no players have turned off game DVR.
The following sections describe the steps for creating game clips:
There are two ways for developers to specify the start and end points of a video clip.
The first way consists of two commands: one to initiate the recording, and one to end it. This method of creating a clip could be used, for example, at the beginning of a boss fight. The title could always begin a recording at the beginning of the boss fight, and end it when the boss is defeated. In such a situation, if the player dies or does not defeat the boss, the title could cancel the clip, so that only successful events are recorded.
The second way to create a game clip is to use the timespan method. This method should be used when something awesome—but not necessarily expected—happens. For example, a player might kill a significant number of enemies in a short amount of time. The timespan method allows the developer to specify a point in the system time and a number of seconds forward from that time (not to exceed 300 seconds). This timespan can be in the past as long as it’s not greater than five minutes into the past (the size of the ring buffer).
Developers will use ApplicationClipCapture for both types of capture; for more information, see the API documentation for the Xbox Developer Portal (XDP).
Some of the information saved with clips typically comes from the user. This includes a name for the clip and a captions. Since these strings are viewable, games should use the string validation service to look for unacceptable content before saving them with the clip. The string validation service is available through the Microsoft.Xbox.Services.System.StringService class.
When creating a clip, the service needs some specific information, including the following:
All of this information will be provided to Xbox via the ApplicationClipInfo object; for more information, see the API documentation.
GreatestMomentId is an identifier that points the Game Clips Service to the appropriate localized string entered in Xbox Developer Portal. This ID is auto-generated through XDP, and is assigned a value of 1-15. The localized string for the game clip will be returned in the clip metadata queries. The localized string will then appear in Game DVR apps (for example, Upload).
The first XUID in the list becomes the owner of the clip. As a policy, Xbox does not tag other players in a user’s video, but that information is stored for internal processes.
MultiplayerCorrelationId is used for correlating data platform events that occurred during the session with the video.
Developers will be able to specify a particular thumbnail for use on their videos. There are a few ways to do this:
If neither method is chosen, the Game Clips Metadata Service will create a thumbnail from the first frame three seconds into the video.
Developers may, at their discretion, provide additional metadata in a field known as TitleData, which contains a string that is stored with the rest of the video’s metadata. Titles may put notes or information here that they may use in their own custom experiences.