#326 Le 04/02/2009, à 20:26
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
[root ~]# whereis cut
cut: /usr/bin/cut /usr/share/man/man1/cut.1.gz
[root ~]# which cut
/usr/bin/cut/
Donc apparemment cut est présent
P.S : en fait je me met en root pour faire la commande cut et quand je le fais en sudo, ça marche ( j'ai juste Flash* not found parce que j'ai rien chargé donc j'essaierais un peu plus tard )
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#327 Le 04/02/2009, à 21:53
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Visiblement c'est un problème de version de GTKDialog ou de GTK...
Je crois pas que ça soit ça... Quand j'ouvre T1000-tag en sudo, je n'ai pas ce message... Mais T1000-tag ne marche quand même pas... Sinon, je crois pas que cette ligne ait une influence sur T1000-tag puisqu'elle ne survient que quand j'ouvre le fichier où enregistrer les musiques ( l'interface pour naviguer dans les fichiers et choisir le fichier )...
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#328 Le 04/02/2009, à 22:01
- plmegalo
Re : [Aide] Script qui télécharge convertie tag et range les mp3
plmegalo a écrit :Visiblement c'est un problème de version de GTKDialog ou de GTK...
Je crois pas que ça soit ça... Quand j'ouvre T1000-tag en sudo, je n'ai pas ce message... Mais T1000-tag ne marche quand même pas... Sinon, je crois pas que cette ligne ait une influence sur T1000-tag puisqu'elle ne survient que quand j'ouvre le fichier où enregistrer les musiques ( l'interface pour naviguer dans les fichiers et choisir le fichier )...
il se peut aussi que t1000 tag ne fasse pas la même chose quand tu es en root et quand tu est en utilisateur normal... et donc ne fait pas appel de la même façon à GTKDialog...
enfin je pense que tu peux vérifier si tu ne l'as pas déjà fait...
De toute façon je suis sous ubuntu et T1000-tag ne fonctionne pas d'avantage mieux plus
Dernière modification par plmegalo (Le 04/02/2009, à 22:02)
#329 Le 04/02/2009, à 23:02
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
[root ~]# whereis cut cut: /usr/bin/cut /usr/share/man/man1/cut.1.gz [root ~]# which cut /usr/bin/cut/
Donc apparemment cut est présent
P.S : en fait je me met en root pour faire la commande cut et quand je le fais en sudo, ça marche ( j'ai juste Flash* not found parce que j'ai rien chargé donc j'essaierais un peu plus tard )
Peut-tu nous donner le résultat de :
echo $PATH
Hors ligne
#330 Le 04/02/2009, à 23:28
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
[user ~]# echo $PATH
/usr/local/bin: /usr/bin: /bin: /usr/games
[root ~]# echo $PATH
/usr/local/sbin: /usr/local/bin: /usr/sbin: /usr/bin: /sbin: /bin
Justement je me disais qu'il fallait que je change les PATH... Comment faire ?
En fait je crois qu'il n'y a pas grand chose que j'ai à changer... Je me demande juste comment faire pour que quand je fasse un sudo, les PATH soient les même que en root ?
Dernière modification par shakipu (Le 04/02/2009, à 23:31)
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#331 Le 04/02/2009, à 23:37
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Que donnent les commandes whereis et which pour ton user?
Dernière modification par redisded (Le 04/02/2009, à 23:38)
Hors ligne
#332 Le 04/02/2009, à 23:49
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
La même chose qu'en root... là je suis carrèment paumé
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#333 Le 05/02/2009, à 00:02
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Et si tu essai en terminal :
ls -lt /tmp/Flash* | /usr/bin/cut -d " " -f8 | head -n1
Hors ligne
#334 Le 05/02/2009, à 00:12
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
ça a écrit "4" et c'est tout, pas de musique dans mon dossier personnel, que ça soit en root ou en user...
EDIT : ah bah normal, je viens de comprendre vite fait la commande ça copie rien dans mon dossier...
Dernière modification par shakipu (Le 05/02/2009, à 00:16)
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#335 Le 05/02/2009, à 00:15
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
essai dans ce cas de remplacer dans le script toutes les occurences de cut par /usr/bin/cut.
Ensuite, relance le chargement d'un morceau dans ton navigateur et test le script à nouveau.
Hors ligne
#336 Le 05/02/2009, à 00:19
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
J'ai rééssayé la commande précédente en changeant /usr/bin/cut par cut et ça a marché... J'ai lancé T1000-tag dans un terminal et j'ai eu 4 fois :
** Gtk-WARNING **: Cannot open display
et T1000-tag n'a pas démarré...
EDIT : et avant le gtk warning, c'est écris (gtkdialog:122554)
EDIT 2 : je vais me coucher, je verrais ça demain... Au pire, je récupère mes musiques à la main et j'édite le tag à la main... Bonne nuit tout le monde et merci !
Dernière modification par shakipu (Le 05/02/2009, à 00:30)
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#337 Le 05/02/2009, à 00:29
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
que te renvoi :
echo $DISPLAY
Hors ligne
#338 Le 05/02/2009, à 00:33
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
le gtk-warning ne se fait qu'en root... En user, j'ai aucun message d'erreur mais ça ne marche toujours pas ( "Une erreur est survenue" )
[user ~]# echo $DISPLAY
:0.0
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#339 Le 05/02/2009, à 00:35
- redisded
Re : [Aide] Script qui télécharge convertie tag et range les mp3
et que te donne cette commande :
ls -lt /tmp/Flash* | /usr/bin/cut -d " " -f8 | head -n1
avec un morceau chargé dans le repertoire /tmp ?
Hors ligne
#340 Le 05/02/2009, à 00:37
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
ça me donne "4" c'est tout...
Mais bon comme je l'ai dis précedemment, vu la galère, au pire je peux tous faire à la main...
EDIT : Bonne nuit !
Dernière modification par shakipu (Le 05/02/2009, à 00:46)
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#341 Le 05/02/2009, à 15:51
- gulp
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Franchement très bien fait!
un truc qui manque pourvoir le faire tourner en boucle en répondant automatiquement au boite de dialogue(et pouvoir prédéfinir la réponse). Pour ripper les chansons qui ce succède sur une radio
Sinon très beau boulot bravo
Hors ligne
#342 Le 17/02/2009, à 19:02
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Merci
J'ai fait un petit script pour ranger une bibliotech mais il n'est pas trés performant par rapport a des vraix logiciel mais bon si y'en a qui sont intérreser envoyer moi un mail
Mes script : T1000tag~Série pour conky
Hors ligne
#343 Le 24/04/2009, à 18:03
- blackbg
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Ce petit script me paraît super, cependant, sans vouloir être offensant, il est bourré de fautes de français diverses et variées.
C'est dommage par rapport à tout le travail fourni !
Hors ligne
#344 Le 24/04/2009, à 22:32
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Bonsoir blackbg
Nous avons toujours besoin de personne compétente en orthographe ou en traduction.
Si tu as quelques minutes voici le script à modifier pour corriger toutes ces petites coquilles de français.
#!/bin/sh
##########################################################################################################################
## Change log: ##
## ----------- ##
## ##
## -Utilisation de lltag -S au lieu de MP3info (v1.0) ##
## -Correction des fautes de nortograffe :) (All) ##
## -Utilisation de genpuid© et mipcore© pour générer le puid du MP3 Musicip© (http://www.musicip.com) ##
## -Utilisation de la BD Musicbrainz pour récupérer les tags auto (v1.3) ##
## -Ouverture de DEEZER avec la recherche demandée (v1.3) ##
## -Récupération du dernier Flash*** présent dans le /tmp/ (Merci à AnsuzPeorth) (v1.2) ##
## -Utilisation de eyeD3 pour tag v1.1 et V2.4 (v1.2) ##
## -Amélioration des recherches CDDB avec lltag (v1.3) ##
## -Détermine si le chargement est complet automatiquement (Merci à AnsuzPeorth) (v1.3) ##
## -Différent choix de recherche (v1.4) ##
## -Correction du bug quand plusieurs Flash** dans /tmp/ (v1.4) ##
## -Correction du bug pour la requête sur CDDB (v1.4) ##
## -Correction du bug des tag quand le PUID donne plusieurs réponses ##
## -Suppression des underscrore pour le trie des mp3 (v1.4) ##
## -Amélioration de l'affichage (v1.4) ##
## -Utilisation eyeD3 pour la définition des variables de trie (Regle le problème d'accent) (ruse de sioux) (v1.4) ##
## -Mise en Majuscule de la première lettre de chaque tag rentré manuellement (v1.4) ##
## -Conversion réalisée dans /tmp/conv pour que ça soit plus propre et rangé (v1.4) ##
## -Création d'un installeur automatique (v1.5) ##
## -Modification de la requête Imeem pour n'afficher que des musiques (v1.5) ##
## -Ajout en prévision des images de fond et icônes (v1.5) ##
## -Ajout en prévision du raccourci dans Application>Son et videos>T1000-tag (v1.5) ##
## -Raccourci ajouté (v1.6) ##
## -Interface graphique (v1.7) ##
## -Utilisation des genres fournie par eyeD3 -l (1.7) ##
## -Modification du fichier install pour incorporer les images et icones néccesaire pour la version graphique (v1.7) ##
## -Correction de bug divers (v1.7) ##
## -Amélioration de l'exécution du script et simplification des opérations conditionnelles (v1.7) ##
## -Correction du bug avec les "/" (v1.8) ##
## -Conversion effectuée dans le répertoire /tmp/conv (v1.8) ##
## -Ajout d'une progresse bar pour montrer l'avancement du téléchargement / conversion / Puid gen (v1.8) ##
## -Ajout d'un système de configuration (v1.9) ##
## -Supression des recherches Deezer et IMEEM (v2.0) ##
## -Renomage du script en T1000-tag (v2.0) ##
## -Changement du logo (v2.0) ##
## ##
## -Afin de respecter les lois régissant internet dans mon beau pays des droits de l'Homme cette ##
## version sera changer prochainnement pour ne plus laisser de lien avec les sites Deezer et Imeem et devenir ##
## un script sans ambiguité avec le Warez chose dont ce script n'est pas fait et ne sera jamais fait. ##
## ##
## Amicalement 06011988 ##
## ##
##########################################################################################################################
#
##########################
## Auteur : 06011988 ##
## Version: 2.0 ##
## Licence: GNU ##
##########################
#
#L'auteur décline toutes responsabilités de l'utilisation illégale de T1000-tag!
#
# Clé d'utilisation de genpuid (Fourni par Musicdns.com)
key=3839dbda127e29ccd213da2be833b756
#Conversion dans le tmp
mkdir -p /tmp/conv
#Verife du fichier de conf
test -e ~/.T1000-tag
CONFIG=$?
if [ "$CONFIG" = "1" ]; then
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Aucun fichier de configuration. Merci de lancer la configuration!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
}
#fichier de conf présent test de son intégrité
else
{
Test_dir=$(cat ~/.T1000-tag | grep "Chemin" | sed -e 's/Chemin=//')
Test_trie=$(cat ~/.T1000-tag | grep "Trie" | sed -e 's/Trie=//')
Test_nom=$(cat ~/.T1000-tag | grep "Nom" | sed -e 's/Nom=//')
if [ -d "$Test_dir" ]; then
{
echo "config DIR OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
#Éviter d'avoir 3 fenêtres annonçant que le fichier de config est corrompu
ERROR="1"
}
fi
if [ "$ERROR" = "1" ] || [ "$Test_trie" = "9" ] || [ "$Test_trie" = "8" ] || [ "$Test_trie" = "7" ] || [ "$Test_trie" = "6" ] || [ "$Test_trie" = "5" ] || [ "$Test_trie" = "4" ] || [ "$Test_trie" = "3" ] || [ "$Test_trie" = "2" ] || [ "$Test_trie" = "1" ]; then
{
echo "config TRIE OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
#Éviter d'avoir 3 fenêtres annonçant que le fichier de config est corrompu
ERROR="1"
}
fi
if [ "$ERROR" = "1" ] || [ "$Test_nom" = "8" ] || [ "$Test_nom" = "7" ] || [ "$Test_nom" = "6" ] || [ "$Test_nom" = "5" ] || [ "$Test_nom" = "4" ] || [ "$Test_nom" = "3" ] || [ "$Test_nom" = "2" ] || [ "$Test_nom" = "1" ]; then
{
echo "config NOM OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
}
fi
}
fi
#Recherche
export MAIN_DIALOG='
<window icon-name="deezaster" title="T1000-tag" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/T1000-tagfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Fichier déjà en cours de chargement</item>
</combobox>
<entry>
<variable>query</variable>
<default>Artiste ou chanson à rechercher ...</default>
</entry>
</hbox>
</frame>
</hbox>
<hbox>
<button ok></button>
<button help></button>
<button>
<input file icon="gtk-preferences">"Configuration"</input><label>Configuration</label>
</button>
<button cancel></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
# OK
## Supression des recherche sur deezer et IMEEM
# Quitte
if [ "$EXIT" = "Cancel" ] || [ "$EXIT" = "abort" ]; then
{
boulet="Merci d'avoir lancer T1000-tag pour ne pas l'utiliser c'est mâlin ..."
export MAIN_DIALOG='
<window title="Au revoir" icon-name="stop" resizable="false" window_position="1">
<vbox>
<frame Boulet :>
<text>
<label>'"$boulet"'</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
exit 0
}
# Aide
elif [ "$EXIT" = "Help" ]; then
{
legal="L'auteur décline toutes responsabilités de l'utilisation illégale de T1000-tag!"
export MAIN_DIALOG='
<window title="About" icon-name="help" resizable="false" window_position="1">
<vbox>
<frame Information :>
<text use-markup="true">
<label>"<b>Script réalisé par:</b> 06011988"</label>
</text>
<text>
<label>'"$legal"'</label>
</text>
<text use-markup="true">
<label>"<b>Pour tout bugs:</b>"</label>
</text>
<text selectable="true">
<label>http://forum.ubuntu-fr.org/viewtopic.php?pid=2338606</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
T1000-tag
exit 0
}
elif [ "$EXIT" = "Configuration" ]; then
{
export MAIN_DIALOG='
<window title="Configuration" icon-name="gtk-preferences" resizable="false" window_position="1">
<vbox>
<notebook labels="Dossier|Trie|Nom">
<vbox>
<text>
<label>Choisir le dossier de destination :</label>
</text>
<hbox>
<entry accept="directory">
<label>Séléctionner le répertoire de destination :</label>
<variable>FILE_DIRECTORY</variable>
</entry>
</hbox>
<hbox>
<button>
<input file stock="gtk-open"></input><label>Séléctionner</label>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</hbox>
</vbox>
<vbox>
<text>
<label>Paramètre de rangement :</label>
</text>
<radiobutton active="true">
<label>Artist/</label>
<variable>trie1</variable>
</radiobutton>
<radiobutton active="true">
<label>Album/</label>
<variable>trie2</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/</label>
<variable>trie3</variable>
</radiobutton>
<radiobutton active="true">
<label>Artiste/Album/</label>
<variable>trie4</variable>
</radiobutton>
<radiobutton active="true">
<label>Artiste/Genre/</label>
<variable>trie5</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Artiste/</label>
<variable>trie6</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Album/</label>
<variable>trie7</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Artiste/Album/</label>
<variable>trie8</variable>
</radiobutton>
<radiobutton active="true">
<label>Aucun</label>
<variable>trie9</variable>
</radiobutton>
</vbox>
<vbox>
<text>
<label>Paramètre du nom du mp3 :</label>
</text>
<radiobutton active="true">
<label>titre</label>
<variable>nom1</variable>
</radiobutton>
<radiobutton active="true">
<label>track - titre</label>
<variable>nom2</variable>
</radiobutton>
<radiobutton active="true">
<label>artist - titre</label>
<variable>nom3</variable>
</radiobutton>
<radiobutton active="true">
<label>album - titre</label>
<variable>nom4</variable>
</radiobutton>
<radiobutton active="true">
<label>track - artist - titre</label>
<variable>nom5</variable>
</radiobutton>
<radiobutton active="true">
<label>track - album - titre</label>
<variable>nom6</variable>
</radiobutton>
<radiobutton active="true">
<label>artist - album - titre</label>
<variable>nom7</variable>
</radiobutton>
<radiobutton active="true">
<label>track - artist - album - titre</label>
<variable>nom8</variable>
</radiobutton>
</vbox>
</notebook>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "OK" ]; then
{
# Définition de la variable de trie
if [ "$trie1" = "true" ]; then
{
TRIE="1"
}
elif [ "$trie2" = "true" ]; then
{
TRIE="2"
}
elif [ "$trie3" = "true" ]; then
{
TRIE="3"
}
elif [ "$trie4" = "true" ]; then
{
TRIE="4"
}
elif [ "$trie5" = "true" ]; then
{
TRIE="5"
}
elif [ "$trie6" = "true" ]; then
{
TRIE="6"
}
elif [ "$trie7" = "true" ]; then
{
TRIE="7"
}
elif [ "$trie8" = "true" ]; then
{
TRIE="8"
}
elif [ "$trie9" = "true" ]; then
{
TRIE="9"
}
fi
#Définition des variables pour l'affichage du nom
if [ "$nom1" = "true" ]; then
{
NOM="1"
}
elif [ "$nom2" = "true" ]; then
{
NOM="2"
}
elif [ "$nom3" = "true" ]; then
{
NOM="3"
}
elif [ "$nom4" = "true" ]; then
{
NOM="4"
}
elif [ "$nom5" = "true" ]; then
{
NOM="5"
}
elif [ "$nom6" = "true" ]; then
{
NOM="6"
}
elif [ "$nom7" = "true" ]; then
{
NOM="7"
}
elif [ "$nom8" = "true" ]; then
{
NOM="8"
}
fi
#Définition du répertoire
REP=$FILE_DIRECTORY
#Création du fichion de configuration
echo "Chemin=$REP">~/.T1000-tag
echo "Trie=$TRIE">>~/.T1000-tag
echo "Nom=$NOM">>~/.T1000-tag
}
fi
T1000-tag
exit 0
}
fi
# Fichier chargé complétement?
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Merci de lancer le chargement de la musique avant de continuer T1000-tag</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
### Sélection du dernier fichier flv présent dans /tmp/
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
# OK
if [ "$EXIT" = "OK" ]; then
{
##Fichier existant ?
if [ -e "$file" ]; then
{
### Chargement du fichier test
export MAIN_DIALOG='
<window title="Téléchargement" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moin de temps selon votre connexion.</label>
</text>
<progressbar>
<label>Téléchargement en cours ...</label>
<input>i=33.33333333 ; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
var=$(ls -lt /tmp/Flash* | cut -d " " -f5 | head -n1)
(
until [ "$var" = "$var1" ]
do
var1=$var
sleep 2
var=$(ls -lt /tmp/Flash* | cut -d " " -f5 | head -n1)
done
)
killall gtkdialog
export MAIN_DIALOG='
<window title="Conversion Audio" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moin de temps selon la durée de la chanson.</label>
</text>
<progressbar>
<label>Conversion Audio en cours ...</label>
<input>i=66.6666666 ; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
### Copie du fichier de /tmp a /home/MP3/
cp $file /tmp/conv/conv.flv
### Conversion FLV->MP3
mplayer -dumpaudio -dumpfile /tmp/conv/conv.mp3 /tmp/conv/conv.flv
### supression du flv
rm -f /tmp/conv/conv.flv
### Tag
#### Génération du PUID du mp3
label="Génération de l'empreinte audio"
PUID=$(genpuid $key /tmp/conv/conv.mp3 | grep " puid: " | sed -e 's/.*puid: //')
#### Récupération des tags avec Musicbrainz©
wget -O /tmp/conv/.PUID http://musicbrainz.org/show/puid/?puid=$PUID
#### Vérification des tags
killall gtkdialog
export MAIN_DIALOG='
<window title="'"$label"'" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moin de temps selon la durée de la chanson.</label>
</text>
<progressbar>
<label>'"$label"'</label>
<input>i=99.9999999; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
killall gtkdialog
export MAIN_DIALOG='
<window title="Tag non trouvé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Tag non trouvé sur Musicbrainz©. Que faire rentrez les tag :</label>
</text>
</frame>
<hbox>
<button>
<input file icon="emblem-draft">"Manuellement"</input><label>Manuellement</label>
</button>
<button>
<input file icon="emblem-web">Via la CDDB</input><label>Via la base de données CDDB</label>
</button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Via la base de données CDDB" ]; then
{
###### Tagage avec lltag (ID3 v1)
label="Entrer le nom de l'artiste ou l'album puis laissez vous guider:"
export MAIN_DIALOG='
<window title="Recherche CDDB" icon-name="help" resizable="false" window_position="1">
<vbox>
<text>
<label>'"$label"'</label>
</text>
<entry>
<variable>cddb</variable>
</entry>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Lancement de lltag dans un terminal
xterm -geometry 170x60 -sb -rightbar -hold -e lltag --cddb-query "$cddb" /tmp/conv/conv.mp3
use_lltag="1"
}
elif [ "$EXIT" = "Manuellement" ]; then
{
###### Tagage manuel
export MAIN_DIALOG='
<window title="Rentrer les tags manuellement" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<text>
<label>Artiste :</label>
</text>
<entry>
<variable>martiste</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Album : </label>
</text>
<entry>
<variable>malbum</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Track : </label>
</text>
<entry>
<variable>mtrack</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Genre : </label>
</text>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</hbox>
<hbox>
<text>
<label>Titre : </label>
</text>
<entry>
<variable>mtitre</variable>
</entry>
</hbox>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Mise en majuscule de la première lettre de chaque variable (plus propre)
martiste=$(echo "$martiste" | sed 's/^./\u&/' | sed -e 's/\//-/g')
malbum=$(echo "$malbum" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtrack=$(echo "$mtrack" | sed 's/^./\u&/' | sed -e 's/\//-/g')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
fi
}
else
{
##### Tag trouvé sur Musicbrainz©
##### Définition des variables
mbartist=$(cat /tmp/conv/.PUID | grep "<table class=\"artisttitle\">" | sed -e 's/.*artist page">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
##### Affichage des Tags trouvés
killall gtkdialog
export MAIN_DIALOG='
<window title="tag trouvé sur Musicbrainz©" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<frame Artiste : >
<text>
<label># '"$mbartist"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Album : >
<text>
<label># '"$mbalbum"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Titre : >
<text>
<label># '"$mbtitre"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Track : >
<text>
<label># '"$mbtrack"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Les tags de Musibrainz© sont conforme ?>
<button yes></button>
<button no></button>
</frame>
</hbox>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
##### Vérification des Tags
if [ "$EXIT" = "Yes" ]; then
{
###### Tag conforme puis définition du Genre (pas donné par Musicbrainz©)
export MAIN_DIALOG='
<window title="Entrez le genre" icon-name="help" resizable="false" window_position="1">
<vbox>
<frame Entrez le genre>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</frame>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
eyeD3 -a "$mbartist" -A "$mbalbum" -t "$mbtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
elif [ "$EXIT" = "No" ]; then
{
###### Tag non conforme
export MAIN_DIALOG='
<window title="Tag non trouvé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Tag non trouvé sur Musicbrainz©. Que faire, rentrer les tag :</label>
</text>
</frame>
<hbox>
<button>
<input file icon="emblem-draft">"Manuellement"</input><label>Manuellement</label>
</button>
<button>
<input file icon="emblem-web">Via la CDDB</input><label>Via la base de données CDDB</label>
</button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Via la base de données CDDB" ]; then
{
###### Tagage avec lltag (ID3 v1)
label="Entrer le nom de l'artiste ou l'album puis laissez vous guider:"
export MAIN_DIALOG='
<window title="Recherche CDDB" icon-name="help" resizable="false" window_position="1">
<vbox>
<text>
<label>'"$label"'</label>
</text>
<entry>
<variable>cddb</variable>
</entry>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Lancement de lltag dans un terminal
xterm -geometry 170x60 -sb -rightbar -hold -e lltag --cddb-query "$cddb" /tmp/conv/conv.mp3
use_lltag="1"
}
elif [ "$EXIT" = "Manuellement" ]; then
{
###### Tagage manuel
export MAIN_DIALOG='
<window title="Rentré les tags manuellement" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<text>
<label>Artiste :</label>
</text>
<entry>
<variable>martiste</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Album : </label>
</text>
<entry>
<variable>malbum</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Track : </label>
</text>
<entry>
<variable>mtrack</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Genre : </label>
</text>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</hbox>
<hbox>
<text>
<label>Titre : </label>
</text>
<entry>
<variable>mtitre</variable>
</entry>
</hbox>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Mise en majuscule de la première lettre de chaque variable (plus propre)
martiste=$(echo "$martiste" | sed 's/^./\u&/' | sed -e 's/\//-/g')
malbum=$(echo "$malbum" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtrack=$(echo "$mtrack" | sed 's/^./\u&/' | sed -e 's/\//-/g')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
fi
}
fi
}
fi
export MAIN_DIALOG='
<window title="Insertion terminée" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Insertion des Tag (ID3 v2.4) terminé !</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### Supression du fichier .PUID
rm -f /tmp/conv/.PUID
### Extraction des variables (ruse siou)
eyeD3 --rename="%Asupr1%asupr2%tsupr3%n" /tmp/conv/conv.mp3
### Définition des variables
ARTIST=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/supr1.*//' | sed -e 's/\//-/g')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//' | sed -e 's/\//-/g')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/supr3.*//' | sed -e 's/\//-/g')
NUMBER=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr3//' | sed -e 's/.mp3.*//' | sed -e 's/\//-/g')
GENRE=$(echo $mgenre | sed -e 's/\//-/g')
MOVE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///')
### Si on a tag avec la CDDB les variables seront modifiées afin de garder les accents correctement
if [ "$use_lltag" = "1" ];then
{
ARTIST=$(lltag -S /tmp/conv/"$MOVE" | grep "ARTIST" | sed -e 's/.*=//' | sed -e 's/\//-/g')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//' | sed -e 's/\//-/g')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//' | sed -e 's/\//-/g')
NUMBER=$(lltag -S /tmp/conv/"$MOVE" | grep "NUMBER" | sed -e 's/.*=//' | sed -e 's/\//-/g')
GENRE=$(lltag -S /tmp/conv/"$MOVE" | grep "GENRE" | sed -e 's/.*=//' | sed -e 's/\//-/g')
}
fi
### Recuperation des paramètres
dir=$(cat ~/.T1000-tag | grep "Chemin" | sed -e 's/Chemin=//')
trie=$(cat ~/.T1000-tag | grep "Trie" | sed -e 's/Trie=//')
nom=$(cat ~/.T1000-tag | grep "Nom" | sed -e 's/Nom=//')
### Création des dossiers selon la configuration
case "$trie" in
1 ) dir2="$dir/$ARTIST/";;
2 ) dir2="$dir/$ALBUM/";;
3 ) dir2="$dir/$GENRE/";;
4 ) dir2="$dir/$ARTIST/$ALBUM/";;
5 ) dir2="$dir/$ARTIST/$GENRE/";;
6 ) dir2="$dir/$GENRE/$ARTIST/";;
7 ) dir2="$dir/$GENRE/$ALBUM/";;
8 ) dir2="$dir/$GENRE/$ARTIST/$ALBUM/";;
9 ) dir2="$dir/";;
esac
mkdir -p "$dir2"
### Déplacement du mp3 dans le dossier selon la configuration
case "$nom" in
1 ) move2="$TITRE.mp3";;
2 ) move2="$NUMBER-$TITRE.mp3";;
3 ) move2="$ARTIST-$TITRE.mp3";;
4 ) move2="$ALBUM-$TITRE.mp3";;
5 ) move2="$NUMBER-$ARTIST-$TITRE.mp3";;
6 ) move2="$NUMBER-$ALBUM-$TITRE.mp3";;
7 ) move2="$ARTIST-$ALBUM-$TITRE.mp3";;
8 ) move2="$NUMBER-$ARTIST-$ALBUM-$TITRE.mp3";;
esac
mv /tmp/conv/"$MOVE" "$dir2""$move2"
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toute les opérations ont été effectuée avec succès la musique a été rangée dans :</label>
</text>
<text>
<label>'"$dir2$move2"'</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
else
{
export MAIN_DIALOG='
<window title="Erreur" icon-name="error" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Une erreur est survenue!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
fi
#Demande de relancement de T1000-tag
export MAIN_DIALOG='
<window title="T1000-tag" icon-name="reload" resizable="false" window_position="1">
<vbox>
<frame Question :>
<text>
<label>Relancer T1000-tag ?</label>
</text>
</frame>
<hbox>
<button yes></button>
<button no></button>
</hbox>
</vbox>
</window>
'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Yes" ]; then
{
T1000-tag
}
fi
exit 0
Merci @ tous
Zik Fan : " Vous seul savez mieux que quiconque comment organiser votre bibliothèque musicale ! "
Linux, y a moins bien.
Mais c'est plus cher. ;O)
Hors ligne
#345 Le 24/04/2009, à 23:54
- blackbg
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Je ne pense pas les avoir toutes éradiquées, mais j'en ai déjà corrigées une dizaine [de fautes], et encore bravo pour le travail !
#!/bin/sh
##########################################################################################################################
## Change log: ##
## ----------- ##
## ##
## -Utilisation de lltag -S au lieu de MP3info (v1.0) ##
## -Correction des fautes de nortograffe :) (All) ##
## -Utilisation de genpuid© et mipcore© pour générer le puid du MP3 Musicip© (http://www.musicip.com) ##
## -Utilisation de la BD Musicbrainz pour récupérer les tags auto (v1.3) ##
## -Ouverture de DEEZER avec la recherche demandée (v1.3) ##
## -Récupération du dernier Flash*** présent dans le /tmp/ (Merci à AnsuzPeorth) (v1.2) ##
## -Utilisation de eyeD3 pour tag v1.1 et V2.4 (v1.2) ##
## -Amélioration des recherches CDDB avec lltag (v1.3) ##
## -Détermine si le chargement est complet automatiquement (Merci à AnsuzPeorth) (v1.3) ##
## -Différents choix de recherche (v1.4) ##
## -Correction du bug quand plusieurs Flash** dans /tmp/ (v1.4) ##
## -Correction du bug pour la requête sur CDDB (v1.4) ##
## -Correction du bug des tag quand le PUID donne plusieurs réponses ##
## -Suppression des underscore pour le tri des mp3 (v1.4) ##
## -Amélioration de l'affichage (v1.4) ##
## -Utilisation eyeD3 pour la définition des variables de tri (Regle le problème d'accent) (ruse de sioux) (v1.4) ##
## -Mise en Majuscule de la première lettre de chaque tag rentré manuellement (v1.4) ##
## -Conversion réalisée dans /tmp/conv pour que ça soit plus propre et rangé (v1.4) ##
## -Création d'un installeur automatique (v1.5) ##
## -Modification de la requête Imeem pour n'afficher que des musiques (v1.5) ##
## -Ajout en prévision des images de fond et icônes (v1.5) ##
## -Ajout en prévision du raccourci dans Application>Son et vidéos>T1000-tag (v1.5) ##
## -Raccourci ajouté (v1.6) ##
## -Interface graphique (v1.7) ##
## -Utilisation des genres fournie par eyeD3 -l (1.7) ##
## -Modification du fichier install pour incorporer les images et icônes nécessaire pour la version graphique (v1.7) ##
## -Correction de bug divers (v1.7) ##
## -Amélioration de l'exécution du script et simplification des opérations conditionnelles (v1.7) ##
## -Correction du bug avec les "/" (v1.8) ##
## -Conversion effectuée dans le répertoire /tmp/conv (v1.8) ##
## -Ajout d'une progresse bar pour montrer l'avancement du téléchargement / conversion / Puid gen (v1.8) ##
## -Ajout d'un système de configuration (v1.9) ##
## -Suppression des recherches Deezer et IMEEM (v2.0) ##
## -Renommage du script en T1000-tag (v2.0) ##
## -Changement du logo (v2.0) ##
## ##
## -Afin de respecter les lois régissant internet dans mon beau pays des droits de l'Homme cette ##
## version sera changée prochainement pour ne plus laisser de lien avec les sites Deezer et Imeem et devenir ##
## un script sans ambiguïté avec le Warez, chose dont ce script n'est pas fait et ne sera jamais fait. ##
## ##
## Amicalement 06011988 ##
## ##
##########################################################################################################################
#
##########################
## Auteur : 06011988 ##
## Version: 2.0 ##
## Licence: GNU ##
##########################
#
#L'auteur décline toutes responsabilités de l'utilisation illégale de T1000-tag!
#
# Clé d'utilisation de genpuid (Fourni par Musicdns.com)
key=3839dbda127e29ccd213da2be833b756
#Conversion dans le tmp
mkdir -p /tmp/conv
#Verife du fichier de conf
test -e ~/.T1000-tag
CONFIG=$?
if [ "$CONFIG" = "1" ]; then
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Aucun fichier de configuration. Merci de lancer la configuration!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
}
#fichier de conf présent test de son intégrité
else
{
Test_dir=$(cat ~/.T1000-tag | grep "Chemin" | sed -e 's/Chemin=//')
Test_trie=$(cat ~/.T1000-tag | grep "Trie" | sed -e 's/Trie=//')
Test_nom=$(cat ~/.T1000-tag | grep "Nom" | sed -e 's/Nom=//')
if [ -d "$Test_dir" ]; then
{
echo "config DIR OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
#Éviter d'avoir 3 fenêtres annonçant que le fichier de config est corrompu
ERROR="1"
}
fi
if [ "$ERROR" = "1" ] || [ "$Test_trie" = "9" ] || [ "$Test_trie" = "8" ] || [ "$Test_trie" = "7" ] || [ "$Test_trie" = "6" ] || [ "$Test_trie" = "5" ] || [ "$Test_trie" = "4" ] || [ "$Test_trie" = "3" ] || [ "$Test_trie" = "2" ] || [ "$Test_trie" = "1" ]; then
{
echo "config TRIE OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
#Éviter d'avoir 3 fenêtres annonçant que le fichier de config est corrompu
ERROR="1"
}
fi
if [ "$ERROR" = "1" ] || [ "$Test_nom" = "8" ] || [ "$Test_nom" = "7" ] || [ "$Test_nom" = "6" ] || [ "$Test_nom" = "5" ] || [ "$Test_nom" = "4" ] || [ "$Test_nom" = "3" ] || [ "$Test_nom" = "2" ] || [ "$Test_nom" = "1" ]; then
{
echo "config NOM OK"
}
else
{
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Fichier de configuration erroné!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program MAIN_DIALOG
}
fi
}
fi
#Recherche
export MAIN_DIALOG='
<window icon-name="deezaster" title="T1000-tag" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/T1000-tagfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Fichier déjà en cours de chargement</item>
</combobox>
<entry>
<variable>query</variable>
<default>Artiste ou chanson à rechercher ...</default>
</entry>
</hbox>
</frame>
</hbox>
<hbox>
<button ok></button>
<button help></button>
<button>
<input file icon="gtk-preferences">"Configuration"</input><label>Configuration</label>
</button>
<button cancel></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
# OK
## Suppression des recherche sur deezer et IMEEM
# Quitte
if [ "$EXIT" = "Cancel" ] || [ "$EXIT" = "abort" ]; then
{
boulet="Merci d'avoir lancé T1000-tag pour ne pas l'utiliser c'est malin ..."
export MAIN_DIALOG='
<window title="Au revoir" icon-name="stop" resizable="false" window_position="1">
<vbox>
<frame Boulet :>
<text>
<label>'"$boulet"'</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
exit 0
}
# Aide
elif [ "$EXIT" = "Help" ]; then
{
legal="L'auteur décline toute responsabilité en cas d'utilisation illégale de T1000-tag!"
export MAIN_DIALOG='
<window title="About" icon-name="help" resizable="false" window_position="1">
<vbox>
<frame Information :>
<text use-markup="true">
<label>"<b>Script réalisé par:</b> 06011988"</label>
</text>
<text>
<label>'"$legal"'</label>
</text>
<text use-markup="true">
<label>"<b>Pour tout bugs:</b>"</label>
</text>
<text selectable="true">
<label>http://forum.ubuntu-fr.org/viewtopic.php?pid=2338606</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
T1000-tag
exit 0
}
elif [ "$EXIT" = "Configuration" ]; then
{
export MAIN_DIALOG='
<window title="Configuration" icon-name="gtk-preferences" resizable="false" window_position="1">
<vbox>
<notebook labels="Dossier|Trie|Nom">
<vbox>
<text>
<label>Choisir le dossier de destination :</label>
</text>
<hbox>
<entry accept="directory">
<label>Sélectionner le répertoire de destination :</label>
<variable>FILE_DIRECTORY</variable>
</entry>
</hbox>
<hbox>
<button>
<input file stock="gtk-open"></input><label>Sélectionner</label>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</hbox>
</vbox>
<vbox>
<text>
<label>Paramètres de rangement :</label>
</text>
<radiobutton active="true">
<label>Artist/</label>
<variable>trie1</variable>
</radiobutton>
<radiobutton active="true">
<label>Album/</label>
<variable>trie2</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/</label>
<variable>trie3</variable>
</radiobutton>
<radiobutton active="true">
<label>Artiste/Album/</label>
<variable>trie4</variable>
</radiobutton>
<radiobutton active="true">
<label>Artiste/Genre/</label>
<variable>trie5</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Artiste/</label>
<variable>trie6</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Album/</label>
<variable>trie7</variable>
</radiobutton>
<radiobutton active="true">
<label>Genre/Artiste/Album/</label>
<variable>trie8</variable>
</radiobutton>
<radiobutton active="true">
<label>Aucun</label>
<variable>trie9</variable>
</radiobutton>
</vbox>
<vbox>
<text>
<label>Paramètres du nom du mp3 :</label>
</text>
<radiobutton active="true">
<label>titre</label>
<variable>nom1</variable>
</radiobutton>
<radiobutton active="true">
<label>track - titre</label>
<variable>nom2</variable>
</radiobutton>
<radiobutton active="true">
<label>artist - titre</label>
<variable>nom3</variable>
</radiobutton>
<radiobutton active="true">
<label>album - titre</label>
<variable>nom4</variable>
</radiobutton>
<radiobutton active="true">
<label>track - artist - titre</label>
<variable>nom5</variable>
</radiobutton>
<radiobutton active="true">
<label>track - album - titre</label>
<variable>nom6</variable>
</radiobutton>
<radiobutton active="true">
<label>artist - album - titre</label>
<variable>nom7</variable>
</radiobutton>
<radiobutton active="true">
<label>track - artist - album - titre</label>
<variable>nom8</variable>
</radiobutton>
</vbox>
</notebook>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "OK" ]; then
{
# Définition de la variable de tri
if [ "$trie1" = "true" ]; then
{
TRIE="1"
}
elif [ "$trie2" = "true" ]; then
{
TRIE="2"
}
elif [ "$trie3" = "true" ]; then
{
TRIE="3"
}
elif [ "$trie4" = "true" ]; then
{
TRIE="4"
}
elif [ "$trie5" = "true" ]; then
{
TRIE="5"
}
elif [ "$trie6" = "true" ]; then
{
TRIE="6"
}
elif [ "$trie7" = "true" ]; then
{
TRIE="7"
}
elif [ "$trie8" = "true" ]; then
{
TRIE="8"
}
elif [ "$trie9" = "true" ]; then
{
TRIE="9"
}
fi
#Définition des variables pour l'affichage du nom
if [ "$nom1" = "true" ]; then
{
NOM="1"
}
elif [ "$nom2" = "true" ]; then
{
NOM="2"
}
elif [ "$nom3" = "true" ]; then
{
NOM="3"
}
elif [ "$nom4" = "true" ]; then
{
NOM="4"
}
elif [ "$nom5" = "true" ]; then
{
NOM="5"
}
elif [ "$nom6" = "true" ]; then
{
NOM="6"
}
elif [ "$nom7" = "true" ]; then
{
NOM="7"
}
elif [ "$nom8" = "true" ]; then
{
NOM="8"
}
fi
#Définition du répertoire
REP=$FILE_DIRECTORY
#Création du fichion de configuration
echo "Chemin=$REP">~/.T1000-tag
echo "Trie=$TRIE">>~/.T1000-tag
echo "Nom=$NOM">>~/.T1000-tag
}
fi
T1000-tag
exit 0
}
fi
# Fichier chargé complétement?
export MAIN_DIALOG='
<window title="Attention" icon-name="gtk-dialog-warning" resizable="false" window_position="1">
<vbox>
<frame Attention>
<text>
<label>Merci de lancer le chargement de la musique avant de continuer T1000-tag</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
### Sélection du dernier fichier flv présent dans /tmp/
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
# OK
if [ "$EXIT" = "OK" ]; then
{
##Fichier existant ?
if [ -e "$file" ]; then
{
### Chargement du fichier test
export MAIN_DIALOG='
<window title="Téléchargement" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon votre connexion.</label>
</text>
<progressbar>
<label>Téléchargement en cours ...</label>
<input>i=33.33333333 ; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
var=$(ls -lt /tmp/Flash* | cut -d " " -f5 | head -n1)
(
until [ "$var" = "$var1" ]
do
var1=$var
sleep 2
var=$(ls -lt /tmp/Flash* | cut -d " " -f5 | head -n1)
done
)
killall gtkdialog
export MAIN_DIALOG='
<window title="Conversion Audio" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson.</label>
</text>
<progressbar>
<label>Conversion Audio en cours ...</label>
<input>i=66.6666666 ; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
### Copie du fichier de /tmp a /home/MP3/
cp $file /tmp/conv/conv.flv
### Conversion FLV->MP3
mplayer -dumpaudio -dumpfile /tmp/conv/conv.mp3 /tmp/conv/conv.flv
### supression du flv
rm -f /tmp/conv/conv.flv
### Tag
#### Génération du PUID du mp3
label="Génération de l'empreinte audio"
PUID=$(genpuid $key /tmp/conv/conv.mp3 | grep " puid: " | sed -e 's/.*puid: //')
#### Récupération des tags avec Musicbrainz©
wget -O /tmp/conv/.PUID http://musicbrainz.org/show/puid/?puid=$PUID
#### Vérification des tags
killall gtkdialog
export MAIN_DIALOG='
<window title="'"$label"'" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Progress :>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson.</label>
</text>
<progressbar>
<label>'"$label"'</label>
<input>i=99.9999999; echo $i</input>
</progressbar>
</frame>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG 2>/dev/null &
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
killall gtkdialog
export MAIN_DIALOG='
<window title="Tag non trouvé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Tag non trouvé sur Musicbrainz©. Que faire rentrez les tag :</label>
</text>
</frame>
<hbox>
<button>
<input file icon="emblem-draft">"Manuellement"</input><label>Manuellement</label>
</button>
<button>
<input file icon="emblem-web">Via la CDDB</input><label>Via la base de données CDDB</label>
</button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Via la base de données CDDB" ]; then
{
###### Tagage avec lltag (ID3 v1)
label="Entrez le nom de l'artiste ou l'album puis laissez vous guider:"
export MAIN_DIALOG='
<window title="Recherche CDDB" icon-name="help" resizable="false" window_position="1">
<vbox>
<text>
<label>'"$label"'</label>
</text>
<entry>
<variable>cddb</variable>
</entry>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Lancement de lltag dans un terminal
xterm -geometry 170x60 -sb -rightbar -hold -e lltag --cddb-query "$cddb" /tmp/conv/conv.mp3
use_lltag="1"
}
elif [ "$EXIT" = "Manuellement" ]; then
{
###### Tagage manuel
export MAIN_DIALOG='
<window title="Rentrer les tags manuellement" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<text>
<label>Artiste :</label>
</text>
<entry>
<variable>martiste</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Album : </label>
</text>
<entry>
<variable>malbum</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Track : </label>
</text>
<entry>
<variable>mtrack</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Genre : </label>
</text>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</hbox>
<hbox>
<text>
<label>Titre : </label>
</text>
<entry>
<variable>mtitre</variable>
</entry>
</hbox>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Mise en majuscule de la première lettre de chaque variable (plus propre)
martiste=$(echo "$martiste" | sed 's/^./\u&/' | sed -e 's/\//-/g')
malbum=$(echo "$malbum" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtrack=$(echo "$mtrack" | sed 's/^./\u&/' | sed -e 's/\//-/g')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
fi
}
else
{
##### Tag trouvé sur Musicbrainz©
##### Définition des variables
mbartist=$(cat /tmp/conv/.PUID | grep "<table class=\"artisttitle\">" | sed -e 's/.*artist page">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1 | sed -e 's/\//-/g')
##### Affichage des Tags trouvés
killall gtkdialog
export MAIN_DIALOG='
<window title="tag trouvé sur Musicbrainz©" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<frame Artiste : >
<text>
<label># '"$mbartist"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Album : >
<text>
<label># '"$mbalbum"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Titre : >
<text>
<label># '"$mbtitre"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Track : >
<text>
<label># '"$mbtrack"'</label>
</text>
</frame>
</hbox>
<hbox>
<frame Les tags de Musibrainz© sont conforme ?>
<button yes></button>
<button no></button>
</frame>
</hbox>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
##### Vérification des Tags
if [ "$EXIT" = "Yes" ]; then
{
###### Tag conforme puis définition du Genre (pas donné par Musicbrainz©)
export MAIN_DIALOG='
<window title="Entrez le genre" icon-name="help" resizable="false" window_position="1">
<vbox>
<frame Entrez le genre>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</frame>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
eyeD3 -a "$mbartist" -A "$mbalbum" -t "$mbtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
elif [ "$EXIT" = "No" ]; then
{
###### Tag non conforme
export MAIN_DIALOG='
<window title="Tag non trouvé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Tag non trouvé sur Musicbrainz©. Que faire, rentrer les tag :</label>
</text>
</frame>
<hbox>
<button>
<input file icon="emblem-draft">"Manuellement"</input><label>Manuellement</label>
</button>
<button>
<input file icon="emblem-web">Via la CDDB</input><label>Via la base de données CDDB</label>
</button>
</hbox>
</vbox>
</window>
'
# Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
# Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Via la base de données CDDB" ]; then
{
###### Tagage avec lltag (ID3 v1)
label="Entrez le nom de l'artiste ou l'album puis laissez vous guider:"
export MAIN_DIALOG='
<window title="Recherche CDDB" icon-name="help" resizable="false" window_position="1">
<vbox>
<text>
<label>'"$label"'</label>
</text>
<entry>
<variable>cddb</variable>
</entry>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Lancement de lltag dans un terminal
xterm -geometry 170x60 -sb -rightbar -hold -e lltag --cddb-query "$cddb" /tmp/conv/conv.mp3
use_lltag="1"
}
elif [ "$EXIT" = "Manuellement" ]; then
{
###### Tagage manuel
export MAIN_DIALOG='
<window title="Rentrez les tags manuellement" icon-name="help" resizable="false" window_position="1">
<vbox>
<hbox>
<text>
<label>Artiste :</label>
</text>
<entry>
<variable>martiste</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Album : </label>
</text>
<entry>
<variable>malbum</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Track : </label>
</text>
<entry>
<variable>mtrack</variable>
</entry>
</hbox>
<hbox>
<text>
<label>Genre : </label>
</text>
<combobox>
<variable>mgenre</variable>
<item>Blues</item>
<item>A Cappella</item>
<item>Acid</item>
<item>Acid Punk</item>
<item>Acoustic</item>
<item>Alternative</item>
<item>AlternRock</item>
<item>Ambient</item>
<item>Anime</item>
<item>Avantgarde</item>
<item>Ballad</item>
<item>Bass</item>
<item>Beat</item>
<item>Bebob</item>
<item>Big Band</item>
<item>Black Metal</item>
<item>Bluegrass</item>
<item>Booty Bass</item>
<item>BritPop</item>
<item>Cabaret</item>
<item>Celtic</item>
<item>Chamber Music</item>
<item>Chanson</item>
<item>Chorus</item>
<item>Christian Gangsta Rap</item>
<item>Christian Rap</item>
<item>Christian Rock</item>
<item>Classic Rock</item>
<item>Classical</item>
<item>Club</item>
<item>Club-House</item>
<item>Comedy</item>
<item>Contemporary Christian</item>
<item>Country</item>
<item>Crossover</item>
<item>Cult</item>
<item>Dance</item>
<item>Dance Hall</item>
<item>Darkwave</item>
<item>Death Metal</item>
<item>Disco</item>
<item>Dream</item>
<item>Drum & Bass</item>
<item>Drum Solo</item>
<item>Duet</item>
<item>Easy Listening</item>
<item>Electronic</item>
<item>Ethnic</item>
<item>Euro-House</item>
<item>Euro-Techno</item>
<item>Eurodance</item>
<item>Fast Fusion</item>
<item>Folk</item>
<item>Folk-Rock</item>
<item>Folklore</item>
<item>Freestyle</item>
<item>Funk</item>
<item>Fusion</item>
<item>Game</item>
<item>Gangsta Rap</item>
<item>Goa</item>
<item>Gospel</item>
<item>Gothic</item>
<item>Gothic Rock</item>
<item>Grunge</item>
<item>Hard Rock</item>
<item>Hardcore</item>
<item>Heavy Metal</item>
<item>Hip-Hop</item>
<item>House</item>
<item>Humour</item>
<item>Indie</item>
<item>Industrial</item>
<item>Instrumental</item>
<item>Instrumental Pop</item>
<item>Instrumental Rock</item>
<item>Jazz</item>
<item>Jazz+Funk</item>
<item>JPop</item>
<item>Jungle</item>
<item>Latin</item>
<item>Lo-Fi</item>
<item>Meditative</item>
<item>Merengue</item>
<item>Metal</item>
<item>Musical</item>
<item>National Folk</item>
<item>Native American</item>
<item>Negerpunk</item>
<item>New Age</item>
<item>New Wave</item>
<item>Noise</item>
<item>Oldies</item>
<item>Opera</item>
<item>Other</item>
<item>Polka</item>
<item>Polsk Punk</item>
<item>Pop</item>
<item>Pop / Funk</item>
<item>Pop-Folk</item>
<item>Porn Groove</item>
<item>Power Ballad</item>
<item>Pranks</item>
<item>Primus</item>
<item>Progressive Rock</item>
<item>Psychedelic</item>
<item>Psychedelic Rock</item>
<item>Punk</item>
<item>Punk Rock</item>
<item>R&B</item>
<item>Rap</item>
<item>Rave</item>
<item>Reggae</item>
<item>Retro</item>
<item>Revival</item>
<item>Rhythmic Soul</item>
<item>Rock</item>
<item>Rock & Roll</item>
<item>Rock/Pop</item>
<item>Salsa</item>
<item>Samba</item>
<item>Satire</item>
<item>Showtunes</item>
<item>Ska</item>
<item>Slow Jam</item>
<item>Slow Rock</item>
<item>Sonata</item>
<item>Soul</item>
<item>Sound Clip</item>
<item>Soundtrack</item>
<item>Southern Rock</item>
<item>Space</item>
<item>Speech</item>
<item>Swing</item>
<item>Symphonic Rock</item>
<item>Symphony</item>
<item>Synthpop</item>
<item>Tango</item>
<item>Techno</item>
<item>Techno-Industrial</item>
<item>Terror</item>
<item>Thrash Metal</item>
<item>Top 40</item>
<item>Trailer</item>
<item>Trance</item>
<item>Tribal</item>
<item>Trip-Hop</item>
<item>Vocal</item>
</combobox>
</hbox>
<hbox>
<text>
<label>Titre : </label>
</text>
<entry>
<variable>mtitre</variable>
</entry>
</hbox>
<button ok></button>
</vbox>
</window>'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
###### Mise en majuscule de la première lettre de chaque variable (plus propre)
martiste=$(echo "$martiste" | sed 's/^./\u&/' | sed -e 's/\//-/g')
malbum=$(echo "$malbum" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/' | sed -e 's/\//-/g')
mtrack=$(echo "$mtrack" | sed 's/^./\u&/' | sed -e 's/\//-/g')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" -n "$mbtrack" /tmp/conv/conv.mp3
}
fi
}
fi
}
fi
export MAIN_DIALOG='
<window title="Insertion terminée" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Insertion des Tag (ID3 v2.4) terminé !</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### Supression du fichier .PUID
rm -f /tmp/conv/.PUID
### Extraction des variables (ruse siou)
eyeD3 --rename="%Asupr1%asupr2%tsupr3%n" /tmp/conv/conv.mp3
### Définition des variables
ARTIST=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/supr1.*//' | sed -e 's/\//-/g')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//' | sed -e 's/\//-/g')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/supr3.*//' | sed -e 's/\//-/g')
NUMBER=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr3//' | sed -e 's/.mp3.*//' | sed -e 's/\//-/g')
GENRE=$(echo $mgenre | sed -e 's/\//-/g')
MOVE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///')
### Si on a tag avec la CDDB les variables seront modifiées afin de garder les accents correctement
if [ "$use_lltag" = "1" ];then
{
ARTIST=$(lltag -S /tmp/conv/"$MOVE" | grep "ARTIST" | sed -e 's/.*=//' | sed -e 's/\//-/g')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//' | sed -e 's/\//-/g')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//' | sed -e 's/\//-/g')
NUMBER=$(lltag -S /tmp/conv/"$MOVE" | grep "NUMBER" | sed -e 's/.*=//' | sed -e 's/\//-/g')
GENRE=$(lltag -S /tmp/conv/"$MOVE" | grep "GENRE" | sed -e 's/.*=//' | sed -e 's/\//-/g')
}
fi
### Recuperation des paramètres
dir=$(cat ~/.T1000-tag | grep "Chemin" | sed -e 's/Chemin=//')
trie=$(cat ~/.T1000-tag | grep "Trie" | sed -e 's/Trie=//')
nom=$(cat ~/.T1000-tag | grep "Nom" | sed -e 's/Nom=//')
### Création des dossiers selon la configuration
case "$trie" in
1 ) dir2="$dir/$ARTIST/";;
2 ) dir2="$dir/$ALBUM/";;
3 ) dir2="$dir/$GENRE/";;
4 ) dir2="$dir/$ARTIST/$ALBUM/";;
5 ) dir2="$dir/$ARTIST/$GENRE/";;
6 ) dir2="$dir/$GENRE/$ARTIST/";;
7 ) dir2="$dir/$GENRE/$ALBUM/";;
8 ) dir2="$dir/$GENRE/$ARTIST/$ALBUM/";;
9 ) dir2="$dir/";;
esac
mkdir -p "$dir2"
### Déplacement du mp3 dans le dossier selon la configuration
case "$nom" in
1 ) move2="$TITRE.mp3";;
2 ) move2="$NUMBER-$TITRE.mp3";;
3 ) move2="$ARTIST-$TITRE.mp3";;
4 ) move2="$ALBUM-$TITRE.mp3";;
5 ) move2="$NUMBER-$ARTIST-$TITRE.mp3";;
6 ) move2="$NUMBER-$ALBUM-$TITRE.mp3";;
7 ) move2="$ARTIST-$ALBUM-$TITRE.mp3";;
8 ) move2="$NUMBER-$ARTIST-$ALBUM-$TITRE.mp3";;
esac
mv /tmp/conv/"$MOVE" "$dir2""$move2"
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toute les opérations ont été effectuées avec succès, le titre a été rangé dans :</label>
</text>
<text>
<label>'"$dir2$move2"'</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
else
{
export MAIN_DIALOG='
<window title="Erreur" icon-name="error" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Une erreur est survenue!</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
fi
#Demande de relancement de T1000-tag
export MAIN_DIALOG='
<window title="T1000-tag" icon-name="reload" resizable="false" window_position="1">
<vbox>
<frame Question :>
<text>
<label>Relancer T1000-tag ?</label>
</text>
</frame>
<hbox>
<button yes></button>
<button no></button>
</hbox>
</vbox>
</window>
'
###### Récupérer la sortie standard de Gtkdialog
VARIABLES=`gtkdialog --program MAIN_DIALOG`
###### Créer les variables shell
eval $VARIABLES
if [ "$EXIT" = "Yes" ]; then
{
T1000-tag
}
fi
exit 0
Dernière modification par blackbg (Le 25/04/2009, à 00:03)
Hors ligne
#346 Le 25/04/2009, à 01:16
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Bonsoir @ Tous,
Merci blackbg pour ta contribution
voici une nouvelle version T1000-Tag V2.1 (non officielle)
Telecharger : http://dl.free.fr/jjRBKGzAn
- Changement du logo .
- Possibilité de Tagger un fichier déjà présent en Local "MP3Local"
- Correction des fautes d'orthographes fait par blackbg.
Bonne soirée @ Tous
Dernière modification par l e . n o x (Le 25/04/2009, à 04:24)
Zik Fan : " Vous seul savez mieux que quiconque comment organiser votre bibliothèque musicale ! "
Linux, y a moins bien.
Mais c'est plus cher. ;O)
Hors ligne
#347 Le 25/04/2009, à 21:20
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Bonsoir @ Tous,
Version T1000-Tag V2.2 (nox) :
Telechargement : http://dl.free.fr/veuquGO76
Nouveautées :
- Script installation / Désinstallation : "install_T1000-Tag"
- Correction dans la routine du "fichier de configuration" au demarrage.
- Possibilité de Tagger un fichier déjà présent en Local "MP3Local".
En image :
============================================================================
_________ __ _______ _______ _______ _________ _______ _______
\__ __// \ ( __ )( __ )( __ ) \__ __/( ___ )( ____ \
) ( \/) ) | ( ) || ( ) || ( ) | ) ( | ( ) || ( \/
| | | | | | / || | / || | / | _____ | | | (___) || |
| | | | | (/ /) || (/ /) || (/ /) |(_____)| | | ___ || | ____
| | | | | / | || / | || / | | | | | ( ) || | \_ )
| | __) (_| (__) || (__) || (__) | | | | ) ( || (___) |
)_( \____/(_______)(_______)(_______) )_( |/ \|(_______)
===========================================================================
Que voulez vous faire ? :
1 - I(installation)
2 - D(esinstallation)
============================================================================
- V2.1(nox) -
============================================================================
Questions : Au papa de T1000-Tag "re06011988"
Penses tu pouvoir incorporer ton script de rangement de "Biblioteque multimédia" dans "T1000-Tag" ?
T1000-Tag pourrait devenir un assez bon couteau suisse multimédia ...
Qu'en pensez vous ?
Bonne soirée @ Tous
Dernière modification par l e . n o x (Le 25/04/2009, à 21:32)
Zik Fan : " Vous seul savez mieux que quiconque comment organiser votre bibliothèque musicale ! "
Linux, y a moins bien.
Mais c'est plus cher. ;O)
Hors ligne
#348 Le 26/04/2009, à 16:02
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Pourquoi pas sa peut être sympa
Mes script : T1000tag~Série pour conky
Hors ligne
#349 Le 27/04/2009, à 11:12
- shakipu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Est-il possible de faire un rajout "Mise à jour" dans le script d'installation ? Parce que je vois pas comment mettre à jour...
Merci d'avance
Nous sommes tous des pécheurs face à l'Ethernet...
Hors ligne
#350 Le 27/04/2009, à 13:46
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
pour faire la mise a jour tu réalise une installation sa marche aussi
Mes script : T1000tag~Série pour conky
Hors ligne