Added revc

This commit is contained in:
DataHoarder 2023-08-20 06:27:08 +02:00
parent 34fee7e5ad
commit ae3afaa439
Signed by: DataHoarder
SSH key fingerprint: SHA256:OLTRf6Fl87G52SiR7sWLGNzlJt4WOX+tfI2yxo0z7xk
3 changed files with 31 additions and 0 deletions

View file

@ -36,6 +36,10 @@ ARG AV1AN_REPO=https://github.com/master-of-zen/Av1an.git
ARG XEVE_TAG=v0.4.3-3890dae6
ARG XEVE_REPO=https://github.com/mpeg5/xeve.git
ARG REVC_TAG=master
ARG REVC_REPO=https://github.com/revcx/revc.git
# VapourSynth versions
ARG VS3_TAG=R55-API3
ARG VS4_TAG=R62
@ -357,6 +361,20 @@ COPY docker/build/xeve/build.sh /build.sh
RUN /build.sh MAIN
FROM rust:1.71-bullseye AS build-revc
ARG REVC_TAG
ARG REVC_REPO
RUN DEBIAN_FRONTEND=noninteractive apt update && \
DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends \
nasm jq
COPY docker/git-shallow-clone.sh /usr/bin/git-shallow-clone
COPY docker/build/revc/build.sh /build.sh
RUN /build.sh
FROM build-base AS build-mediainfo
ARG ZENLIB_TAG
@ -408,6 +426,7 @@ COPY --from=build-vtm /usr/bin/VTM* /usr/bin/
COPY --from=build-xeve /usr/bin/xeveb_app /usr/bin/xeveb
COPY --from=build-xeve-main /usr/bin/xeve_app /usr/bin/xeve
COPY --from=build-revce /usr/bin/revc* /usr/bin/
COPY --from=build-fdk-aac /usr/bin/aac-enc /usr/bin/aac-enc

View file

@ -29,6 +29,7 @@ $ DOCKER_BUILDKIT=1 docker build -t encoder --target encoder-vapoursynth4 .
| [rav1e p20230815](https://github.com/xiph/rav1e/tree/p20230815) | AV1 Encoder | Can be accessed via `$ rav1e` |
| [Av1an 0.4.1](https://github.com/master-of-zen/Av1an/tree/0.4.1) | Encoding Tools | Cross-platform command-line AV1 / VP9 / H.265 / H.264 encoding framework with per scene quality encoding. Can be accessed via `$ av1an` |
| [xeve v0.4.3-3890dae6](https://github.com/mpeg5/xeve/tree/v0.4.3-3890dae6) | MPEG-5 EVC Encoder | eXtra-fast Essential Video Encoder, MPEG-5 EVC (Essential Video Coding). Can be accessed via `$ xeveb` or `$ xeve` |
| [revc master](https://github.com/revcx/revc/tree/master) | MPEG-5 EVC Encoder/Decoder | Can be accessed via `$ revce` or `$ revcd` |
| [VapourSynth R55-API3](https://github.com/vapoursynth/vapoursynth/tree/R55-API3) | Processing Tools | VapourSynth API3. Can be accessed via `$ vspipe` |
| [VapourSynth R62](https://github.com/vapoursynth/vapoursynth/tree/R62) | Processing Tools | VapourSynth API4. Can be accessed via `$ vspipe`. Requires using custom docker build target command. |
| [FDK-AAC master](https://github.com/mstorsjo/fdk-aac) | AAC-LC/HE/HEv2 Encoder | Fraunhofer FDK AAC code from Android. Can be accessed via `$ aac-enc` |

11
docker/build/revc/build.sh Executable file
View file

@ -0,0 +1,11 @@
#!/bin/bash
set -e
set -o pipefail
git-shallow-clone "${REVC_TAG}" "${REVC_REPO}" /src/revc
pushd /src/revc
sed -i 's/use thiserror::private::DisplayAsDisplay;/use thiserror::__private::DisplayAsDisplay;/g' src/enc/mod.rs
RUSTFLAGS="-C target-cpu=native" cargo build --release --features binaries
cp "$(cargo metadata --format-version 1 | jq -r '.target_directory')/release/revce" /usr/bin/revce
cp "$(cargo metadata --format-version 1 | jq -r '.target_directory')/release/revcd" /usr/bin/revcd