Introduction

Le but de cette section est d'utiliser de manière simple un lecteur CD relié à votre machine qui ne possède pas forcément d'interface graphique et mettre en place un système d'extraction automatique de CDaudios. On va donc se débrouiller pour encoder des CD audio dans les formats désirés et choisir un emplacement de sauvegarde des fichiers résultants. On pourra imaginer la même chose pour des DVD…

Installation

Tout d'abord, nous devons installer le logiciel ripit qui nous permettra de riper les CD en ligne de commande.

apt-get install ripit

Cela va installer toutes les dépendances permettant d'encoder en différents formats.

Vous pouvez accéder à une documentation de ripit sur cette page

Configuration

Par la suite tout se passe dans le fichier de configuration par defaut de ripit : /etc/ripit/config.

Ce fichier est assez clair et comprend beaucoup d'éléments configurables. On peut choisir le répertoire de destination par defaut des fichiers rippés, definir le chemin du lecteur CD, activer la recherche de tags et le tag des fichiers automatiques, les permissions appliquées aux fichiers, le type d'encodage…

Nous détaillons dans la suite quelques lignes du fichier de configuration.

Le chemin vers le lecteur CDROM (normalement la valeur par défaut suffit mais vous pouvez remplacer par /dev/sr0 ou /dev/cdrom1 si le chemin par defaut n'existe pas) :

# cddevice: Define ripping device if other than /dev/cdrom.
# Default: /dev/cdrom

cddevice=/dev/cdrom

On renseigne son repertoire de sauvegarde des fichiers extraits. Par défaut, ce sera le répertoire /home de l'utilisateur lançant ripit :

# output: Path for audio files. If not set, $HOME will be used.
# Default: not set

output=/chemin/du/repertoire/de/sauvegarde

Pour changer les permissions des répertoires contenant les fichiers extraits :

# directory permissions: Permissions for directories.
# Default: 0755

dpermission=0777

Idem mais pour les fichiers :

# file permissions: Permissions for sound and log files.
# If not set, uses the default system settings.
# Default: not set

fpermission=

Pour choisir un autre logiciel de rip :

# ripper: select CD ripper
# 0 - dagrab
# 1 - cdparanoia
# 2 - cdda2wav
# 3 - tosha
# 4 - cdd
# Default: cdparanoia

ripper=1

Pour choisir son format d'encodage par défaut (sachant qu'il suffit d'ajouter une option à la commande de ripit pour choisir un autre format dans ceux listés ci-dessous) :

# coder: Select encoders for audio files:
# 0 - Lame (mp3)
# 1 - Oggenc (ogg)
# 2 - Flac (flac)
# 3 - Faac (m4a)
# 4 - mp4als (als or mp4)
# 5 - Musepack (mpc)
# 6 - Wavpack (wv)
# 7 - ffmpeg
# Multiple encoders can be selected by giving a comma separated list
# Example: coder=0,0,1,2 encodes CD twice to mp3, ogg and flac files
# Default: Lame

coder=1

Ensuite, il y a une grosse section comportant la configuration des encodages pour chaque format.

Pour définir le format de la création de répertoires de sauvegarde. Dans cet exemple, les fichiers seront sauvegardés dans un répertoire du nom de l'album situé lui-même dans un répertoire du nom de l'artiste (créé si inexistant) :

 dirtemplate="$artist/$album"

Pour définir le format des titres des fichiers. Dans ce cas, ce sera de la forme 03-titre3 :

tracktemplate="$tracknum-$trackname"

Pour convertir le nom des fichiers en minuscules :

lowercase=1

Pour remplacer les espaces dans les noms de fichiers par des underscores (_) :

underscore=1

Pour créer une playliste correspondant à l'ensemble des fichiers (au format .m3u) :

playlist=1

Ensuite, il y a toute une section relative à la configuration des tags puis une section relative à la base de données des tags avec la possibilité de se connecter avec son compte MusicBrainz.

Pour ejecter le CD après l'encodage :

eject=1

Pour executer une commande à la fin du processus de ripping (dans ce cas, on joue un son pour notifier de la fin du processus) :

execmd="aplay /chemin/vers/un/repertoire/de/sons/complete.wav"

Sur la même idée, on pourrai imaginer l'execution d'un popup sur l'écran en appelant un script contenant :

#!/bin/bash
aplay /home/salon/sons/complete.wav && "export DISPLAY=:0.0 && zenity --info --text=$'L\'encodage du CD audio s\'est terminé avec succès'"

Si vous voulez afficher sur l'écran d'une autre machine :

#!/bin/bash
aplay /home/salon/sons/complete.wav && ssh <user>@<machine> "export DISPLAY=:0.0 &&
zenity --info --text=$'L\'encodage du CD audio s\'est terminé avec succès'"

Pour exécuter une commande au début du processus (dans ce cas, on joue un son pour notifier de la mise en route du ripping) :

precmd="aplay /chemin/vers/un/repertoire/de/sons/glass.wav"

Pour éteindre la machine à la fin du processus :

halt=1

Pour normaliser les sons à un même niveau (cela permet de ne pas avoir de grosses différences de volumes entre les fichiers de sa bibliothèque de musique) :

normalize=1

Lancer l'extraction avec une télécommande

Il peut être bien pratique de commander le lancement de l'extraction du CD si notre machine n'a pas d'interface graphique.

Pour cela, on pourra utiliser une télécommande configurée avec Lirc et assigner un bouton de cette télécommande pour le lancement de l'extraction.

Rendez-vous à la fin de la section dédiée