LINUX.ORG.RU

NVENC и Overlay в ffmpeg

 , ,


2

1

Добрый вечер!
Подскажите, возможен ли сабж? Можно ли как-то при аппаратном перекодировании видео в ffmpeg на видяхе от Nvidia наложить на него логотип?
Раньше делал на встройке Intel через vaapi, - не было никаких проблем. А вот зеленая карта не умеет в vaapi, а при использовании nvenc ругается при попытке наложить картинку. Документации для нужных функций, если они есть в nvenc, я не нашел =(

Логотипы зло (к тому же грязно затираются, заменяются), ffmpeg правильно делает.

anonymous
()

Используешь в opengl/vulkan текстурку, в которую декодирует nvenc и делаешь что хочешь с ней. Пример есть в mpv.

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

Привет, вчера забыл.

Я сейчас грепнул бэкап своих файлов bash_history и не нашёл

Извини что не готовая команда, но выдри участки нужной команды отсюда: https://stackoverflow.com/questions/10918907/how-to-add-transparent-watermark...

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

Я сейчас грепнул бэкап своих файлов bash_history и не нашёл

Заведи себе текстовый файл с заметками.

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

накладываются не только лишь картинки и да сложна

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

Уже...
ffmpeg \
-f concat -safe 0 -r 30 -hwaccel_device 0 -hwaccel cuvid -c:v mjpeg_cuvid -i short.list \
-c:v png -i mexico.png \
-filter_complex «[0:v] scale_npp=1920:1080,hwdownload,format=nv12 [v1]; [1:v] scale=100:100 [v2];[v1][v2] overlay=10:10» \
-movflags +faststart -vcodec h264_nvenc -map 0:v -r 30 -b:v 4M -y test.mp4

lasthappy
() автор топика
Ответ на: комментарий от hizel

Лишний раз убеждаюсь, что vaapi под интел куда более крутой инструментарий имеет. Да и в целом гибкость кодирования на встройке интела оставило лишь положительные впечатления.
АМД в плане vaapi тоже достаточно хороши, но очень медленные у них энкодеры
А вот карты зеленых оставили смешанные чувства - хорошая поддержка, быстрые кодеки, но функционал скупой...

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

Ну вообще хуанг мог и допилить ffmpeg сам. Видимо заказчики не требовали.

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

ffmpeg \
-f concat -safe 0 -r 30 -hwaccel_device 0 -hwaccel cuvid -c:v mjpeg_cuvid -i short.list \
-c:v png -i mexico.png \
-filter_complex «[0:v] scale_npp=1920:1080,hwdownload,format=nv12 [v1]; [1:v] scale=100:100 [v2];[v1][v2] overlay=10:10» \
-movflags +faststart -vcodec h264_nvenc -map 0:v -r 30 -b:v 4M -y test.mp4

Если кто подскажет, как это дело оптимизировать или ускорить, буду признателен.

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

Может и так, но Intel принимает непосредственное участие в разработке vaapi. Отсюда и богатый функционал.

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

Так тебе во втором посте написали. Какого-нибудь школьника-игродела найми, он всё сделает, в отличии от Ълоровских компутер сцаентистов которым сложна.

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

сравнивая ffmpeg -h encoder=h264_vaapi и h264_nvenc, я не понимаю о какой гибкости кодирования на vaapi вы говорите

hizel ★★★★★
()
Ответ на: комментарий от lasthappy

Если кто подскажет, как это дело оптимизировать или ускорить, буду признателен.

Что именно оптимизировать?

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

Ну скейлинг входящего потока нужен, ну или скейлинг готового видео. И желательно аппаратный, - ЦП итак есть чем заняться.

lasthappy
() автор топика
Ответ на: комментарий от ZenitharChampion

Я сейчас грепнул бэкап своих файлов bash_history и не нашёл

А вот была бы в Bash поддержка нормальной SQLite базы, в которую коммитилось не абы как, а сразу после нажатия Enter, то ты бы ничего не потерял.

Но диды UNIX Way’я завещали всем хранить всё в текстовых файлах, лол.

EXL ★★★★★
()
Ответ на: комментарий от lasthappy

Нужно было сразу так и писать. Вам нужно масштабировать видео и при этом накладывать overlay? У меня такой задачи не было. Я просто кодирую видео через h264_nvenc и накладывают на него всяческие фильтры - умрв.

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

Там этому вашему ffmpeg можно просто подсунуть свой шейдер? Шейдером несложно сделать что угодно.

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

Средний школьник пишет шейдеры для решейда/енб, а на лоре при упоминании шейдеров детектируют какого-то ноунейма. Люблю лор.

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