# Video Profile

The video profile of the xAPI was created to identify and standardize the common types of interactions that can be tracked in any video player.

## Profile Details

| Property | Value |
| --- | --- |
| **ID** | `https://w3id.org/xapi/video` |
| **See Also** | https://github.com/liveaspankaj/xapi-video-cop |
| **Status** | draft |
| **Version** | v1.0.3 |

## Author

**xAPI Video CoP**

## Concepts

### paused

**Type:** Verb

**ID:** `https://w3id.org/xapi/video/verbs/paused`

Indicates the actor paused the video being played at a specific point.

### played

**Type:** Verb

**ID:** `https://w3id.org/xapi/video/verbs/played`

Indicates that the actor started experiencing the recorded media object.

### seeked

**Type:** Verb

**ID:** `https://w3id.org/xapi/video/verbs/seeked`

Indicates the actor changed the progress towards a specific point.

### video

**Type:** ActivityType

**ID:** `https://w3id.org/xapi/video/activity-type/video`

A recording of both the visual and audible components made available on a display screen.

### completion-threshold

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/completion-threshold`

Used to specify the percentage of media that should be consumed to trigger a completion. Value MUST be between 0 and with maximum 3 decimals. If Completion Threshold is not included, it is assumed to be 1, i.e. 100%.  If Completion Threshold is not 1, it MUST be included in Video Profile statements with these verbs: initialized, paused, completed, and terminated.

### cc-subtitle-enabled

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/cc-subtitle-enabled`

Used to expresses whether subtitle or closed captioning is enabled.

### cc-subtitle-lang

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/cc-subtitle-lang`

Used to express the language of subtitle or closed captioning. The lexical and value spaces of xsd:language are the set of language codes defined by RFC 5646. For example, 'en' for English or 'en-US' for American English.

### frame-rate

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/frame-rate`

Used to express the frame rate or frames per second of a video (or average rate of frames per second in the case of variable frame-rate).

### full-screen

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/full-screen`

Used to expresses that the video is played in full screen mode.

### length

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/length`

The actual length of the media in seconds. Value MUST be a float value with maximum 3 decimals.

### quality

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/quality`

Used to express the video resolution or quality. Integer Value (e.g., 360, 480, 720, 1080, etc.).

### session-id

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/session-id`

Used to provide the session identifier associated with the activity.

### screen-size

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/screen-size`

Used to express the total available screen size for Video playback.

### speed

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/speed`

Used to express the play-back speed (e.g., 1x,2x,0,-1x,-2x).

### track

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/track`

Used to identify the name of the audio track in a media object.

### user-agent

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/user-agent`

Used to identify the User Agent string of the browser, if the video is launched in browser.

### volume

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/volume`

Used to identify the loudness of sound specified for a media object.

### video-playback-size

**Type:** ContextExtension

**ID:** `https://w3id.org/xapi/video/extensions/video-playback-size`

Used to identify the current video size in Width x Height as viewed by the user.

### played-segments

**Type:** ResultExtension

**ID:** `https://w3id.org/xapi/video/extensions/played-segments`

Played segments reveals potential heat map data for showing parts of the video the actor watched during current registration in chronological order (e.g., 0.000[.]12.000[,]14.000[.]21.000[,]18.000[.]30.000).

### progress

**Type:** ResultExtension

**ID:** `https://w3id.org/xapi/video/extensions/progress`

Used to expresses the percentage of media consumed by the actor.

### time

**Type:** ResultExtension

**ID:** `https://w3id.org/xapi/video/extensions/time`

Used to express the time into the video. (e.g., “00000.000” in seconds and milliseconds).

### time-from

**Type:** ResultExtension

**ID:** `https://w3id.org/xapi/video/extensions/time-from`

Used to identify the point in time the actor changed from in a media object (eg: “200.000” in seconds and milliseconds).

### time-to

**Type:** ResultExtension

**ID:** `https://w3id.org/xapi/video/extensions/time-to`

Used to identify the point in time the actor changed to in a media object (eg: “300.000” in seconds and milliseconds).

## Statement Templates

### Initialized

The statement template and rules associated with a video being initialized or started.

**Verb:** http://adlnet.gov/expapi/verbs/initialized

### Played

The statement template and rules associated with a video being played.

**Verb:** https://w3id.org/xapi/video/verbs/played

### Paused

The statement template and rules associated with a video being paused.

**Verb:** https://w3id.org/xapi/video/verbs/paused

### Seeked

The statement template and rules associated with a video seekbar being moved from and to a specific position in the video.

**Verb:** https://w3id.org/xapi/video/verbs/seeked

### Completed

The statement template and rules associated with a video being completed.

**Verb:** http://adlnet.gov/expapi/verbs/completed

### Terminated

The statement template and rules associated with a terminating the player.

**Verb:** http://adlnet.gov/expapi/verbs/terminated

### Enable Closed Captioning

Enable Closed Captioning

**Verb:** http://adlnet.gov/expapi/verbs/interacted

### Volume Change Interaction

Volume Change Interaction

**Verb:** http://adlnet.gov/expapi/verbs/interacted

### Screen Change Interaction

Screen Change Interaction

**Verb:** http://adlnet.gov/expapi/verbs/interacted

## Patterns

### General Pattern

The general pattern and sequence of Statement templates using the Video Profile.

### All Activities Pattern

All of the Video Profile statement templates.

### Optional Middle Statements

A combined pattern of zero or more Video Profile standard statement templates that can be used with the general pattern.

---
*Generated from TLA Toolbox on 4/5/2026*