Skip to main content

Mosaic Glossary

The table below explains some key terms used in documentation.

Mosaic Terms

General Mosaic Terms

TermDefinition
Core ServicesServices that are necessary for Mosaic Platform to operate, such as orchestration, identity, authentication, authorization, reporting.
Managed ServicesServices that are developed and operated by Axinom, for example, Image Service, Video Service, and DRM Service. They are also called SaaS. See Managed Services for a full list and Service Types in Mosaic for an overview of the service types.
SaaSSoftware-as-a-Service, see Managed Services.
Customizable ServicesServices that are provided by Axinom in source code under an open-source license and can be used as-is or with individual customization, for example Media Service, Catalog Service, Entitlement Service. See Customizable Services for a full list and Service Types in Mosaic for an overview of the service types.
Mosaic PlatformModular, service-oriented platform that allows you to create powerful and flexible backend solutions. It provides you with everything you need to build up your tailored digital asset management and deployment. The main parts of the Mosaic Platform are: Core Services, Managed Services, Customizable Services, Media Template.
MicrofrontendA frontend part of a service. A package that extends the Management System with features like Stations, Home Tiles, or Extensions.
MicroserviceA backend part of a service. Typically provides a set of APIs that can be used by the corresponding Microfrontend or other consumers.
ServiceA logical construct containing a Microservice and a Microfrontend of a specific domain.
Frontend ExtensionA React component that is registered by a Microfrontend so that other microfrontends can use it.
HomeA Microfrontend providing the landing page experience in the Management System. It registers the / route. Other microfrontends can register tiles displayed by Home.
NavigationA Microfrontend providing the navigation panel in the Management System. Navigation is always accessible using a hamburger icon in the top left corner.
Access ManagementA Micro-fontend of the Identity Service, providing workflows for managing Users, User-Roles, Service accounts and their permissions.
StationA page inside the Management System, defined by a Microfrontend. There are a few standard station types, such as Explorer and Details, but also a Custom Station.
Management SystemThe base application that is orchestrating the microfrontends, handling authentication and defining the basic shell of the Management System. Editors use the management system to manage content.
Mosaic Media TemplateA collection of open-source customizable services representing a possible over-the-top solution. It can be used as-is or freely customized to fit project requirements.
EntityA single record of an Entity Type
AssetA special form of an Entity Type that is based on a file, e.g. an image or a video file.
Entity TypeAn object type managed in the Mosaic Platform solution. It consists of a data schema, certain API endpoints and specific workflows. Examples: Video, Image, Movie, TV Show, Season, Episode,
UI LibrarySynonym for the @axinom/mosaic-ui library
StorybookA playground application to see and test out the components of the UI Library in different use-cases. (https://mosaic-storybook.axinom.net/)
Mosaic CLIA command line application that contains various commands aimed to help developers. Delivered as @axinom/mosaic-cli library.
FrontendAll pieces running in the Management System web application. It must be distinguished from an End-User Frontend, which is an application the End-Users use.
BackendThe microservice of a Mosaic solution.
End-User FrontendThe frontend that End-Users will use to browse your content.
UserEvery person using the Management System. It must be distinguished from the End-User accessing End-User Frontend.
End-UserThe users that consume the generated content that editors created on their devices.
IngestThe process of (bulk) importing data into the system. This feature is implemented by the Media Service
PublicationThe process of releasing a snapshot of an entity for example to a catalog service, in order to make it visible for End-User Frontends.
SnapshotA snapshot captures the state and data of an entity at the time of snapshot creation. Snapshots are used by the Publication process to publish that snapshotted state e.g. into the Catalog Service.
DeveloperA person developing customizable services in the customizable solution
Environment AdministratorA person that manages the environments of a tenant, using the Admin Portal
Super AdminThe root user of an environment. This user will always have all possible permissions on the environment.
TenantTo get started with developing a Mosaic Platform solution you need to register an Account with Axinom. Axinom will in return tell you the Tenant ID, which you can use to sign in to the Admin Portal. A Tenant can create multiple Environments. Environments are always scoped to a specific tenant. A Tenant has a Tenant Id - a unique identifier of your tenant - provided by Axinom upon registration.
EnvironmentA logical construct that allows data isolation in the managed services as well as platform services. Each operation executed on a managed service will be specific to one environment. Only data of this environment will be included in queries and mutations. Environment Id - a unique identifier of your environment.
PiralA Microfrontend framework used by the Mosaic Platform. It is based on React and provides a set of tools to build and deploy microfrontends.
PiletA Microfrontend built using the Piral framework. It is a React application that can be deployed to a Piral instance.
Piral InstanceThe shell application that hosts the Microfrontends.
It provides the basic layout and navigation of the Management System as well as the authentication and authorization. It also provides the microfrontends with a set of APIs that they can use for registering their shared components and for communicating with each other.
More details on the API and concepts behind them can be found in the documentation of the @axinom/mosaic-portal package.

Content Management

Users and Personalization

Monetization and Billing

Channels and FAST

Content Protection / Digital Rights Management

TermDefinition
Advanced Encryption Standard (AES)A symmetric-key algorithm in which the same key is used to encrypt and decrypt the data. Used for large binary files. Supports key lengths of 128, 192, and 256 bits. See https://en.wikipedia.org/wiki/Advanced_Encryption_Standard.
Axinom DRM License ServiceA part of Axinom DRM, the License Service provides a DRM License to a player’s License Request provided that it carries a valid Entitlement Message. License Service is a multi-tenant, multi-DRM capable service supporting Widevine, FairPlay, and PlayReady.
Axinom DRM License Service MessageA JSON data structure for delivering data to and from Axinom DRM License Service. Axinom DRM License Service Message contains an Entitlement Message, or License Request Info Message. See Axinom DRM License Service Message.
Axinom DRM Key ServiceA part of Axinom DRM, the Key Service securely generates and maintains the Content Keys.
Base64 EncodingAn encoding scheme that represents binary data in an ASCII string format, see RFC 4648.
CBCS EncryptionAn encryption scheme which allows to encrypt a video file once and use with all major DRM technologies (Widevine, FairPlay, and PlayReady). See also: CENC.
Client DeviceA DRM-capable device of an end-user.
Client Info MessageWas a type of an Axinom DRM License Service Message that is used by the Axinom DRM License Service to return information about a Client Device. It is deprecated in favor of License Request Info Message
Common Encryption Scheme (CENC)A standard enabling decryption of the same file using different DRM technologies. Individual DRM technologies can add their metadata about encryption and key mapping.
Common Media Application Format (CMAF)A format for adaptive streaming which uses only one set of video and audio files (encoded as fragmented MP4) along with lightweight manifests for MPEG DASH and HLS. It results in huge savings on storage capacity and processing. See https://www.axinom.com/article-encoding-one-format.
Communication KeyIn Axinom DRM, a cryptographic key that is used to sign and verify an Axinom DRM License Service Message.
Content Decryption Module (CDM)A trusted component on the client-side that maintains control over decryption keys at all times.
Content KeyA cryptographic key for encryption/decryption of media. All major DRM technologies use AES and a 128-bit Content Key.
Content Key ID or Key IDAn identifier (GUID) that identifies a Content Key for encrypted media.
Content Key IVA 16-byte initialization vector to encrypt/decrypt clear/encrypted media.
Content Protection Information Exchange Format (CPIX)A guideline that specifies how to store information related to content protection in an XML document in such a way that it could be easily exchanged between the different parts of a video streaming setup. See https://dashif-documents.azurewebsites.net/Cpix/master/Cpix.html.
Device certificate status list (DCSL)A JSON file used by the Axinom DRM Widevine API, which contains information about the status of device model certificates (e.g. "OK", "revoked", etc.). It determines whether a particular DRM client device is allowed to receive licenses. Clients that do not have a model certificate in this list are categorized as "unknown".
DRM LicenseA data structure that contains the encrypted Content Key and Usage Rules. The DRM License is cryptographically bound to the Client Device where the respective License Request originated from. No other device can use it.
DRM signallingThe DRM specific information to be added in Content for proper operation of the DRM system when authorizing a device for this Content. It is made of proprietary information for licensing and key retrieval.
DRM TechnologyDigital rights management, i.e. access control technology that restricts the use of copyrighted media. See also: Widevine, FairPlay, PlayReady.
Entitlement MessageA type of an Axinom DRM License Service Message that instructs the License Service how to generate a DRM License.
Entitlement ServiceIn Axinom DRM, a project-specific component which authorizes user requests and generates Entitlement Message that a client can send to the License Service to receive a DRM License.
FairPlay Streaming (FPS)Apple’s DRM technology. For more information: https://developer.apple.com/streaming/fps
FPS Application Certificate (AC)The X.509 certificate provided to customer by Apple in the process specified in the FPS Deployment Package.
FPS Application Certificate Private Key (PK)The 1024-bit RSA private key linked to the Application Certificate, generated in the process specified in the FPS Deployment Package.
FPS Application Secret Key (ASK)A 16-byte key provided to customer by Apple in the process specified in the FPS Deployment Package.
FPS Customer DataA set of FPS customer-specific data, containing the FairPlay Streaming PK, ASK, and AC. In Axinom DRM, FPS Customer Data needs to be provided to the License Service to enable FPS.
FPS Deployment PackageA package provided by Apple to FPS development teams that contains instructions on how to obtain FPS Application Certificate, FPS Application Certificate Private Key, and the FPS Application Secret Key, required to implement FPS.
FPS Playback ApplicationAn FPS application created by customer for the playback of FPS content.
Globally Unique Identifier (GUID) or Universally Unique Identifier (UUID)A 128-bit number used to uniquely identify information in computer systems. A GUID is generally written in hexadecimal notation and consists of 32 digits. See https://en.wikipedia.org/wiki/Universally_unique_identifier.
High-bandwidth Digital Content Protection (HDCP)A form of digital copy protection for preventing the copying of digital audio and video content as it travels across connections, such as HDMI, DP and DVI. See https://en.wikipedia.org/wiki/High-bandwidth_Digital_Content_Protection.
JWT, JSON Web TokenA compact URL-safe standard (RFC 7519) for passing claims between parties in a web application environment. The claims in a JWT are encoded as a JSON object that is digitally signed using a JSON Web Signature (JWS). See: http://jwt.io.
Key SeedA single secret value, from which Content Keys can be derived.
Key ServiceA service that generates Content Keys for encryption and delivers them securely to the encoder/packager.
License ProxyA service that receives License Requests, acting as a License Service towards the Client Device. License Proxy authorizes the requests acting as an Entitlement Service, sends a real License Request to a License Service and forwards the generated DRM License back to the client. Using the Axinom DRM License Service in this way is referred to as the Proxy Mode.
License RequestA query sent by the Client Device to the License Service to obtain a DRM License used for media playback.
License ServiceA service that generates and configures DRM Licenses upon receiving a License Request with a valid Entitlement Message.
Monthly Active Users Billing ModelA billing model in case of which the customer pays based on the number of active users per month.
Multi-DRMAn approach to encrypt a video once and to use it with multiple different DRM technologies, providing for each client platform the DRM License in the respective format. See also: CMAF, CBCS.
PlayReadyMicrosoft’s DRM technology. For more information: http://www.microsoft.com/playready
Protection System Specific Headers (PSSH)This PSSH article explains the PSSH-concepts, such as PSSH box, PSSH generator, PSSH decoder, etc. See also DRM signalling.
Screen RecordingThe process of capturing the contents of the screen with a special tool. DRM protection helps to prevent malicious users from doing it to keep your content safe.
Secure Packager and Encoder Key Exchange (SPEKE)An AWS specification that defines the standard for communication between encryptors and packagers of media and DRM key providers. For more information: https://docs.aws.amazon.com/speke/latest/documentation/what-is-speke.html
Trusted Platform Module (TPM)A secure cryptoprocessor, a dedicated microcontroller designed to secure hardware through integrated cryptographic keys, and a related international standard.
TranscodingDigital-to-digital conversion of one encoding to another.
Usage RulesRules that determine the conditions for content playback. Such rules limit the number of content playbacks or prevent copying the media. Usage Rules are delivered to the Client Device as a part of a DRM License and enforced by the CDM on the Client Device.
WidevineGoogle’s DRM technology. For more information: http://www.widevine.com
Widevine Common Encryption APIA Content Key exchange protocol defined by Google.

Encoding and Video Formats

TermDefinition
Adaptive StreamingMultiple representations of video with different quality levels, defined by frame resolutions, are created. The video player chooses which quality level to display, adapting to the network load and the CPU. This allows to provide the viewer the best possible experience.
Advanced Audio Coding (AAC)Audio coding standard, successor of MP3 but with a higher sound quality. Read more: https://en.wikipedia.org/wiki/Advanced_Audio_Coding
Advanced Video Coding (AVC)Video compression standard, also known as H.264. Most commonly used format that supports resolutions up to and including 8K UHD. More information: https://en.wikipedia.org/wiki/Advanced_Video_Coding
Content Delivery Network (CDN)Also known as content distribution network - a geographically distributed network of proxy servers together with their data centers. Distributing the service spatially helps to provide high performance and availability to end users.
CodecA computer program that encodes or decodes a digital data stream or signal.
ContainerA file format that allows multiple data streams to be embedded in a single file, typically along with metadata. Such formats are, for example, 3GP, AVI, and MP4.
Dynamic Adaptive Streaming over HTTP (DASH)A multimedia streaming standard, also known as MPEG-DASH, enables high quality media content streaming over the internet delivered from conventional HTTP web servers.
Display Aspect Ratio (DAR)The proportional relationship between the display device’s width and height, expressed as two numbers separated by a colon, e.g. 16:9.
Encoding APIA web API used to initiate encoding jobs, control the jobs, and access encoding statistics.
Encoding JobA request sent to Axinom Encoding to prepare a video for output.
Encoding ServiceA video ingestion and processing service that allows to create video on demand content from various source video formats.
GOPGroup of Pictures. The GOP is a collection of successive pictures within a coded video stream.See also https://en.wikipedia.org/wiki/Group_of_pictures.
H.264A video compression standard, also known as AVC. It is based on block-oriented, motion-compensated integer-DCT coding. The most commonly used format for recording, compression, and distribution of video content.
H.265A video compression standard, also known as HEVC or high-efficiency video coding, the successor of H.264. Can compress the video file down half the size compared to H.264 without any loss in quality.
HTTP Live Streaming (HLS)Encryption scheme, also known as HTTP-based adaptive bitrate streaming. The most popular streaming format, widespread in media players, web browsers, mobile devices, and streaming media servers. Read more: https://en.wikipedia.org/wiki/HTTP_Live_Streaming
Input StorageStorage where the video is uploaded before being processed, encoded, and protected. As the content is in clear, it is recommended to minimize the amount of time the video spends there.
Message QueueSoftware-engineering component used for inter-process communication. The Encoding Service sends job progress messages to a message queue where the client can observe the job’s completion.
Output StorageStorage where the video is published after it has been processed, encoded, and protected.
SaaSSoftware as a service, which means that the software is licensed on a subscription basis and hosted centrally. Also known as on-demand software, web-based software, and hosted software. Axinom Encoding is an example of SaaS.
Smooth Streaming (MSS)Smooth Streaming is an IIS Media Services extension that enables adaptive streaming of media to clients over HTTP. The format specification is based on the ISO base media file format and standardized by Microsoft as the Protected Interoperable File Format. Read more: https://en.wikipedia.org/wiki/Adaptive_bitrate_streaming#Microsoft_Smooth_Streaming_(MSS)
Tenant KeyA GUID used for user authentication when making requests to the Encoding API.
Tenant NameHuman-readable name used for user authentication when making requests to the Encoding API.
Video-on-demand (VOD)Accessing videos without a traditional video playback device and time constraints (e.g. schedule).

Mosaic Components

Managed Services

See also: Managed Services

List of Managed Services

ServiceDescription
DRM ServiceProtect your digital video assets with a multi-DRM solution that can be implemented on cloud or on premise. Axinom DRM is a scalable, robust, and globally distributed set of services. These services enable customers to securely manage content encryption keys and protect media with the world’s leading DRM technologies.
Encoding ServiceIngest, encode/transcode videos utilizing technologies such as CMAF (DRM supported)
Video ServiceIngest, encode/transcode videos utilizing technologies such as CMAF, protect using DRM
Image ServiceIngest, query, preview, manage and transform images for editing and frontends
Localization ServiceManage languages and create translations for your digital media assets
User ServiceSign up end users with user authentication APIs for all your frontend apps
Personalization ServiceMaintain user-specific data like profile, settings, favorites, watch-progress, etc.

| AxAuth Service | Mosaic’s own Identity Provider, which maintains user identity and profile directly as a part of an Environment, without the need of a 3rd party integration |

Customizable Service

See also: Customizable Services

List of Customizable Services

ServiceDescription
Media ServiceManage video assets and metadata for TV shows, movies, linear streams, etc., with integrated image and video workflows.
Catalog ServiceExpose catalogs of media entities such as movies, TV shows, seasons, episodes, etc., for the frontend apps.
Entitlement ServiceProvides entitlements for the video playback requests. The generated entitlement message can be exchanged for a valid DRM license by the Axinom DRM License Service
Monetization ServiceCreate business models like AVOD, SVOD, TVOD, pricing, and currencies
Billing ServiceProcess subscription transactions, TVOD purchases, and automatic billing through API and frontend integrations
Channel ServiceManaging channels and playlists for streaming media content.

Core Services

See also: Core Services

List of Core Services

ServiceDescription
Identity ServiceProvides user authentication and permissions using 3rd party Identity Providers using OAuth 2.0, such as Google.
Management System ServiceServes the Management System to the users.
Microfrontend ServiceHosts the Microfrontends for each environment. Serves the microfrontends to the Management System of a specific environment.
RabbitMQ ClusterProvides messaging infrastructure for all services.
Hosting ServiceProvides capabilities for deployment and hosting of customizable/custom services.

Other Components

ComponentDescription
Admin PortalThe frontend application of the Identity Service. Developers and administrators use this application to setup and configure environments.
Axinom PortalSelf-provisioning portal for managing your Axinom account, tenants, environments, and services. Central point of contact with Axinom products.

3rd party tools and components

See also: Technology Stack

TermDefinition
Node.jshttps://nodejs.org/ - JavaScript runtime, the most popular tool for running server-side applications
TypeScripthttps://www.typescriptlang.org/ - extends JavaScript by adding types.
GraphQLhttps://graphql.org/ - a query language that allows clients to mutate and fetch exactly (and only) the data that they need. All Mosaic Services expose their APIs as GraphQL APIs. GraphQL offers clients a type-safe way to consume the APIs.
RabbitMQhttps://www.rabbitmq.com/ - a message broker for reliable and flexible messaging to easily integrate multiple microservices. See Messaging
Reacthttps://reactjs.org/ - declarative and flexible JavaScript library for building complex UIs from small and isolated pieces
Piralhttps://www.piral.io/ - a framework enabling microfrontends
PostgreSQLhttps://www.postgresql.org/ - an open-source relational database with good support for JSON, column, and row-level security and many other features
PostGraphilehttps://www.graphile.org/postgraphile/ - a tool that exposes PostgreSQL database as a GraphQL API in a simple way
Visual Studio Codehttps://code.visualstudio.com/ - free and source-code editor. Axinom recommends to use a set of extensions for optimal support for the technologies used
Storybookhttps://storybook.js.org/ - a tool for developing UI components in isolation and testing them on the fly. See Mosaic Storybook)
TypeDochttps://typedoc.org - TypeDoc converts comments in TypeScript source code into rendered HTML documentation or a JSON model. See Mosaic Typedocs.
Jesthttps://jestjs.io/ - JavaScript Testing Framework, well-integrated with TypeScript, Node.js, and React
Yarnhttps://yarnpkg.com/ - package manager with some advantages compared to NPM, especially for big projects.
eslint + prettierhttps://eslint.org, https://prettier.io/ - Linting and code formatting tools to ensure consistent code style and quality.
Expresshttps://expressjs.com/ - Web framework for Node.js.
Zapatoshttps://jawj.github.io/zapatos/ - Zero-boilerplate TypeScript ORM for PostgreSQL.
Graphile-migratehttps://github.com/graphile/migrate - Declarative database schema migration tool.
Graphile-workerhttps://github.com/graphile/worker - High-performance Node.js/PostgreSQL job queue.
Graphql codegenhttps://graphql-code-generator.com/ - Generates code from GraphQL schemas and operations.
Rascalhttps://www.npmjs.com/package/rascal - Enterprise messaging for Node.js using RabbitMQ.

General IT

TermDefinition
Amazon S3Amazon Simple Storage Service, an object storage service for storing and retrieving data. Read more: https://aws.amazon.com/s3/
Amazon Web Services (AWS)Amazon’s cloud computing platform that provides a variety of services, including databases, Internet of Things, and developer tools. Read more: https://aws.amazon.com/
Application programming interface (API)A set of programming code that enables data transmission between software products. It consists of a technical specification that describes the data exchange options between the solutions and a software interface written to the specification that represents it.
AsyncAPIAsyncAPI is an open-source initiative that provides both a specification to describe and document your asynchronous applications in a machine-readable format. Read more: https://www.asyncapi.com/
Azure Blob StorageMicrosoft’s scalable object storage for huge amounts of data. Read more: https://azure.microsoft.com/en-us/services/storage/blobs/
Azure Media ServicesMicrosoft’s cloud-based media workflow platform to index, package, protect, and stream video at scale. Read more: https://azure.microsoft.com/en-us/services/media-services/
CloudA global network of servers, each one of them with a unique function, operating as a single ecosystem.
DockerDocker is a set of platform as a service (PaaS) products that use OS-level virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries and configuration files; they can communicate with each other through well-defined channels. Because all of the containers share the services of a single operating system kernel, they use fewer resources than virtual machines.
Encrypted Media Extensions (EME)An open standard from the World Wide Web Consortium (W3C) that provides a communication channel between web browsers and the Content Decryption Module (CDM) software that implements DRM. It enables the use HTML5 video to play back DRM-protected content without having to use 3rd party media plugins, such as Adobe Flash or Microsoft Silverlight.
File Transfer Protocol (FTP)File Transport Protocol with additional Transport Layer Security protection.
GraphQLGraphQL is an open-source data query and manipulation language for APIs. See https://graphql.org.
JavaScript Object Notation (JSON)An open standard, lightweight file and data interchange format, which is language-independent. It includes human-readable text to store and transmit data objects that consist of attribute-value pairs and array data types. Read more: https://www.json.org/json-en.html
MediaConvertA file-based video transcoding service from Amazon. It allows to create video-on-demand content for multiscreen delivery and broadcast. Read more: https://aws.amazon.com/mediaconvert/
MediaLiveA broadcast-grade live video processing service from Amazon. This service allows to encode high-quality live video streams for broadcast and streaming to any device. The service encodes live video in real-time and compresses larger video files to smaller versions. Read more: https://aws.amazon.com/medialive/
MediaPackageAn Amazon media service that allows to prepare and protect videos for delivery over the Internet. MediaPackage creates video streams that are formatted to play on connected TVs, mobile phones, computers, smart phones, game consoles, and tablets. Read more: https://aws.amazon.com/mediapackage/
Media Source Extensions (MSE)An open standard from the World Wide Web Consortium (W3C) that allows JavaScript to send byte streams to media codecs within HTML5-compliant web browsers. This means that client-side prefetching and buffering code for streaming media can be implemented entirely in JavaScript.
OAuth 2.0Industry-standard protocol for authorization. Read more: https://oauth.net/2/
OpenID ConnectOpenID Connect 1.0 is a simple identity layer on top of the OAuth 2.0 protocol. It allows Clients to verify the identity of the End-User based on the authentication performed by an Authorization Server, as well as to obtain basic profile information about the End-User in an interoperable and REST-like manner. Read more: https://openid.net/connect/
PostmanA collaboration platform for API development. It allows to design and mock, debug, automatically test, document, monitor, and publish the API. Read more: https://www.postman.com/
Software Development Kit (SDK)A collection of software development tools gathered into one installable package. It facilitates the creation of applications and is typically specific to a hardware platform and operating system combination. SDKs could be used as 3rd party tools with DRM technologies. Read more: https://en.wikipedia.org/wiki/Software_development_kit
Universal Windows PlatformUWP is a computing platform created by Microsoft and first introduced in Windows 10. The purpose of this platform is to help develop universal apps that run on Windows 10, Windows 10 Mobile, Windows 11, Xbox One, Xbox Series X/S and HoloLens without the need to be rewritten for each. Read more: https://en.wikipedia.org/wiki/Universal_Windows_Platform