Comment spécifier un nom de fichier lors de l'extraction audio à l'aide de YouTube-DL?

17

Je peux créer un mp3 d'une vidéo YouTube avec la commande suivante:

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

Il crée un mp3 avec le nom de fichier suivant:

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

Je n'ai pas besoin de la partie ID vidéo ( rtOvBOTyX00) à la fin et j'aimerais avoir simplement les éléments suivants:

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

Est-ce réalisable avec les options de youtube-dl? Sinon, quelle est la meilleure solution suivante?

Joseph John
la source

Réponses:

17

Essayez la commande

youtube-dl --extract-audio --audio-format mp3 --output "%(uploader)s%(title)s.%(ext)s" http://www.youtube.com/watch?v=rtOvBOTyX00
Maythux
la source
Cela donne ERROR: Error in output template: unsupported format character 't' (0x74) at index 1 (encoding: 'UTF-8').
Joseph John
Toujours la même erreur. Avez-vous essayé la commande et cela fonctionne-t-il pour vous?
Joseph John
Non, mais cela vient de man youtube-dlJe cherche un correctif
Maythux
@JosephJohn check it now
Maythux
Cela donne toujours une erreur 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. Mais la réponse de Ben fonctionne bien!
Joseph John
13

Comme vous pouvez le voir dans la page de manuel youtube-dl, l'option correspondante serait -o:

youtube-dl --extract-audio --audio-format mp3 -o "%(title)s.%(ext)s" http://www.youtube.com/watch?v=rtOvBOTyX00
Ben
la source
Excellent. Cela fait exactement ce dont j'ai besoin. J'avais essayé la même commande mais j'avais utilisé à la %(title).%(ext)splace. Je vous remercie!
Joseph John
3
Pourriez-vous me dire à quoi ça ssert? J'ai vérifié la page de manuel, mais la page ne semble pas expliquer cela.
Joseph John
@ Maythux: Ce n'est pas un copier-coller.
Joseph John
1
Oui, le s minuscule fait partie de la "séquence spéciale" sans le pourcentage entre parenthèses et le "s", il essaierait de prendre le texte après le -o comme nom de fichier littéral.
Ben
1
sen effet ... Le délimiteur le plus inutile du monde.
Tom
0

Échapper à vos signes de pourcentage, %(title)sdevient ainsi %%(title)s. J'ai eu ce problème moi-même.

coder98
la source