Informatique

Transformer un album complet téléchargé sur Youtube en une suite de fichiers musicaux indépendants v2

Il y a quelques semaines, j’avais créé ici-même une procédure que je mets à jour avec de nouveaux outils, plus simples et encore moins de travail manuel.


Commencez déjà par vous familiariser avec l’article initial

1- Téléchargement de la vidéo et conversion en mp3

$ youtube-dl -x --audio-format mp3 <lien vers la video>

Si vous n’aimez pas la ligne de commande, il y a des services comme fluvore qui font le job.

2- Création du fichier CUE

Ce document contient toutes les informations des pistes, durées, artistes etc.

Le site http://cuegenerator.net/ permet de le créer facilement.

Entrez les informations à gauche, le fichier CUE apparaît à droite.

Attention au format des informations dans la tracklist. Il y a un espace entre le timecode et l’artiste, et un tiret « – » entre l’artiste et le titre de la piste.

Je m’y suis pris de la façon suivante (vidéo de 48 sec).

Si les informations sont correctement inscrites, le fichier se met à jour automatiquement à droite. Si tout est bon, cliquez sur Save Cue To File pour le récupérer.

Placez-le dans le même répertoire que le fichier mp3.

3- Conversion

J’ai trouvé l’outil MP3DirectCut qui est léger et portable. Il fait tout un tas de choses, dont la découpe dont nous avons besoin.

Téléchargez et lancez le programme.

Glissez-déposez le fichier CUE sur la fenêtre principale.

Fichier -> Découper selon les index

1 - Indiquez le répertoire où vont se placer les fichiers
2 -  Le nom des fichiers générés, je commence par le numéro de la piste, puis le titre de l'album et l'artiste, et enfin l'artiste de la piste et le titre de la piste. 
3 - Enfin, cochez les case ID3v1 et ID3v2 pour tagguer automatiquement les fichiers. 

Cliquez sur Ok pour générer les fichiers.

Et voilà, encore plus simple et plus rapide.

mp3DirectCut peut aussi s’utiliser en ligne de commande. Il y a sans doute moyen d’optimiser encore.

Hotspot Wifi de dépannage avec Linux Mint

Aujourd’hui je suis responsable informatique depuis quelques semaines dans une nouvelle boîte. Depuis quelques jours, le wifi est tombé dans l’une de nos succursales. Nous utilisons des boitiers spéciaux branchés à un firewall Fortinet. Je ne suis pas responsable de l’infrastructure, mais je trouve étrange de passer autant de temps à réparer quelque chose alors que le service est complètement tombé. Voici donc une petite procédure sans prétention pour monter un point d’accès Wifi en deux secondes et quart.


Premièrement attraper un vieux laptop ou n’importe quelle machine qui dispose d’un port Ethernet et d’une carte Wifi. Pour ma part c’est un Dell 5420 datant de mathusalem qui m’a servi de test. Je ne sais pas si toutes les cartes wifi peuvent se mettre en mode AP mais avec ce portable, ça a fonctionné.

Télécharger le dernier Live USB de Mint, genre là https://linuxmint.com/edition.php?id=261

J’ai pris une Cinnamon mais ça importe peu.

Un coup de Rufus pour copier l’ISO sur une clé USB, puis boot sur le le Live.

Cliquez que Network Connections puis cliquez sur le + pour créer une nouvelle connexion.

Choisissez Wifi puis Create

Indiquez le SSID voulu, probablement le même que celui que vous essayez de remplacer.

Dans Wifi Security, choisissez la sécurité que vous aviez précédemment puis le même mot de passe pour éviter que vous utilisateurs n’aient à remettre tout et que vous ayez what mille appels au support.

Vous sauvez le tout puis vous cliquez dans la liste des connection, Connect to Hidden Network (chelou mais bon..)

Choisissez le nom de la connexion que vous venez de créer puis Connect.

Hop, grande magie, vous avez un hotspot tout neuf qui fonctionne. Vous branchez le tout sur le réseau normal et roule ma poule.

Bon c’est pas une grande portée, plus de 10m de rayon c’est chaud mais ça dépanne le temps de régler le vrai problème.

Dernier point, si vous voulez juste un hotspot avec un nouveau nom (mint) et un mot de passe aléatoire, vous n’avez rien à créer. Booter le le Live CD, ouvrez la liste des connexion et cliquez sur Hotspot. C’est tout. Trois clics et c’est réglé. Mint c’est bien.

Enjoy !

Transformer un album complet téléchargé sur Youtube en une suite de fichiers musicaux indépendants

Des fois y’a des chouettes albums sur Youtube et on aimerait bien les télécharger. Des fois, y’a des gens sympas qui mettent même des timecodes correspondant au moment où commence chaque chanson. Ben avec tout çà on peut se faire un chouette album. Attention, cela est probablement illégal si vous ne possédez pas l’album en question.


Commencez par trouver votre album sur Youtube. Téléchargez-le avec Youtube-dl. Exemple avec Monalbumàmoi

youtube-dl -f best -x extract --audio-format mp3 <lien youtube Monalbumàmoi>

Copiez puis coller les timecodes dans un fichier texte quelconque que vous aurez pris soin de renommer en .cue

Modifier le fichier pour qu’il corresponde à ce format.

PERFORMER "<nom de l'artiste>"
 TITLE "<Titre de l'album>" 
 FILE "<nom du fichier.mp3>" MP3
 TRACK    01  AUDIO   
 TITLE    "<Titre du 1er morceau>"  
 PERFORMER    "<Artiste>"    
 INDEX 01    00:00:00
TRACK 02 AUDIO 
et ainsi de suite

EDIT (07/08/19) : Je suis tombé sur plusieurs sites pour aider à la génération du fichier cue
http://cuegenerator.net/
http://www.stutenandy.de/cue.php?lang=en

Téléchargez cuesplitter. La version 1.2 marche très bien.

Lancez cuesplitter et ouvrez le fichier cue créé.

Si le fichier n’est pas formaté correctement, cuesplitter mettra des warning et indiquera ce qu’il y a à corriger.

Ensuite cliquez sur « Séparez! », selectionnez un répertoire de sortie, et roule ma poule.

Simple et de bon goût.

Télécharger une émission en replay, mais avec Streamlink

Je viens de découvrir une suite d’émission, sur la chaine RTS, appelée « Dans la tête de ». On y parle de différentes personnes, les timides, les surdoués et bien d’autres.

Voulant conserver ces émissions sur mon disque dur plutôt que de dépendre d’une connexion internet capricieuse, j’ai cherché un moyen de les télécharger.


Comme la dernière fois, évidemment pas de dowload possible, ni par le site lui-même, ni par Youtube-DL, ni d’autres solutions connues.

Je vais encore une fois utiliser le mode Inspection de mon navigateur (ici Chrome) pour trouver le fichier manifest. Il s’agit soit d’un fichier manifest.f4m, ou .mpd ou encore .m3u8

Je commence par ouvrir la page d’inspection via un appui sur la touche F12.

Je me rends sur la page en question du site RTS.CH , fait défiler les vidéos et lance celle que je veux récupérer.

Dans l’onglet Network, des adresses défilent. J’arrête la vidéo au bout de quelques secondes et fait une recherche sur les termes manifest, f4m, mpd ou m3u8.

Bingo !

Depuis le dernier article, j’ai découvert l’existence de Streamlink, un logiciel en ligne de commande particulièrement puissant pour jouer ce genre de vidéo. Utile pour une intégration dans un fichier bash par exemple.

Ici, ça devient particulièrement trivial. Après installation du logiciel, j’ouvre un terminal et je lance la commande.

Streamlink est le nom de la commande

Suit l’URL complète copiée précédemment dans l’inspecteur.

Best pour choisir le meilleur format

-o surdoué.mp4 pour écrire le fichier sur le disque dur.

Sans option, ou avec l’option -p en précisant le chemin vers VLC ou MPV, on peut lancer le stream directement dans ces deux players. Pratique pour changer la taille de la fenêtre de rendu, ce qu’on ne peut pas faire sur la page Web.

Quelques minutes après le fichier est téléchargé. C’est d’une simplicité enfantine et je suis étonné de ne pas avoir reperé Streamlink avant. D’ailleurs, je vais sans doute y passer quelques temps à en explorer les possibilités.

Enjoy !

Thunderbird-Lightning 60 / Nexcloud Agenda, synchro ne répond plus

Depuis quelques années, j’utilise un serveur Nextcloud pour gérer mon quotidien administratif, qu’il s’agisse de mes partages de fichiers, de ma galerie de photos ou encore de mes contacts et calendriers. En local, j’utilise Thunderbird ainsi que l’extension Lightning qui synchronise en temps réel avec le serveur. Mon iPhone et lui aussi synchronisé avec le Nextcloud, ce qui me permet de toujours rester à jour.


Je n’avais pas remarqué immédiatement, mais depuis la mise à jour de Thunderbird, la synchronisation ne fonctionnait pas. J’ai mis quelques jours à m’en apercevoir, n’utilisant plus non plus mon iPhone.

Après quelques recherches, il semblerait qu’il s’agisse d’un problème très spécifique lié à un nouveau développement chez Thunderbird, qui ne touche QUE les utilisateurs Nextcloud, autant dire que c’est plutôt précis.

La seule solution actuelle est de désactiver un nouveau paramètre :
network.cookie.same-site.enabled

Dans Thunderbird, cliquez sur Outil, Option. Puis allez dans Avancé, et Éditeur de configuration.

Acceptez l’avertissement qui apparaît.

Enfin, recherchez network.cookie.same-site.enabled et double-cliquez dessus pour le passer à false.

Relancez Thunderbird, la synchronisation devrait fonctionner de nouveau.

Problème de son qui craque sous Linux en HDMI

A chaque fois que je réinstalle un linux sur un Desktop je galère. Pour un laptop, aucun problème mais pour ma machine principale, il y a toujours ici ou là un petit truc énervant qui me fait perdre du temps. Sur le long terme, une fois corrigé, tout va bien, mais cette satanée post-installation m’énerve. 

Aujourd’hui j’ai eu affaire à un petit bug audio. Régulièrement, quand je lançais un son ou une vidéo, j’entendais une sorte de craquement, comme si la carte était réinitialisée à chaque fois. Idem lors le son se terminait, la carte se mettait en pause. J’ai jamais eu ce problème sous Win10, mais systématiquement, sous toutes les versions de Linux que j’ai eue.

Après bien des recherches, j’ai compris que la carte son HDMI se mettait en pause quelques secondes après la fin d’un son. 

Pour corriger cela :

sudo nano /etc/pulse/default.pa

Puis commenter la ligne suivante :

#load-module module-suspend-on-idle

Enregistrer le fichier, puis redémarrer, ou tuer le processus :

$ pulseaudio -k

Si ça peut aider quelqu’un 🙂

Sauvegarder un serveur Linux sur un NAS Synology avec Borg Backup

J’utilise au quotidien un serveur Linux dédié chez OVH sur lequel notamment j’héberge ce blog. Vu le peu de changement, jusqu’à maintenant je sauvegardais manuellement lorsque je jugeais bon de le faire, à coups de SFTP. J’ai décidé récemment d’automatiser cette tâche à l’aide de l’outil BorgBackup.
Il est facile à utiliser (CLI), il gère la déduplication, les sauvegardes incrémentales et différentielle, ainsi que la compression de fichier et le chiffrement.
Mon serveur de sauvegarde sera mon Synology NAS à la maison.


Activer les fonctions nécessaires du NAS et créer la connexion

  • Activer le service SFTP dans l’application Services du fichiers.

  • Vérifier que l’utilisateur a bien les droits sur FTP (oui c’est bizarre).

Le NAS va automatiquement créer un répertoire NetBackup dont je me servirais comme répertoire de sauvegarde. On ne peut le supprimer, alors autant s’en servir.

  • Si le NAS est derrière un routeur, créer la redirection de port qui va bien. Sur ma Freebox, ça donne ça (Athena est le nom de mon NAS)

Nous allons monter le répertoire de sauvegarde dans un répertoire du serveur en SSHFS. Pour éviter d’avoir à taper le mot de passe du NAS à chaque fois, nous allons créer une paire de clé d’authentification.

  • Si ce n’est pas déjà fait, activer le serveur SSH du NAS.

  • Activer le répertoire home des utilisateurs du NAS

  • Depuis le serveur, se connecter en SSH avec le login et le mot de passe. Si la connexion fonctionne, on continue.
ssh orlanth@<ip externe du NAS> -p 40022
  • Depuis le serveur, créer une paire de clé puis copier la clé sur le NAS
ssh-keygen - t rsa
ssh-copy-id -p 40022 orlanth@<ip externe du NAS>

Il va demander une dernière fois le mot de passe.
Une fois cette opération terminée, tentez de vous connecter à nouveau. Le serveur ne doit plus demander de mot de passe.

Installer Borgbackup, créer le répertoire de destination, lancer les sauvegardes

  • Sur le serveur distant, installer borgbackup et sshfs
sudo apt install borgbackup sshfs
  • Créer le répertoire de sauvegarde
sudo mkdir /mnt/BorgRepo && sudo chown <user>: /mnt/BorgRepo
  • Monter le repertoire du NAS sur le serveur
sshfs -p 40022 orlanth@<ip externe du NAS>:/NetBackup /mnt/BorgRepo

De là, vous pouvez tester que tout va bien en créant un fichier dans BorgRepo et en vérifiant qu’il apparait bien des deux côtés, sans problème de droits.

  • Initialiser le répertoire de destination ( à faire une seule fois)
borg init --encryption=none /mnt/BorgRepo
  • Créer une première sauvegarde
borg create -v --stats --progress /mnt/BorgRepo::{now} /var/www

Grâce à {now} la sauvegarde portera un nom créé à partir de l’heure du lancement de la commande.

Et voilà pour la mise en place d’une première sauvegarde.

Si tout fonctionne, il n’y a plus qu’à automatiser, ce qui fera l’objet d’un prochain article.


Références
Sebsauvage
Borg info
Just another blag

Récupérer un PDF à partir de youblisher

Youblisher est un site permettant d’uploader n’importe quel fichier pdf pour lui donner une apparence de livre, plus agréable à lire à l’écran.
Le partage se fait avec un simple lien, ce qui est très pratique.
Par contre, récupérer un pdf à partir d’une publication youblisher, pour le lire sur son ordinateur ou son téléphone est beaucoup moins simple puisqu’il n’y a pas de bouton télécharger. Je comprends pas trop, alors je me suis retroussé les manches.
Pour des recherches persos, j’ai voulu récupérer Suicide mode d’emploi, voilà comment je m’y suis pris.


Comme d’habitude, mes recherches commencent par afficher la console de Firefox.

D’abord se rendre sur la page du livre à récupérer puis clic droit sur une des pages du livre et sélectionner Examiner l’élément.

On voit immédiatement qu’il s’agit d’une simple image dont le source est :
http://static.youblisher.com/publications/31/181182/large-3.jpg

« large-3 » parce que j’ai cliqué sur les troisième page bien sûr.

Il y a 145 pages donc, petit copié collé dans un fichier texte pour obtenir les fichiers à télécharger

Et ainsi de suite jusqu’à large-145.jpg

Un petit coup de wget ou aria2c (plus rapide pour moi) et on récupère tous les fichiers dans un répertoire.

On renomme les fichiers pour qu’ils soient dans un ordre correct (j’aime bien Bulk Renamer), et on les donne à manger à imagemagick pour la conversion pdf (mais des tas d’autres logiciels le feront très bien, là j’avais ouvert ma console, j’étais chaud pour continuer (ouais sous Windows, jfais skejveux, kestuvafér ?))

Et voilà un PDF tout beau tout propre très simplement.

Télécharger une émission en replay

Un ami a participé à une émission de c8 diffusée le 25 Décembre et a souhaité garder cette émission. Plusieurs solutions étaient possibles, enregistrement par une freebox (pas essayé, mais probable difficulté de récupération du fichier), récupération par Captvty (il n’affiche pas l’émission), ou téléchargement par Youtube-dl (site de replay non pris en charge). Aucune de ces solutions n’ayant pu fonctionner facilement, je me suis retroussé les manches et je l’ai fait à la mano. Pas évident mais marrant.


Avec Firefox (sans doute possible avec d’autres)

D’abord trouver le flux :
https://www.mycanal.fr/theme/chaines/c8/divertissement/pid7609-couple-ou-pas-couple.html

Ensuite, appuyer sur F12 pour faire apparaitre la console.
Puis lancer le flux, sans adblock sinon c8 refuse de jouer la vidéo.


De plus, si on change le focus, on regarde une autre fenêtre ou autre, le flux de la pub se bloque.

Bienvenue dans Black Mirror.

Bref, on se tape la pub puis la vidéo se lance.
Il faut attendre quelques instant puis cliquer sur Réseau dans la console.

Repérer ce qui ressemble à une vidéo, ici on voit mp2t.
Probablement du .ts, c’est souvent le cas.
Cliquez sur une ligne puis regardez le contenu dans la boite à droite.

L’URL de la requête montre effectivement un fichier .ts. On voit aussi qu’il ne s’agit que d’un segment.
Au début de la vidéo, il s’agissait de « segment_1_1_av.ts » et le dernier « segment_260_3_av.ts »
Un clic-droit permet de récupérer l’adresse d’un segment et de faire un test de téléchargement avec youtube-dl.

Ça marche !
Maintenant plus qu’à récupérer tous les morceaux.
Je fais une liste de fichiers dans un fichier texte puis je lance le téléchargement dessus.

Ça prend un moment en fonction de la vitesse de la ligne.

Une fois tous les morceaux récupérés, on en lance quelques uns pour vérifier. Je m’aperçois que les morceaux de meilleures qualités sont les _3_av. Je supprime donc les autres.
Je renomme correctement les morceaux en 001.ts, 002.ts etc (avec Bulk Rename Utility, c’est rapide).
Puis je les joins.

Enfin, dernière étape (non obligatoire), je convertis en mp4.

Et voilà !

P2V Windows, double boot avec Mint

Il y a quelques semaines je suis passé sous Linux Mint pour ma machine principale et j’en suis vraiment très content.

Il y a encore deux choses pour lesquelles je dois conserver un Windows quelque part, c’est l’accès à iTunes pour récupérer mes photos et gérer ma bibliothèque musicale (c’est juste impossible ou presque de le faire sous Linux, à cause d’Apple hein), et aussi pour la plupart des jeux.

Pour ce dernier point je me débrouillais avec Wine et PlayOnLinux, mais les performances sont quand même moins bonnes et tous les jeux ne sont pas compatibles. Guildwars 2 et Path of Exile fonctionnent globalement correctement, mais dès que je veux pousser un truc un peu plus récent ou gourmand, ça devient rapidement galère.

Pour régler le problème d’iTunes j’avais monté une machine virtuelle Win 10 qui me donnait entière satisfaction. Pour les jeux, j’avais fait une croix dessus, mais j’ai pas réussi à tenir plus de quelques semaines.

C’est pourquoi je me suis dit que j’allais finalement me faire un double boot. Mais comme j’avais déjà fait le travail avec la VM, et que j’aime la difficulté, je me suis dit que j’allais utiliser ma VM et la transformer en physique.


Préparation

Il va y avoir des conversions de fichiers. Vérifiez que vous disposez d’assez d’espace disque pour entreposer tout ça. Vous pourrez les effacer par la suite.

Déterminez où vous voulez installer votre Windows 10. Soit sur un disque interne séparé, soit une partition sur votre disque principal. Pour ma part, après avoir testé avec un disque dur USB externe (ça marche ! Mais c’est lent. Mais ça marche !)  j’ai pris la deuxième solution.

Enfin, je fonctionne en UEFI, le Mint comme le Windows.

VM -> Raw

La première étape est de transformer le disque virtuel en Raw.

Ouvrez une ligne de commande et tapez :

$ VBoxManage clonehd <disqueWin10>.vdi <disqueWin10>.raw --format RAW

Application l’image Raw sur le disque

J’utilise la commande dd. Toujours dans la ligne de commande :

$ dd if=<disqueWin10>.raw of=<Disque destination> bs=8M

<Disque destination> est normalement sous la forme /dev/sdX avec X = b, c, d en fonction du nombre de disques déjà présent. A vous de voir pour trouver le bon disque (par exemple avec fdisk -l).

Ne vous trompez pas, cette commande supprime l’intégralité du disque de destination !

Ça peut prendre un certain temps, allez vous faire un café, ou un thé c’est le moment.

Lorsque vous récupérez la main, vous avez un disque avec toutes les partitions identiques à ce que vous aviez en virtuel.

Vous pouvez tester que le disque démarre bien en redémarrant votre machine et en changeant l’ordre de boot. Choisissez le disque Win10. Si ça boote, vous êtes bien 🙂

Profitez-en pour installer toutes les mises à jour que Windows ne manquera pas de télécharger. Normalement il fait tout, tout seul, mais sinon installez les drivers manquants manuellement, à commencer par le réseau et la carte graphique.

Modifier Grub2

J’ai pas mal galéré pour ça mais j’ai finalement trouvé la solution pour démarrer directement depuis Grub2 plutôt que depuis le bios/UEFI.

Ouvrez le fichier /etc/grub.d/40_custom puis ajoutez les lignes suivantes :

menuentry "Windows (UEFI)" {
search --set=root --file /EFI/Microsoft/Boot/bootmgfw.efi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}

Enfin updatez grub :

$ sudo update-grub

Redémarrez, testez, tout ça, normalement ça fonctionne !

Taille de partition

Normalement, la partition de votre Windows 10 a la même taille que ce qu’elle avait dans la VM. Pour l’étendre, utilisez GParted et redimensionnez comme vous le souhaitez.