FOSWLY/vot-cli

Ошибка при сборке аудио + видео

Closed this issue · 4 comments

WindowsTerminal_3O2OdSYJXB
WindowsTerminal_cIXO0fJ9RX

Я так понимаю, что получаю ошибку в самом конце при попытке склеить готовые видео и аудио. Судя из ошибки это ffmpeg не справляется.
Система Windows 11.
vot-cli отдельно работает и аудио скачивает.
yt-dlp отдельно тоже видео качает.
на скрине показал, что vot-cli, yt-dlp, ffmpeg находятся в PATH
на скрине yt-dlp поставлен с помощью питона, но это уже после танцев с бубном, изначально ставил просто на С:\ эффект тот же
Терминал запускал как от пользователя так и от админа.
Хелп

WindowsTerminal_3O2OdSYJXB WindowsTerminal_cIXO0fJ9RX

Я так понимаю, что получаю ошибку в самом конце при попытке склеить готовые видео и аудио. Судя из ошибки это ffmpeg не справляется. Система Windows 11. vot-cli отдельно работает и аудио скачивает. yt-dlp отдельно тоже видео качает. на скрине показал, что vot-cli, yt-dlp, ffmpeg находятся в PATH на скрине yt-dlp поставлен с помощью питона, но это уже после танцев с бубном, изначально ставил просто на С:\ эффект тот же Терминал запускал как от пользователя так и от админа. Хелп

Забыл написать, что это про Скрипт для скачивания видео с встроенным переводом (надстройка над vot-cli)

Залил обновленную версию powershell скрипта, возможно, поможет. Скрипт не был адаптирован под перевод только одного видео и из-за этого повторно загружал видео несколько раз и теоретически из-за этого могло что-то ломаться.

Если не поможет, то есть еще несколько вариантов:

  1. Попробуй удалить/очистить папку temp рядом с powershell скриптом (если она есть), возможно, там что-то осталось от ошибок при скачивание и из-за этого не удается записать файл
  2. Попробуй поменять 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 возвращало только имя файла. В любом случае хорошо, что разобрались с проблемой. Добавил ваши исправления в скрипт.