Загрузчик аудио с YouTube с помощью youtube-dl и ffmpeg

Загрузчик аудио с YouTube с помощью youtube-dl и ffmpeg

Я пытаюсь создать аудиозагрузчик, youtube-dlкоторый ffmpegбудет:

  1. Загрузите лучший формат аудио, доступный на YouTube
  2. Вставить миниатюру в файл.
  3. Конвертируйте файл в mp3.
  4. Удалите все из папки, кроме преобразованного mp3-файла.

Ниже представлен код, который я придумал:

@echo off
cls
set /p playlist="Enter YouTube Link: " 
youtube-dl -f bestaudio[ext=m4a] -i --write-thumbnail --embed-thumbnail -o "%%(title)s.%%(ext)s" %playlist% --exec "ffmpeg -i {} -codec:a libmp3lame -qscale:a 0 {}.mp3 && del {}"

Проблемы, с которыми я столкнулся при работе с кодом:

  1. Конвертированный файл не переименован правильно. Он назван Filename.m4a.mp3так, как я хочу.Filename.mp3
  2. Видео миниатюра сохраняется как Filename.jpgи youtube-dl создает файл с именем cookies.txt. Они не удаляются автоматически.
  3. Наконец, появляется такая ошибка:https://i.stack.imgur.com/wHYyw.png

[swscaler @ 00000143e0a4ffc0] используется устаревший формат пикселей, убедитесь, что вы правильно установили диапазон [mp3 @ 00000143e09f0340] Частота кадров очень высокая для мультиплексора, который не поддерживает ее эффективно. Пожалуйста, рассмотрите возможность указания более низкой частоты кадров, другого мультиплексора или -vsync 2

Я был бы очень признателен, если бы вы помогли мне исправить эти проблемы. Спасибо!

решение1

Вот код, который в данный момент делает все, что мне нужно:

@echo off
cls
set /p playlist="Enter YouTube Link: " 
youtube-dl -f bestaudio[ext=m4a] --extract-audio --write-thumbnail --embed-thumbnail -o "%%(title)s.%%(ext)s" %playlist% --exec "ffmpeg -i {} -codec:a libmp3lame -qscale:a 0 {}.mp3 && del {}"
@For /R %%f in (*) Do (if not "%%~xf"==".mp3" Del "%%~f")
@For %%G In (*.m4a.mp3) Do @For %%H In ("%%~nG") Do @Ren "%%G" "%%~nH%%~xG"

Связанный контент