Skip to content

svt/ffmpeg-filter-proxy-filters

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ffmpeg-filter-proxy-filters

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.

Filter Runner

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)

License

Copyright 2020 Sveriges Television AB

This software is released under the Apache 2.0 License.

Primary Maintainers

Christer Sandberg https://github.com/chrsan