Overview of the Live Stream API Stay organized with collections Save and categorize content based on your preferences.
This page provides an overview of the Live Stream API. The Live Stream APItranscodes mezzanine live signals into direct-to-consumer streaming formats,including Dynamic Adaptive Streaming over HTTP (DASH/MPEG-DASH), and HTTP LiveStreaming (HLS), for multiple device platforms.
You first create an input endpoint, then create a channel resource thattranscodes the live SRT or RTMP input signal into an HLS or DASH output stream.Output streams created by the Live Stream API are saved to Cloud Storagebuckets. You can then configure a Cloud Storage bucket as a backend forMedia CDN.
Features
The Live Stream API includes support for the following features:
Automatic infrastructure provisioning
Integration with Cloud Storage, Cloud Audit Logs, and Google Cloudinfrastructure
Configuration of a backup input stream for redundancy
Live to video on demand (VOD)
Content encryption
Slates (image and video)
Supported inputs and outputs
The following tables show the supported input and output formats for theLive Stream API.
| Input types | Supported formats |
|---|---|
| Protocols | SRT, RTMP |
| Video codecs | H.264 (AVC) |
| Audio codecs | AAC |
| Captions | Embedded CEA-608/708 (passthrough) |
| Output types | Supported formats |
|---|---|
| Protocols | Apple HLS with fMP4 and MPEG2-TS segments, MPEG-DASHwith fMP4 segments |
| Video codecs | H.264 (AVC) |
| Audio codecs | AAC |
| Captions | Embedded CEA-608/708 (passthrough) |
| Encryption | AES-128, SAMPLE-AES, MPEG-CENC |
| Spritesheet images | JPG tiles, single images |
See thesupported configurations for content encryption.
Access control
The Live Stream API access control model is based onIdentity and Access Management (IAM). IAM's fine-grainedpermissions give you control over what can be done with media data, and by whom.
Concepts and terminology
This section provides a glossary of useful terms for working with theLive Stream API.
Channels
A channel is a resource that ingests the input stream through an input endpoint,transcodes the input stream into multiple renditions, and publishes output livestreams in certain formats in the specified location. You can include a primaryand backup input stream in the same channel.
Channel events
A channel event is a sub-resource of a channel that executes operations on achannel resource without needing to stop the channel. The following channelevents are supported:
- Create ad break markers
- Mute/unmute the live stream
- Insert a slate into the live stream
- Return to program (live stream)
- Switch the channel input
Encoder
An encoder is a program used to send input streams, such asffmpeg.
Input endpoints
An input endpoint is an endpoint to which your encoder sends your input stream.You can use the input endpoint to specify configurations for your stream, suchas input resolution, input type, and video cropping.
An input endpoint consists of either an RTMP or SRT URI that looks like thefollowing:
rtmp://192.0.2.1/live/STREAM_ID
srt://192.0.2.1:4201?streamid=STREAM_ID
whereSTREAM_ID is a string such asb8ebdd94-c8d9-4d88-a16e-b963c43a953b.
Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-02-19 UTC.