Как указать имя файла при извлечении аудио с помощью youtube-dl?

17

Я могу создать mp3 видео на YouTube с помощью следующей команды:

youtube-dl --extract-audio --audio-format mp3 http://www.youtube.com/watch?v=rtOvBOTyX00

Он создает mp3 со следующим именем файла:

Christina Perri - A Thousand Years [Official Music Video]-rtOvBOTyX00.mp3

Мне не нужна часть идентификатора видео ( rtOvBOTyX00) в конце, и я хотел бы иметь только следующее:

Christina Perri - A Thousand Years [Official Music Video].mp3

Это достижимо с опциями youtube-dl? Если нет, каково следующее лучшее решение?

Джозеф джон
источник

Ответы:

17

Попробуйте команду

youtube-dl --extract-audio --audio-format mp3 --output "%(uploader)s%(title)s.%(ext)s" http://www.youtube.com/watch?v=rtOvBOTyX00
Maythux
источник
Это дает ERROR: Error in output template: unsupported format character 't' (0x74) at index 1 (encoding: 'UTF-8').
Джозеф Джон
Все та же ошибка. Вы пробовали команду и она работает для вас?
Джозеф Джон
Нет, но это от того, man youtube-dlчто я ищу для исправления
Maythux
@JosephJohn проверить это сейчас
Maythux
Это все еще дает ошибку youtube-dl: error: Cannot download a video and extract audio into the same file! Use "/%(uploader)s/%(title)s.%(ext)s" instead of "/%(uploader)s/%(title)s" as the output template. Но ответ Бена работает отлично!
Джозеф Джон
13

Как вы могли бы прочитать в man - странице youtube-dl, соответствующая опция будет -o:

youtube-dl --extract-audio --audio-format mp3 -o "%(title)s.%(ext)s" http://www.youtube.com/watch?v=rtOvBOTyX00
Бен
источник
Отлично. Это делает именно то, что мне нужно. Я попробовал ту же команду, но я использовал %(title).%(ext)sвместо этого. Спасибо!
Джозеф Джон
3
Не могли бы вы сказать мне, для чего s? Я проверил справочную страницу, но страница, кажется, не объясняет это.
Джозеф Джон
@Maythux: Это не копия-паста.
Джозеф Джон
1
Да, строчные буквы s являются частью «специальной последовательности» без процентного содержания скобок и символов «s», которые будут пытаться взять текст после -o в качестве буквального имени файла.
Бен
1
sдействительно ... самый ненужный разделитель в мире.
Том
0

Избегайте ваших знаков процента, так %(title)sстановится %%(title)s. У меня была эта проблема сама.

coder98
источник