Я запустил огромный видеопроект, который я пытаюсь автоматизировать.Пока я добился хорошего прогресса, но теперь я застрял.Я искал в Google и здесь, в Stack OverFlow ответы, но не могу найти решение моей проблемы.
Для завершения я объясню свой полный проект.
Первый шаг моегоПроект состоит в том, чтобы преобразовать все мои файлы в *.mp4
и в то же время записать мой логотип и веб-сайт в видео.Я делаю это с помощью этого кода:
for %%a in ("*.*") do ffmpeg -i "%%a" -i "C:\Users\PC03\Desktop\Video test\Overlay.png" -filter_complex "[0:v][1:v] overlay" -c:v libx264 -preset medium -crf 23 -c:a aac -b:a 128k "newfiles\%%~na.mp4"
pause
После этого я помещу все видеофайлы в соответствующую подпапку.Таким образом, у меня есть почти сто подпапок с 2 или 3 файлами в них.Для каждой подкарты я хочу видео с введением (не в подкарте), видео в подкарте и вне (не в подкарте).Я могу сделать то же самое с этим кодом:
ffmpeg -f concat -i intro.mp4 -i mylist.txt -outro.png -c copy total.mp4
Чтобы автоматизировать все, у меня есть этот код, чтобы сделать файл mylist.txt
для каждой подпапки:
>output.txt (
echo C:\Users\PC03\Desktop\Video test\vast\intro.mp4
(for %%i in (*.mp4) do @echo file '%%i')
echo C:\Users\PC03\Desktop\Video test\vast\outro.mp4
)
Теперь единственное, чтоМне нужно сделать, это автоматизировать следующий код:
ffmpeg -f concat -i intro.mp4 -i mylist.txt -outro.png -c copy total.mp4
, чтобы пройти через все подпапки.
Я сделал этот код:
FOR /R "C:\Users\PC03\Desktop\Video test" %%F IN (.) DO (
> %%F\output.txt (
echo "C:\Users\PC03\Desktop\Video test\vast\intro.mp4"
(for %%i in (*.mp4) do (
@echo file '%%i'
))
echo "C:\Users\PC03\Desktop\Video test\vast\outro.mp4"
)
)
Этот код обеспечиваетя с mylist.txt
файлом в каждой подпапке, но содержание не то, что я хочу.Он берет содержимое родительской карты вместо подпапок.У меня есть сильное чувство, что где-то в этом коде я должен сделать еще один FOR /R
, но я не могу заставить его работать.
У кого-нибудь есть предложения, как это сделать?