Есть выделенная машина, на ней стоит FX9590. Ниже пример тестового скрипта, который выполняет транскодинг.
#!/bin/bash
ffmpeg -re \
-i input.flv \
-c:a copy \
-b:a 128k \
-c:v libx264 \
-bf 0 \
-b:v 6M \
-minrate 6M \
-maxrate 6M \
-bufsize 200K \
-preset faster \
-crf 7
-r 60 \
-x264-params nal-hrd=cbr:force-cfr=1:keyint=120 \
-movflags +faststart \
-f flv rtmp://a.rtmp.youtube.com/live2/xxxx-xxxx-xxxx-xxxx
#Input #0, flv, from 'input.flv':
Metadata:
encoder : Lavf57.84.100
Duration: 00:02:12.50, start: 0.000000, bitrate: 74641 kb/s
Stream #0:0: Video: h264 (High), yuvj420p(pc, bt709/unknown/unknown, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 80000 kb/s, 60 fps, 60 tbr, 1k tbn, 120 tbc
Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp, 320 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (copy)
#Output #0, flv, to 'rtmp://a.rtmp.youtube.com/live2/xxxx-xxxx-xxxx-xxxx':
Metadata:
encoder : Lavf58.12.100
Stream #0:0: Video: h264 (libx264) ([7][0][0][0] / 0x0007), yuvj420p(pc), 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 9000 kb/s, 60 fps, 1k tbn, 60 tbc
Metadata:
encoder : Lavc58.18.100 libx264
Side data:
cpb: bitrate max/min/avg: 9000000/0/9000000 buffer size: 200000 vbv_delay: -1
Stream #0:1: Audio: aac (LC) ([10][0][0][0] / 0x000A), 48000 Hz, stereo, fltp, 128 kb/s
Но, на этой же машине еще есть графический ускоритель AMD R9 390X. Как я понимаю, он кодирует при помощи VCE. Однако, из за ограничений Ubuntu 18.10 по графическим драйверам от амудешников, приходится использовать средства дефолнтного драйвера MESA.
И тут у меня полный безперспективняк, по той причине что используя стандартные советы по кодированию(целый раздел по VAAPI на FFMPEG). Видео которое получается на выходе имеет нечитабельный формат. А все попытки как то решить эту проблему, заканчиваются плевками от ffmpeg в мою сторону.
По этому прошу помощи от бывалых, может кому не лень чиркнуть подобные настройки кодировщика только под мою ситуацию с GPU. Заранее буду очень благодарен.