#video #ffmpeg
#Видео #ffmpeg
Вопрос:
У меня есть это для использования видео, замены звука и добавления субтитров:
ffmpeg -vsync 0 -hwaccel cuda -an -i «E:video.mp4 » -vn -i «E:audio.mp3 » -вф «subtitles=E:\sub.txt » -карта 0: v -карта 1: a -b: v 4M -максимальная скорость 4M «E:output.mp4 » -у
Я не мог понять, как добавить еще один в цепочку, например, добавить логотип в правом нижнем углу
Что я пробовал до сих пор, после нескольких часов (все еще не работает)
ffmpeg -vsync 0 -hwaccel cuda -an -i «E:video.mp4 » -vn -i «E:audio.mp3 » -я «E:logo.png » -вф «subtitles=E:\sub.txt » -карта 0: v -карта 1: a -предустановленный сверхбыстрый -filter_complex «[1]формат=rgba, colorchannelmixer=aa=0,5[логотип];[0] [логотип] наложение = (W-w) / 2: (H-h) / 2: формат = авто, формат = yuv420p» «E:output.mp4 » -у
Ответ №1:
Вся фильтрация должна выполняться в complex filtergraph. Сначала записывайте субтитры на основное видео, затем накладывайте логотип на этот результат.
ffmpeg -hwaccel cuda -an -i "E:video.mp4" -vn -i "E:audio.mp3" -i "E:logo.png" -filter_complex "[2]format=rgba,colorchannelmixer=aa=0.5[logo];[v][logo]overlay=(W-w)/2:(H-h)/2:format=auto,format=yuv420p,subtitles=E:\sub.txt" -b:v 4M -maxrate 4M "E:output.mp4" -y
Комментарии:
1. Ошибка: спецификатор потока » в описании filtergraph [0]subtitles=E\:sub.ass[v];[1]format=rgba,colorchannelmixer=aa=0.5[logo];[v][logo]overlay=(W-w)/2:(H-h) / 2: формат = авто, формат = yuv420p соответствует отключенному входному потоку.
2. Исправлена панель фильтров.
3. хотя это работает, при рендеринге логотип находится поверх записанных субтитров.
4. Вы не указали желаемый порядок. Изменено.