Sign in

§5.2

Delta updates

A catalog update might contain incremental changes. This is a useful property if many tracks may be initially declared but then there are small changes to a subset of tracks. The producer can issue a delta update to describe these changes. Changes are described incrementally, meaning that a delta update can itself modify a prior delta update.

A restricted set of operations are allowed with each delta update: * Add a new track that has not previously been declared. * Add a new track by cloning a previously declared track. * Remove a track that has been previously declared.

The following rules are to be followed in constructing and processing delta updates:

  • A delta update MUST include the Delta Update Section 5.1.2 field set to true.

  • A delta update catalog MUST contain at least one instance of Add tracks Section 5.1.3, Remove tracks Section 5.1.4 or Clone Tracks Section 5.1.5 fields and MAY contain more. It MUST NOT contain an instance of a Tracks Section 5.1.8 field or an MSF version Section 5.1.1 field.

  • The Add, Delete and Clone operations are applied sequentially in the order they are declared in the document. Each operation in the sequence is applied to the target document; the resulting document becomes the target of the next operation. Evaluation continues until all operations are successfully applied.

  • A Cloned track inherits all the attributes of the track defined by the Parent Name Section 5.1.36, except the Track Name which MUST be new. Attributes redefined in the cloning Object overwrite inherited values.

  • The tuple of Track Namespace and Track Name defines a fixed set of Track attributes which MUST NOT be modified after being declared. To modify any attribute, a new track with a different Namespace|Name tuple is created by Adding or Cloning and then the old track is removed.

This is one section of MOQT Streaming Format, rendered per-section for quick reference and citation. The authoritative text is draft-ietf-moq-msf-00 at the IETF.