Аппаратное кодирование FFMPEG H264
В настоящее время я пытаюсь использовать FFMPEG с аппаратным / графическим кодированием с кодеком H264.
То, что я делаю, я направляю необработанные данные в ffmpeg для вывода их в поток udp. Это мои настройки:
var ffmpegArgs = [
'-c:v', 'rawvideo',// input container
'-f', 'rawvideo',
'-pix_fmt', 'rgba', // input pixel format
'-s', '600x600', //input size
'-video_size', '600x600',
'-i', 'pipe:0', // input source
'-f', 'mpegts', // output container format
'-s', '600x600',
'-video_size', '600x600',
'-c:v', 'libx264', // output video codec
'-b:v', '1m', // output bitrate
'udp://239.255.123.46:1234' // output destination
];
И в целом это работает, но с действительно плохим качеством и задержкой. Кадры отстают на 5 секунд, а затем содержат много ошибок, поэтому для просмотра кадра с дырой требуется не менее 10 или 15 секунд (видео - это "прямой эфир" с холста).
Однако я подумал, что здесь может помочь кодирование GPU, но у меня это не получается. Я пытаюсь использовать VAAPI
, но независимо от того, какую команду от ffmpeg я пытаюсь использовать ( здесь описано), она не работает....
Я пытаюсь запустить это на Intel NUC ( этот) на Ubuntu 16.04.
Есть ли какие-нибудь советы о том, как мне это запустить?
0 ответов
Используемый вами кодировщик, libx264, не поддерживает кодирование с аппаратным ускорением. Доступны только (некоторые) функции упреждающего просмотра с ускорением OpenCL, и выигрыш в производительности от этого в лучшем случае незначителен, особенно в высокопроизводительных системах. Чтобы предоставить возможность упреждающего ускоренного просмотра в этой библиотеке, убедитесь, что заголовки OpenCL ICD и OpenCL присутствуют в системе и что параметр--disable-opencl
опускается на этапе настройки x264. Аналогично, для FFmpeg убедитесь, что--enable-opencl
включен на этапе настройки.
Взгляните на аналогичные ответы, предоставленные на запросы, касающиеся кодирования с аппаратным ускорением с помощью FFmpeg.
С NVENC.
С QuickSync (для которого требуется установка Intel Media SDK при настройке и сборке FFmpeg).
С VAAPI.
И вики FFmpeg об аппаратном ускорении.