Ошибка при сборке аудио + видео
Closed this issue · 4 comments
Я так понимаю, что получаю ошибку в самом конце при попытке склеить готовые видео и аудио. Судя из ошибки это ffmpeg не справляется.
Система Windows 11.
vot-cli отдельно работает и аудио скачивает.
yt-dlp отдельно тоже видео качает.
на скрине показал, что vot-cli, yt-dlp, ffmpeg находятся в PATH
на скрине yt-dlp поставлен с помощью питона, но это уже после танцев с бубном, изначально ставил просто на С:\ эффект тот же
Терминал запускал как от пользователя так и от админа.
Хелп
Я так понимаю, что получаю ошибку в самом конце при попытке склеить готовые видео и аудио. Судя из ошибки это ffmpeg не справляется. Система Windows 11. vot-cli отдельно работает и аудио скачивает. yt-dlp отдельно тоже видео качает. на скрине показал, что vot-cli, yt-dlp, ffmpeg находятся в PATH на скрине yt-dlp поставлен с помощью питона, но это уже после танцев с бубном, изначально ставил просто на С:\ эффект тот же Терминал запускал как от пользователя так и от админа. Хелп
Забыл написать, что это про Скрипт для скачивания видео с встроенным переводом (надстройка над vot-cli)
Залил обновленную версию powershell скрипта, возможно, поможет. Скрипт не был адаптирован под перевод только одного видео и из-за этого повторно загружал видео несколько раз и теоретически из-за этого могло что-то ломаться.
Если не поможет, то есть еще несколько вариантов:
- Попробуй удалить/очистить папку
temp
рядом с powershell скриптом (если она есть), возможно, там что-то осталось от ошибок при скачивание и из-за этого не удается записать файл - Попробуй поменять 36-38 строку в powershell скрипте с
" `
-map 0:v -map "[audio_out]" `
-y $video_full_name
на:
" `
-map 0:v -map "[audio_out]" `
-y "[translated] $video_full_name"
(сделать чтобы итоговому видео менялось название т.к. ffmpeg жалуется, что изменяется исходный файл 🤔 )
Ваш фикс не сработал так как добавляет [translated] в начало всего абсолюного пути, а не к имени файла и даже когда я это исправил, то файл записывался, но сразу же удалялся т.к. находится в удалаемой папке. Пока искал причину было впечатление замкнутого круга =)
По итогу строки 36-38 оставил в исходном виде. Изменил путь переменной $video_full_name на 23 строке:
$video_full_name = Join-Path (Get-Location) (Get-ChildItem $temp_video_dir).Name
чтобы сохранять видео не в папку temp, а в папку со скриптом и все отлично заработало.
P.S. хотел сделать целый пул реквест, но что-то пошло не так... Так что прошу вас внести соотв. изменения
Ваш фикс не сработал так как добавляет [translated] в начало всего абсолюного пути, а не к имени файла
Странно, когда я тестировал у меня video_full_name
возвращало только имя файла. В любом случае хорошо, что разобрались с проблемой. Добавил ваши исправления в скрипт.