Youtube-DL: Как вырезать видео информацию / описание при конвертации аудиофайла в MP3?

Это может быть придирчиво, но когда я использую Youtube-DL для преобразования аудио из видео в MP3, я позволяю ему также помечать заголовок и вставлять миниатюру из видео. Каким-то образом он добавляет описание видео и некоторую другую мета-видео информацию, которая мне не нужна. Это команда, которую я использую:

youtube-dl -o "%(title)s.%(ext)s" -x --audio-format mp3 --audio-quality 320K --embed-thumbnail --add-metadata --metadata-from-title "%(artist)s - %(title)s" <youtube url>

Когда я проверял информацию тега ID3, он добавил название видео, как и ожидалось. Если я переименую расширение в AVI, воспроизведу аудиофайл и открою его свойства, я смогу увидеть нежелательную информацию, такую ​​как описание видео, кодировщик версии и бренд. Опция --add-metadata записывает метаданные в видеофайл, из которого он получает описание видео, но когда я пропускаю это, видео вообще не помечается.

Я прочитал документацию Youtube-DL и FFMPEG, но не могу найти подходящий способ, чтобы убрать описание / информацию о видео и сохранить теги MP3.

Кто-нибудь знает как это сделать?

1 ответ

Я не верю, что вы можете контролировать --add-metadata вариант.

Однако вы можете использовать --exec возможность выполнить команду впоследствии, используя ссылку на выходной файл {} и попросить ffmpeg удалить нежелательные метаданные следующим образом:

--exec "ffmpeg -y -i {} -map 0 -c copy -metadata comment=\"\" -metadata description=\"\" -metadata purl=\"\" temp.mp3"

Выполнение процесса "конвертировать" на месте (перезапись того же файла) прерывает данные потока выходного файла, но добавляет вспомогательный temp.mp3 и затем перезаписывая это заставляет это работать как очарование.

Я протестировал следующую комбинацию команд:

youtube-dl -o "%(title)s.%(ext)s" -x --audio-format mp3 --audio-quality 320K --embed-thumbnail --add-metadata --metadata-from-title "%(artist)s - %(title)s" <youtube url> --exec "ffmpeg -y -i {} -map 0 -c copy -metadata comment=\"\" -metadata description=\"\" -metadata purl=\"\" temp.mp3;cp -r temp.mp3 {};rm -rf temp.mp3"

Надеюсь, это поможет!

PS: я знаю, что вопрос устарел, но размещение рабочего решения может помочь вам и другим.

Другие вопросы по тегам