This repo contains filter implementations for ffmpeg-filter-proxy.
All the filters so far are written in Rust and it's assumed that you have the Rust toolchain installed if you want to build or test any of the filters in this repo.
A filter used to overlay subtitles at SVT.
The subtitle rendering format is essentially just a couple of protobuf message types.
A filter used to overlay SVG.
To see how the data should be formatted:
gzip -dc samples/sample.tsvg | less
A filter used to overlay a single SVG file, e.g. a logo.
A filter that embeds a Java Virtual Machine.
Let's you write the filter implementation in your favorite JVM language.
The filter runner can be used to test a filter implementation without using FFmpeg.
SRF (on Mac):
(cd srf_filter; cargo build --release)
(cd filter_runner; cargo run -- ../srf_filter/target/release/libsrf_filter.dylib -c "srf=../samples/sample.srf" -o ../srf.png)
TSVG (on Mac):
(cd tsvg_filter; cargo build --release)
(cd filter_runner; cargo run -- ../tsvg_filter/target/release/libtsvg_filter.dylib -c "tsvg=../samples/sample.tsvg" -o ../tsvg.png)
SVG (on Mac):
(cd svg_filter; cargo build --release)
(cd filter_runner; cargo run -- ../svg_filter/target/release/libsvg_filter.dylib -c "svg=../samples/sample.svg" -o ../svg.png)
For more info about the available options:
(cd filter_runner; cargo run -- --help)
Copyright 2020 Sveriges Television AB
This software is released under the Apache 2.0 License.
Christer Sandberg https://github.com/chrsan