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: я знаю, что вопрос устарел, но размещение рабочего решения может помочь вам и другим.