LINUX.ORG.RU

hw_frames_ctx must be set when using GPU frames as input

 ,


0

1

коллеги пытаюсь заюзать для видео кодирования данную видеокарту ( GeForce GTX 1080 дрова NVIDIA-SMI 440.64.00 Driver Version: 440.64.00 CUDA Version: 10.2 ) но почему то выдает ошибку

[h264_nvenc @ 0x556a2263f340] hw_frames_ctx must be set when using GPU frames as input
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

Сама команда

ffmpeg -y -nostdin -hide_banner -loglevel error -stats -hwaccel cuvid -c:v h264_cuvid -surfaces 32 -i 1080p_source.mp4 \
-vf "hwupload, scale_npp=-2:360, setsar=1" \
-vcodec h264_nvenc -movflags +faststart -preset fast -cq 0 -bf 2 -g 150 -b:v 800k -maxrate 856k -bufsize 1200k \
-profile:v main -level 4.0 -cq 0 -rc-lookahead 20 -c:a copy -f mp4 /tmp/out/360_2_GPU.mp4 \
-vf "hwupload, scale_npp=-2:720, setsar=1" \
-vcodec h264_nvenc -movflags +faststart -preset fast -cq 0 -bf 2 -g 150 -b:v 2400k -maxrate 2800k -bufsize 3200k \
-profile:v main -level 4.0 -cq 0 -rc-lookahead 20 -c:a copy -f mp4 /tmp/out/720_2_GPU.mp4 \
-c:v copy -movflags +faststart \
-c:a copy -f mp4 /tmp/out/1080_2_GPU.mp4
★★★★★

зачем hwupload если декодируете h264_cuvid

anonymous
()

Декодировать аппаратно кувидом -c:v h264_cuvid -i обязательно? Перед -i принудительно указывается кодек для декодирования (а, может, там и не h264). В ошибке сказано, что раз ты используешь аппаратный декодер, ты должен также обязательно указать параметр hw_frames_ctx, хз что за параметр. Параметры 1080p_source.mp4 покажи. Ты кодишь за раз сразу два видео? Первый раз с таким встречаюсь. -c:a copy что если в исходнике не aac, а что-то несовместимое с mp4 контейнером? Ну это не в этом случае, а вообще.

anonymous
()
Ответ на: комментарий от anonymous

он просто указал какой-то лишний параметр, который мешает оставлять кадр в видеопамяти при обработке

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.