Glossary of Terms
API: An application programming interface (API), which is a method of communication between different software components. A TAMS store provides an API, which other components of a wider media ecosystem can connect into in order to read or write content to the store.
Chunk: Another term used for the media object. Usually used in the context of ingesting the content and talking about creating chunks of media or chunking the content.
Collection: The process in the TAMS data model to describe the relationship between multiple sources or flows. Typically, the multi source or flow then collects together the corresponding mono essence (video, audio, or data) sources or flows. The creating system declares that a source or flow collects another source or flow. However, the API then represents both directions with collection and collected_by fields available, simplifying navigation in either direction.
Edit by Reference: The process of creating new content by reusing or referencing existing media objects within the store. This works where the media is unchanged in the edit process ,and rather than duplicating content, the new flow timeline points to the original segment in the store. It is possible to also point to a specific subsection of a segment to enable edits to be frame-accurate on native TAMS readers.
Flow: A flow is a concrete representation of a piece of content or source. This holds the technical characteristics of the content, for example video, audio, bitrate, resolution, codec, or others. Flows can be of the type audio, video, or data. If more than one content type is present, for example, muxed audio and video, then the type multi is used.
Pre-signed URL: A URL which is generated by the underlying object storage and provides temporary credentials for a short period of time to perform an action, such as upload or access an object. This removes the need to provision credentials to the storage directly. In a typical TAMS workflow, the the API will serve up the pre-signed URLs to upload content into the store and access when required.
Mono-essence: Media essence which only contains one type of content, usually either video or audio. By splitting the content into mono-essence flows, it simplifies process, for example, linking multiple different video flows (resolution, bit-rate, frame-rate, or encoding) to the same audio content.
Muxed content: Media essence which contains both the video and audio media within the same file. Usually referred to as muxed for short hand for multiplexed, where the video and audio elements are interleaved within the file to simplify the process of playback.
Object: The actual media file which is stored on the object storage and referenced as part of the a segment.
Object Storage: A storage solution that holds files as objects, which are accessible through HTTP requests. The AWS Open Source TAMS API uses Amazon S3 as the object storage to hold the media associated with the API.
Segment: Contains the timing data of how a segment exists within the timeline of a given flow as well as the pointer to the actual objects located on the object storage. Often used to also include the media object and the metadata.
Source: The source collects one or more flows to represent a piece of content. In most content, there are separate audio and video flows, plus a multi-flow which brings them together as the piece of content that a user can access.
TAMS - A Time Addressable Media Store (TAMS) used to store media in small chunks on object storage with a standard API that describes how the media chunks should be assembled to create usable content. Often associated with live or near-live workflows, as it works around restrictions of growing files on object storage. Provides convergence of workflows between broadcast, streaming, and live AI workloads.
Timerange: The mechanism used to describe a period of time within the virtual timeline that exists for a flow. A timerange can either be a single point in time or have two values to determine the start and end of particular window. The timerange is used to define where a particular segment exists on a flow timeline or to query for part of a timeline.