Multimedia Renderer API

Updated: April 19, 2023

The multimedia renderer API exposes the data types and functions you can use to connect to mm-renderer, create contexts, configure inputs and outputs, control playback, and process events.

To use mm-renderer, your client application must first connect to the service. Next, it must create a context to manage the media flow from an input to one or more outputs. It can also specify parameters for the context, its input, and its outputs. After the parameters have been configured, your application can issue media playback commands; for example, to start and stop playback.

The API can deliver events, which can indicate playback state changes, new input and output attachments, parameter updates, or errors. An application can read information about the latest event and perform any necessary processing.

Note: All API functions described here are thread-safe, unless otherwise indicated. But the functions are neither interrupt handler-safe nor signal handler-safe, under any circumstances. Nor are they cancellation-safe, because we don't guarantee that cancelling a thread that is executing an mm-renderer API call is safe.