機能的には互換性を維持しつつ、apngとavif対応に
ほとんどの画像読み書きにimage crate v0.25.2を使用しています
環境変数MEDIA_PROXY_CONFIG_PATH
を設定する事でファイルの場所を指定できます
デフォルト値は$(pwd)/config.json
です
十分に強力なマシンではencode_avif
をtrue
に変更することでAVIFエンコードを利用する事ができます
- x86_64-unknown-linux-musl
- aarch64-unknown-linux-musl
- armv7-unknown-linux-musleabihf
- arm-unknown-linux-musleabihf
- i686-unknown-linux-musl
- riscv64gc-unknown-linux-musl
Dockerを使用する場合はbuildxとqemuによるクロスコンパイルが利用できます
ビルド対象プラットフォームはtarget supportの項目を参照してください
git clone --recursive https://github.com/yojo-art/media-proxy-rs && cd media-proxy-rs
docker build -t media-proxy-rs .
この方法ではx86_64-unknown-linux-gnu
向けにビルドします
すべてを静的に組み込むmusl系とは異なる共有ライブラリを必要とする場合があります
- https://www.rust-lang.org/ja/tools/install に従ってrustをインストール
apt-get install -y meson ninja-build pkg-config nasm git
git clone --recursive https://github.com/yojo-art/media-proxy-rs && cd media-proxy-rs
cargo build --release