LiveKit LogoDocs

Server / Importing from Other Sources / Encoder Configuration

Encoder configuration

On this page

OBSFFmpeg

The IngressInfo object returned by most Ingress APIs contains a full list of the ingress parameters. In particular, the url and stream_key fields provide the settings required to configure encoders to send media to the Ingress service. Refer to the documentation of any RTMP-capable streaming software for more information about how to provide these parameters. Two common examples are OBS and FFmpeg:

OBS

The OBS Project releases OBS Studio, a powerful cross platform broadcasting software that can be fully confugured through a graphical user interface, and capable of sending complex video compositions to LiveKit WebRTC via Ingress. In order to configure OBS for LiveKit, in the main window, select the Settings option, and then the Stream tab. In the window, select the Custom... Service and enter the URL from the StreamInfo in the Server field, and the stream key in the Stream Key field.

OBS Stream configuration

FFmpeg

FFmpeg is a powerful media processing command-line tool that can be used to stream media to LiveKit Ingress. The following command can be used for that purpose:

% ffmpeg -re -i <input definition> -c:v libx254 -b:v 3M -preset veryfast -profile high -c:a libfdk_aac -b:a 128k -f flv "<url from the stream info>/<stream key>"

For instance:

% ffmpeg -re -i my_file.mp4 -c:v libx254 -b:v 3M -preset veryfast -profile high -c:a libfdk_aac -b:a 128k -f flv rtmps://my-project.livekit.cloud/x/1234567890ab

Refer to the FFmpeg documentation for a list of the supported inputs, and how to use them.

Previous

Chevron IconIngress
LiveKit logo

Product

SFU

SDKs

Performance

Deployment