All pastes #605659 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-07-06 11:05 UTC
rendered paste body
#!/bin/bash

# périphérique représentant le lecteur CD
# convient la plupart du temps
CD_DEV=/dev/cdrom;

# résultat de la dernière commande cdparanoia
# initialisée à zéro pour pouvoir entrer dans le while
RESULT=0;

# numéro de la piste à encoder une fois dans le while
TRACK_NUM=1;

# longueur du numéro de piste : ici 3 chiffres : 001, 002...
# 4 chiffres : 0001, 0002
NUMBER_LENGHT=3;

# tant que l'on n'a pas trouvé la dernière piste, on continue.
while [ $RESULT -eq 0 ]; do

    NUMBER=`printf "%.${NUMBER_LENGHT}d" $TRACK_NUM`;

    # appel de la commande d'extraction
    cdparanoia --force-cdrom-device $CD_DEV --output-wav "$TRACK_NUM" "track$NUMBER.wav";

    # récupération du resultat de la derniere commande
    RESULT=$?;
    
    # on suppose que le CD n'est pas rayé et que le disque dur n'est pas plein.
    # s'il y a erreur, c'est que le numéro de piste n'existe pas.
    if [ $RESULT -eq 0 ]; then
    
        # conversion du WAVE en MP3
        lame --verbose -h -b 320 "track$NUMBER.wav" "track$NUMBER.mp3";
    
    fi

    # effacement du fichier WAVE temporaire
    rm -f "track$NUMBER.wav";
    
    # incrémentation du numéro de piste
    TRACK_NUM=$(($TRACK_NUM + 1));

done