Как более эффективно транскодировать 50 потоков H264 с помощью FFMPEG? - PullRequest
0 голосов
/ 20 июня 2019

Мне нужно (повторно) перекодировать ~ 50 Live-Streams.Эти потоки в H264 с 720p до 1080p и битрейтом до 10M.Я просто хочу снизить качество и битрейт потоков до 720p с макс.2M битрейт.

Вот что я сейчас делаю:

ffmpeg -re -i "http://domain.tld/path/file.ext" -vcodec libx264 -preset veryfast -vf scale=-2:720 -b:v 2M -maxrate 2M -bufsize 1M -acodec libfdk_aac -f flv "rtmp://127.0.0.1:1935/live/stream_xyz"

Мой серверный процессор (2 x Xeon E5-2630 v3) уже на 100% всего с 12 потоками.Я обновлю свой сервер до 2 x Xeon Gold 5118 в следующем месяце, но я не думаю, что это даст мне гораздо больше энергии.

Может ли кто-нибудь помочь мне сделать это более эффективным?

Было бы эффективнее / дешевле сделать это с графическими процессорами?

Или какие-нибудь другие идеи сделать это максимально эффективным и дешевым?

Спасибо

1 Ответ

1 голос
/ 20 июня 2019

Может ли кто-нибудь помочь мне сделать это более эффективно?

Нет.Кодирование видео занимает много процессора.период.Если бы существовал «более эффективный» способ, он уже был бы по умолчанию.

Вы можете пойти «дешевле», используя аппаратное ускорение (nvenc, quicksync и т. Д., Но вы не получите 12 потоков из этого, икачество будет хуже).Или используйте более медленную предустановку x264 (сверхбыструю скорость) и жертвуйте этим качеством ради скорости.

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

...