MPEG_accessor_timed

Contributors

Status

Draft.

Dependencies

Written against the glTF 2.0 spec.

Overview

An accessor in glTF defines the types and layout of the data as stored in a buffer that is viewed through a bufferView. When timed data is read from a buffer, the data in the buffer could change dynamically with time.

A scene that contains timed media and/or metadata shall utilize the timed accessor extension to describe access to the dynamically changing data. The timed accessor is an extension to regular accessors to indicate that the underlying data buffer is dynamic. Note that a timed accessor has two bufferViews, one inherited from the containing accessor and a second in the MPEG_accessor_timed extension. The former shall be used to reference the timed media data. The latter may be used to point to a dynamic buffer header, which may or may not be present. When present, both bufferViews shall point into the same circular buffer.

The accessor.bufferView field, in an accessor that has the MPEG_accessor_timed extension, as well as the timed accessor information header fields apply to the data of each frame within the circular buffer.

The timed accessor extension is identified by “MPEG_accessor_timed”.

glTF Schema Updates

MPEG_accessor_timed

The timed accessors are defined by adding the MPEG_accessor_timed extension to any glTF accessor.

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

Type Description Required
immutable boolean indicates whether the accessor information is mutable or immutable. No
bufferView integer index of the bufferView for the accessor information header. No
suggestedUpdateRate number recommended buffer poll frequency. No

MPEG_accessor_timed.immutable

This flag equal to false indicates the accessor information componentType, bufferView, type, and normalize may change over time. The changing values of componentType, bufferView, and type and normalize are provided through accessor information header.This flag equal to true indicates the accessor information componentType, bufferView, type, and normalize do not change over time and are not present in the accessor information header.When not present, it is inferred that all accessor information is immutable and accessor information header is not present in the buffer frame.

MPEG_accessor_timed.bufferView

This provides the index in the bufferView array of a bufferView that points to the timed accessor information header as described in Table 10. The bufferView shall point to the same buffer as the bufferView in the containing accessor object.If present, the byteOffset for the media data shall be equal to the length of the timed accessor information header. Both bufferViews shall point to the same buffer.In the absence of the bufferView, it shall be assumed that the buffer has no dynamic header. This requires that the immutable flag is set to True.

MPEG_accessor_timed.suggestedUpdateRate

The suggestedUpdateRate provides the frequency at which the Presentation Engine is recommended to poll the underlying buffer for new data. The rate is provided in number of changes per second.

JSON Schema

MPEG_accessor_timed.schema.json

Known Implementations

Resources