Application for real-time video processing/transforming/composing, providing simple, language-agnostic API for live video rendering.
LiveCompositor targets real-time use cases, like video conferencing, live-streaming, or broadcasting (e.g. with WebRTC / HLS / RTMP).
LiveCompositor receives inputs and sends outputs streams via RTP. HTTP API is used to define how inputs should be transformed and combined to produce desired outputs.
For the initial release, we want LiveCompositor to support those four types of transformations, that you can combine:
- Common transformations - frequently used, already implemented transformations, like layouts, grids, cropping, corners rounding, blending, fading, etc.
- Custom shader transformations - registering and using custom shaders, allowing to adapt LiveCompositor for specific business needs.
- Web Rendering - embedding videos in custom websites.
- Text Rendering
Currently, the project is under development and API is unstable.
Examples source code is under the examples
directory.
Running examples requires:
For better performance, build examples with the release compilation profile:
cargo run --release --example <example_name>
Linux and macOS.
Copyright 2023, Software Mansion