Hello Flamby et les autres mais surtout lui.
Donc le script marche impeccable à une seule nuance prête. Dans la seléction de recherche il faudrait selectionner que les mp3 qui ont une qualité d’échantillonage gravable.
J’ai remarqué que si il choppe des Mp3 de faible qualité ( par exemple 16 kbps) il refuse de graver.
A partir de quelle qualitéest ce possible de graver un audio?
Je vais essayer de l’intégrer dans la recherche ou flamby si tu as une idée n’hésites pas tu es le bienvenue.
En tout cas un grand merci à toi !!!
le script:
[code]#!/bin/bash
rep="/media/data/sounds"
rep_copie="/media/data/sounds/burn"
duree_max=72
converti duree_max en seconde
let “duree_max = $duree_max * 60”
stock liste des fichiers mp3 dans un tableau
find $rep -type f | grep .mp3 | ( while read LINE
do
tabfic[$i]=$LINE
i=$(($i+1))
done
calcul le nombre de fichier dans le tableau
nb_fichier=${#tabfic[@]}
i=“0”
while [ “$sorti” != “fin” ] && [ “$i” -lt “$nb_fichier” ]
do
# Genere un nombre aleatoire
nombre=$(($RANDOM % $nb_fichier))
nombre=$(($RANDOM % $nb_fichier))
if [ -n "${tabfic[$nombre]}" ]
then
# Recup duree chanson
# /!\ installer le paquet : mp3info
mp3info -x "${tabfic[$nombre]}" > tmp 2>&1
mm=`cat tmp | grep Length | cut -d ":" -f2`
vrac=`cat tmp | grep Length | cut -d ":" -f3`
ss=${vrac#0*}
let "duree_fichier = $mm * 60"
let "duree_fichier = $duree_fichier + $ss"
# calcul duree total avec nouvo fichier
let "tmp = $duree_total + $duree_fichier"
# si duree_total < duree_max
if [ $tmp -lt $duree_max ]
then
duree_total=$tmp
# on copie le fichier dans le rep
cp "${tabfic[$nombre]}" $rep_copie
# on supprime le fichier du tableau
#unset [$nombre]
tabfic[$nombre]=""
i=$(($i+1))
else
# on sort de la boucle. duree max atteint
sorti="fin"
fi
fi
done
supprime fichier tmp utilise pour calcul duree
rm tmp
)
rajouter l’encodage, puis la normalisation et enfin la gravure
cd /media/data/sounds/burn
for i in *.mp3; do
lame --verbose --decode “$i” “${i/%.mp3/.wav}”;
done
cd /media/data/sounds/burn
wodim -v -eject dev=/dev/hdc -tao -pad -audio *.wav
exit 0
[/code]