diff --git a/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.json b/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.json new file mode 100644 index 0000000..42da366 --- /dev/null +++ b/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.json @@ -0,0 +1,4 @@ +{ + "title": "Copier un CD Audio sous Linux avec cdda2wav", + "_updated_at": "2026-05-17 05:56:19" +} diff --git a/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.md b/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.md new file mode 100644 index 0000000..db973c4 --- /dev/null +++ b/3b609b9e-d3c1-4f08-8d31-88895ed76cc9/draft_overlay.md @@ -0,0 +1,150 @@ +Je vais réécrire cet article de manière plus pédagogique et le mettre à jour avec les pratiques actuelles. + +# Copier un CD Audio sous Linux avec cdda2wav + +## Pourquoi utiliser cdda2wav ? + +Un CD audio n'est pas un disque de fichiers comme une clé USB : les pistes y sont stockées dans un format brut, sans système de fichiers classique. Vous ne pouvez donc pas simplement faire un *copier-coller* depuis votre gestionnaire de fichiers. Il faut un outil capable de lire les secteurs audio bit par bit et de les transformer en fichiers exploitables, généralement au format **WAV** (qualité CD, sans perte). Cette opération s'appelle le *ripping*. + +**cdda2wav** est l'un des plus anciens et des plus fiables outils pour faire cela en ligne de commande. Il a deux atouts majeurs : + +- Il utilise la bibliothèque **paranoia**, qui relit plusieurs fois les zones douteuses pour corriger les erreurs de lecture (rayures, poussière, lecteur capricieux). +- Il interroge automatiquement les bases de données en ligne pour récupérer le nom de l'album, de l'artiste et des pistes. + +## Identifier votre lecteur CD + +Avant de copier le CD, il faut savoir comment Linux nomme votre lecteur. Sur les systèmes modernes, c'est presque toujours `/dev/sr0` (parfois `/dev/sr1` si vous avez plusieurs lecteurs). Vérifiez avec : + +``` +lsblk -d -o NAME,TYPE,LABEL +``` + +ou, plus parlant pour un CD : + +``` +ls -l /dev/cdrom /dev/sr* +``` + +Le chemin du lecteur sera utile pour toutes les commandes qui suivent. + +## Installation selon la distribution + +Le paquet ne porte pas toujours le même nom : sur les distributions dérivées de Debian, le projet a été renommé **icedax** (un fork de cdda2wav) à la suite d'un changement de licence en amont, mais la commande reste très similaire. + +**Sur Fedora / RHEL / openSUSE** : + +``` +sudo dnf install cdda2wav cdparanoia opus-tools +``` + +**Sur Debian / Ubuntu / Linux Mint** : + +``` +sudo apt install icedax cdparanoia opus-tools +``` + +Sur Debian/Ubuntu, vous lancerez alors `icedax` au lieu de `cdda2wav` ; les options sont identiques. J'ai aussi inclus `cdparanoia`, une alternative très populaire que je présente plus bas, et `opus-tools` pour la conversion finale en fichiers compressés. + +## Extraire le CD audio en WAV + +Voici la commande de base, à adapter selon votre lecteur : + +``` +cdda2wav -vall cddb=0 -paranoia -B -D /dev/sr0 +``` + +Décortiquons chaque option : + +- `-vall` : verbosité maximale, affiche tout ce qui se passe (table des matières, progression piste par piste, problèmes éventuels). Pratique pour comprendre ce qui se passe ; on peut alléger ensuite avec `-v summary`. +- `cddb=0` : tente de récupérer les métadonnées (titre, artiste…) depuis la base CDDB en ligne. Mettez `cddb=1` pour interroger un autre serveur, ou `cddb=2` si la première requête a échoué. +- `-paranoia` : active le mode de lecture sécurisé qui relit les zones suspectes. C'est plus lent mais bien plus fiable, à utiliser sauf si vous êtes pressé et que le CD est en parfait état. +- `-B` : *bulk extraction*, crée **un fichier par piste** (sinon vous obtenez un seul gros fichier de toutes les pistes collées). C'est l'option qu'on veut presque toujours. +- `-D /dev/sr0` : indique le lecteur à utiliser. + +**Espace disque nécessaire** : comptez environ **10 Mo par minute de musique** au format WAV (44,1 kHz, 16 bits, stéréo). Un CD de 74 minutes occupera donc ~700 Mo, un CD de 60 minutes ~600 Mo. Les fichiers seront créés dans le **dossier courant** : placez-vous dans un dossier dédié avant de lancer la commande. + +``` +mkdir mon-album +cd mon-album +cdda2wav -vall cddb=0 -paranoia -B -D /dev/sr0 +``` + +## Comprendre la sortie + +Pendant l'extraction, cdda2wav affiche d'abord les caractéristiques du CD : nombre de pistes, durée totale, position de chaque piste sur le disque. Puis il extrait piste par piste et donne un compte rendu pour chacune : + +``` +100% track 1 recorded successfully +100% 0 rderr, 0 skip, 0 atom, 0 edge, 0 drop, 0 dup, 0 drift +``` + +Voici ce que signifient ces compteurs : + +- **rderr** : erreurs de lecture matérielles. Doit rester à 0. +- **skip** : secteurs sautés. Doit rester à 0. +- **atom**, **edge**, **drop**, **dup**, **drift** : petites incohérences détectées et corrigées par la lecture redondante. Quelques unités sont normales et n'altèrent pas le son. + +Un message comme `track 3 recorded with minor problems (0.2% problem sectors)` n'est pas inquiétant : les zones problématiques ont été relues et corrigées. Si vous voyez `rderr > 0` ou `skip > 0`, en revanche, le résultat est probablement abîmé : nettoyez le CD et recommencez. + +À noter dans l'exemple historique : le message `Operation not permitted. cannot set posix realtime scheduling policy` signifie que cdda2wav n'a pas pu se donner une priorité temps réel. Ce n'est pas grave, l'extraction se déroule normalement. + +## Alternative recommandée : cdparanoia + +Sur les distributions modernes, beaucoup d'utilisateurs préfèrent **cdparanoia**, un outil plus simple et tout aussi fiable, dédié à la lecture sécurisée : + +``` +cdparanoia -B -d /dev/sr0 +``` + +L'option `-B` produit un fichier WAV par piste (`track01.cdda.wav`, `track02.cdda.wav`…). cdparanoia ne va pas chercher les métadonnées en ligne, mais il est très efficace pour récupérer les CD rayés. + +## Récupérer les métadonnées (titres, artiste) + +Les bases CDDB historiques (FreeDB) ont fermé. Aujourd'hui, l'écosystème s'appuie principalement sur **MusicBrainz**. Si vos pistes sont nommées `audio_01.wav`, `audio_02.wav`, etc., et que vous voulez les renommer avec les vrais titres, deux approches : + +- Utiliser **abcde** (*A Better CD Encoder*), un script qui combine extraction, récupération des tags et conversion en une seule commande : + ``` + sudo apt install abcde # ou: sudo dnf install abcde + abcde -d /dev/sr0 + ``` +- Ou taguer manuellement après coup avec un outil comme **picard** (l'outil officiel de MusicBrainz). + +## Convertir les WAV en fichiers compressés + +Les fichiers WAV sont volumineux (~10 Mo/min). Pour les écouter sur un téléphone ou un baladeur, on les convertit en format compressé. Le **format Opus** est le meilleur choix actuel : il offre une qualité supérieure au MP3 à débit égal, est libre, et lu partout. + +Pour convertir tous les WAV du dossier courant en Opus à 128 kbit/s (qualité quasi indiscernable de l'original) : + +``` +for f in *.wav; do + opusenc --bitrate 128 "$f" "${f%.wav}.opus" +done +``` + +Quelques explications sur cette boucle : + +- `for f in *.wav` : prend chaque fichier `.wav` du dossier. +- `"${f%.wav}.opus"` : retire l'extension `.wav` et la remplace par `.opus`. Ainsi `track01.wav` devient `track01.opus`. +- `--bitrate 128` : 128 kbit/s est un bon compromis qualité/taille. Pour de la musique classique exigeante, montez à 160 ou 192 ; pour de la voix, descendez à 64 ou 96. + +Si vous préférez le **MP3** (compatibilité maximale avec les vieux appareils) : + +``` +for f in *.wav; do + lame -V2 "$f" "${f%.wav}.mp3" +done +``` + +L'option `-V2` produit un MP3 en débit variable de très bonne qualité (~190 kbit/s en moyenne). + +Pour du **FLAC** (compression sans perte, fichiers plus petits que WAV mais qualité identique) : + +``` +for f in *.wav; do + flac --best "$f" +done +``` + +## En résumé + +Le workflow complet pour archiver un CD audio sous Linux tient en quatre étapes : identifier le lecteur (`/dev/sr0` en général), se placer dans un dossier dédié, extraire avec `cdda2wav -vall -paranoia -B -D /dev/sr0` (ou `icedax` sur Debian, ou `cdparanoia -B` en alternative), puis convertir au format souhaité avec `opusenc`, `lame` ou `flac` selon vos besoins. Pour automatiser le tout y compris les métadonnées, **abcde** reste l'outil tout-en-un de référence. \ No newline at end of file diff --git a/_logs/not_found.jsonl b/_logs/not_found.jsonl index b0ed96a..c4a81e7 100644 --- a/_logs/not_found.jsonl +++ b/_logs/not_found.jsonl @@ -1218,3 +1218,4 @@ {"ts":"2026-05-17 05:46:49","url":"/electronique/ces-technos-qui-n-ont-jamais-encore-percees","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36"} {"ts":"2026-05-17 05:51:44","url":"/journal_geek/2023/20230113-afficher-le-nombre-de-mise-a-jour-avec-dnf-a-l-ouverture-de-session","ref":"","ua":"Mozilla/5.0 (Linux; Android 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 (compatible; Bytespider; spider-feedback@bytedance.com)"} {"ts":"2026-05-17 05:53:33","url":"/electronique/ces-technos-qui-n-ont-jamais-encore-percees","ref":"","ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/147.0.0.0 Safari/537.36"} +{"ts":"2026-05-17 05:55:44","url":"/informatique/linux/distributions/debian/post_install","ref":"","ua":"Mozilla/5.0 (Linux; Android 5.0) AppleWebKit/537.36 (KHTML, like Gecko) Mobile Safari/537.36 (compatible; Bytespider; spider-feedback@bytedance.com)"}