Как использовать FFmpeg и rav1e для создания высококачественных файлов AV1?

Я использую Ubuntu Bionic Beaver 18.04 LTS, и я хотел бы создавать высококачественные файлы AV1 с использованием FFmpeg и librav1e. Меня подстегнуло недавнее добавление поддержки rav1e для FFmpeg.

Материал, с которым мне интересно работать, приведен здесь:

  1. Видео трейлера Sintel (720p без сжатия 1,7 ГБ)
  2. Sintel трейлер аудио (flac 5MB)

Это очень ранних дней для поддержки rav1e под FFmpeg, когда еще не так много документации и опубликованных экспериментов. Было бы здорово увидеть, как все это работает под релизом Ubuntu LTS!

2
задан 1 December 2019 в 05:57

1 ответ

Похоже, что эта цель может быть достигнута в 4 относительно легкий шаги, таким образом позволив Бионическому Бобру 18.04 LTS, чтобы справиться с кодированием AV1 с FFmpeg и rav1e!

1. Получите недавнюю копию ржавчины...

у Бионического Бобра есть копия ржавчины, которая слишком стара, так захватите более новую копию следующим образом:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Следуйте за дефолтами и затем бегите:

source ~/.profile

, чтобы предоставить мгновенный доступ к новейшей ржавчине и друзьям.

2. Установите rav1e

Лучше всего, чтобы установить обоих исполняемый файл (команда rav1e --fullhelp тогда покажет варианты, которые могут использоваться из FFmpeg с -rav1e-params выбор), а также библиотеки, которыми FFmpeg будет пользоваться, чтобы успешно собрать и произвести librav1e.

Сначала исполняемый файл, с помощью простой копии и блока кода пасты:

sudo apt-get install nasm && \
mkdir -pv $HOME/{bin,ffmpeg_sources,ffmpeg_build} && \
cd $HOME/ffmpeg_sources && \
wget https://github.com/xiph/rav1e/archive/0.1.0.tar.gz && \
tar xvf 0.1.0.tar.gz && cd rav1e-0.1.0 && \
cargo build --release && \
find target -name rav1e -exec install -m 755 {} $HOME/bin \; && \
strip ~/bin/rav1e

Следующий устанавливают грузовой-c апплет, а также библиотеки и файл pkg-конфигурации, необходимый FFmpeg:

cd $HOME/ffmpeg_sources/rav1e-0.1.0 && \
cargo install cargo-c && \
cargo cinstall --release \
     --prefix=$HOME/ffmpeg_build \
     --libdir=$HOME/ffmpeg_build/lib \
     --includedir=$HOME/ffmpeg_build/include

Лучше всего, чтобы тогда удалить rav1e разделил библиотеки, которые, кажется, вызывают FFmpeg некоторая боль:

rm -v $HOME/ffmpeg_build/lib/librav1e.so*

3. Установите FFmpeg

, Теперь идут в FFmpeg trac место и устанавливают FFmpeg, как проинструктировано, не забывая добавлять:

--enable-librav1e

к эти ./configure последовательность. Тогда тяжелая работа сделана :)

4. Управляйте кодирующим устройством

, очень разумные А кодируют, может тогда управляться на испытательных файлах, упомянутых в оригинальном вопросе (хотя я вижу некоторый pixelation в файле продукции):

ffmpeg -i sintel_trailer_2k_720p24.y4m -i sintel_trailer-audio.flac \
       -c:v librav1e -b:v 750K \
       -tile-columns 2 -tile-rows 2 \
       -rav1e-params speed=4:low_latency=true \
       -c:a libfdk_aac -b:a 128k \
       sintel_trailer_av1.mp4

Это кодирует приблизительно в дважды скорость , который замечен с FFmpeg и libaom-av1. Несомненно, эта последовательность кодирования может быть далее усовершенствована, и я сделаю это как rav1e, FFmpeg и AV1, кодирующий зрелый...

5. Безвозмездный скриншот

хорошо, таким образом, есть дополнительный 5-й шаг; делание снимка экрана завершенного управления файла продукции :)

enter image description here

2
ответ дан 2 December 2019 в 03:26

Другие вопросы по тегам:

Похожие вопросы: