Written against the glTF 2.0 spec.


MPEG_texture_video extension provides the possibility to link a texture object defined in glTF 2.0 to MPEG media and its respective track, listed by an MPEG_media object. MPEG_texture_video extension also provides a reference to the timed accessor, i.e. accessor with MPEG_accessor_timed extension, where the decoded timed texture will be made available.

When the MPEG_texture_video extension is not supported, a texture buffer will be filled by data described by the standard glTF source object.

glTF Schema Updates


The video textures are defined by adding the MPEG_texture_video extension to the textures node.

The following table lists the semantics of the properties of an MPEG_texture_video extension:

Type Description Required
accessor integer The index of the accessor Yes
width integer The width of the texture. Yes
height integer The height of the texture. Yes
format string indicates the format of the pixel data for this video texture. No


Provides a reference to the accessor, by specifying the accessor’s index in accessors array, that describes the buffer where the decoded timed texture will be made available.


Provides the expected width of the texture.


Provides the expected height of the texture.


Indicates the format of the pixel data for this video texture. The allowed values are: RED, GREEN, BLUE, RG, RGB, RGBA, BGR, BGRA, DEPTH_COMPONENT. The semantics of these values are defined in Table 8.3 of OpenGL specification [OpenGL 4.6]. Note that the number of components shall match the type indicated by the referenced accessor. Normalization of the pixel data shall be indicated by the normalized attribute of the accessor. If used, texture compression shall be signaled through the KHR_texture_basisu extension.

Interaction with other extensions

This extension works together with timed accessors.

JSON Schema


Known Implementations