Table des matières
youtube-dl
Sources :
Retrouver le fichier
La date de dernière modification du fichier téléchargé n'est pas celle du téléchargement. youtube-dl conserve la date du fichier sur youtube. Une fois téléchargé, le fichier peut sembler introuvable, enseveli au fin fond du répertoire, faisant croire à un échec du téléchargement.
Une technique fiable consiste à s'appuyer sur la trace d'exécution de youtube-dl. Par exemple, en identifiant une ligne du type :
… [ffmpeg] Destination: Jane Doe - Invisible Woman (Remix)-ABCde3f.wav …
qui indique le nom exact du fichier.
La commande find permet de s'assurer de la présence du fichier
find . -name "*Invisible Woman*" -print
de forcer sa date de modification
find . -name "*Invisible Woman*" -exec touch {} \;
et de nettoyer le nom du fichier
find . -name "*Invisible Woman*" -exec detox {} \;
Il est préférable d'ajuster le motif de recherche à l'obtention d'un résultat unique. Ici, j'ai fait simple en n'utilisant que ce qui me semblait être discriminant, dans mon cas d'utilisation. Un copier/coller du nom complet affiché par youtube-dl marche aussi :
find . -name "Jane Doe - Invisible Woman (Remix)-ABCde3f.wav" -print
Commandes courantes
Audio seul
Par défaut, youtube-dl télécharge au format opus.
Pour une qualité optimale, je force le format à WAV. Dans les cas où j'ai fait la comparaison avec opus, l'amélioration de qualité était flagrante1) ! Dans les cas où j'ai fait le test, le téléchargement au format FLAC n'apportait qu'une infime compression.
youtube-dl -x --audio-format wav https://www.youtube.com/watch?v=XYZt
Le paramètre “-x” indique un téléchargement en audio seul. Il est indispensable lorsqu'on utilise le paramètre “–audio-format” pour imposer le format de téléchargement audio.
ERROR: Unable to extract uploader id
Lors de certains téléchargements, youtube-dl échoue en signalant l'erreur “ERROR: Unable to extract uploader id”. Ce serait lié à des changements dans youtube qui n'ont pas encore été répercutés dans le paquetage ou la version installée sur l'ordi.
Le patch
En attendant une solution via une mise à jour du paquetage, un patch de “/usr/lib/python3/dist-packages/youtube_dl/extractor/youtube.py” permet de contourner le problème.
Éditer le fichier en question et rechercher la ligne fautive que l'on commente et remplace. Le résultat voulu est le suivant :
'uploader': video_details['author'], # 'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None, 'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id', default=None), 'uploader_url': owner_profile_url,
Source : https://youtu.be/tMtszkwxo48