#151 Le 17/01/2009, à 01:30
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
j'ai compris (peut etre lltag) si il y a déja un terminal d'ouvert gnome-terminal sa ne marche pas sinon il attend ...
Pas bête pour la config
bon allé bonne nuit les jeune moi vais dodo
Mes script : T1000tag~Série pour conky
Hors ligne
#152 Le 17/01/2009, à 01:32
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
alors faudra essayé avec xterm.
bonne nuit.
++
Arch[gnu/]linuxiens
Hors ligne
#153 Le 17/01/2009, à 16:12
- rom_185
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Bonjour, j'ai lancé le script mais deezaster ne fonctionne pas, voila le retour du terminal lors de l'installation :
copie des fichiers deezaster genpuid© mipcore© dans /usr/bin
cp: ne peut évaluer `deezaster': Aucun fichier ou dossier de ce type
cp: ne peut évaluer `genpuid': Aucun fichier ou dossier de ce type
cp: ne peut évaluer `mipcore': Aucun fichier ou dossier de ce type
Done
Installation des paquets nécessaire
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Aucune version du paquet w32codecs n'est disponible, mais il existe dans la base
de données. Cela signifie en général que le paquet est manquant, qu'il est devenu obsolète
ou qu'il n'est disponible que sur une autre source
E: Aucun paquet ne correspond au paquet w32codecs
Pour w32codecs le problème provient surement du fait que je suis en x64, j'ai donc installé w64codecs mais cela ne corrige pas le problème.
Bravo quand même pour ce script !
BOINC, ou les grandes énigmes de la science résolues en 2 temps 3 calculs :D
"I reject your reality and substitue my own" – Adam Savage
Hors ligne
#154 Le 17/01/2009, à 16:16
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
tu télécharges l'archive, tu l'extrais, puis dans un terminal tu te rends dans le dossier deezasteri
et tu tapes
./install
et ça marche obligatoirement plus que les 3 fichiers qu'il ne trouve pas sont dans ce même dossier.
edit : bon sinon je m'occupe du fichier de config si tu veux. j'ai déjà commencé l'ébauche. Et je vais voir pour rendre "configurable" en même temps le classement que le script effectue et le nom qu'aura le fichier...
Dernière modification par syubuntu (Le 17/01/2009, à 16:20)
Arch[gnu/]linuxiens
Hors ligne
#155 Le 17/01/2009, à 16:27
- rom_185
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Merci, la copie des fichiers à bien marché. Mais toujours impossible de le lancer...
BOINC, ou les grandes énigmes de la science résolues en 2 temps 3 calculs :D
"I reject your reality and substitue my own" – Adam Savage
Hors ligne
#156 Le 17/01/2009, à 16:31
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
@rom185
quand tu tape deezaster dans un terminal il en resort quoi comme erreur
@syubuntu
ok no probleme moi me penche sur les bug
Mes script : T1000tag~Série pour conky
Hors ligne
#157 Le 17/01/2009, à 16:58
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
oki.
L'interface graphique je ne la maitrise pas vraiment donc faudra rajouter un bouton configuration sur la première fenêtre qui s'ouvre pour refaire la configuration.ce bouton appelle soit une fonction soit un autre script comme tu préfères (ou sais faire).Le plus propre serais une fonction configuration seulement gtkdialog me fait une erreur dans ce cas la(il ne connait pas configuration).donc si tu sais comment faire ben je t'en pris (tu n'as qu'a faire une fonction configuration qui fait juste un echo "en dev" et donc le fameux bouton vers cet fonction et on rajoutera ce que j'ai fait.ou alors je finis je te passe et tu vois comme tu l'intègres...).
edit : faudra que tu rajoutes
else
exit 0
un peu partout avec avant le exit 0 un nettoyage si il y a besoin selon les endroits.ça permet de sortir complètement du programme si on appuie sur le bouton de sortie du cadre de la fenêtre fenêtre
Dernière modification par syubuntu (Le 17/01/2009, à 17:13)
Arch[gnu/]linuxiens
Hors ligne
#158 Le 17/01/2009, à 19:16
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
j'ai pas compris comment ça marche avec musicbrainz :
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
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 ta...
si verif est égal à PUID ce n'est pas justement que les tags sont trouvé?
Arch[gnu/]linuxiens
Hors ligne
#159 Le 17/01/2009, à 22:09
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
oui car en faite c'est super simple:
1 je genere un PUID
2 je télécharge les source de la page html Music brainz
3 je sélectionne une ligne particuliere pour le test et si dans cette ligne des source il y a ke le mots PUID c'est qu'il na pas trouver car si trouvai il n'y aurais pas sa
envoi moi ce que tu as fait pour la config et je l'integrerais mais je ne sortirais la 1.8 ebuger et améliorer que quand j'aurais des image corect et un nouveau comme dit précedament pour respect l'acord réaliser avec les moderateur du forum jeudi
Edit : tu as juste a regarder separement la page de musicbrainz et la ligne de $verif dans un term
Edit 2 : xterm evite le bug de lltag je lit la doc pour que sa sois plus jolie
Dernière modification par re06011988 (Le 18/01/2009, à 00:00)
Mes script : T1000tag~Série pour conky
Hors ligne
#160 Le 18/01/2009, à 00:06
- rom_185
Re : [Aide] Script qui télécharge convertie tag et range les mp3
@rom185
quand tu tape deezaster dans un terminal il en resort quoi comme erreur
Voila ce qu'il dit :
romain@ubuntu:~$ deezaster
/usr/bin/deezaster: 88: gtkdialog: not found
/usr/bin/deezaster: 188: gtkdialog: not found
BOINC, ou les grandes énigmes de la science résolues en 2 temps 3 calculs :D
"I reject your reality and substitue my own" – Adam Savage
Hors ligne
#161 Le 18/01/2009, à 00:22
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
pour l'erreur c'est que la fin de l'install n'a pas été faite à cause de l'erreur
fait
sudo apt-get install -y ffmpeg mplayer lltag mp3info eyed3 gtkdialog
j'ai pas fini j'étais partit dans une mise en fonction
#! /bin/bash
key=3839dbda127e29ccd213da2be833b756
configuration(){
export MAIN_DIALOG='
<vbox>
<frame répertoire>
<hbox>
<vbox>
<entry accept="directory">
<label>Selectionner un repertoire</label>
<variable>FILE_DIRECTORY</variable>
</entry>
<button>
<input file stock="gtk-open"></input>
<variable>FILE_BROWSE_DIRECTORY</variable>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</vbox>
<vbox>
<combobox>
<variable>rang1</variable>
<item>Artiste</item>
<item>Genre</item>
<item>Album</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang2</variable>
<item>Album</item>
<item>Genre</item>
<item>Artiste</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang3</variable>
<item></item>
<item>Genre</item>
<item>Album</item>
<item>Artiste</item>
</combobox>
</vbox>
</hbox>
</frame>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
'
VARIABLES=`gtkdialog --program MAIN_DIALOG`
eval $VARIABLES
if [ "$EXIT" = "OK" ] ; then
if [ -d "$FILE_DIRECTORY" ] ; then
echo "chemin">~/.deezaster/config
echo "$FILE_DIRECTORY">>~/.deezaster/config
echo -e "$rang1\n$rang2\n$rang3" >>~/.deezaster/config
else
configuration
exit 0
fi
elif [ "$EXIT" = "cancel" ] ; then
exit 0
else
exit 0
fi
}
tagman(){
###### 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>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&/')
malbum=$(echo "$malbum" | sed 's/^./\u&/')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" ~/MP3/conv/conv.mp3
}
tagcddb(){
###### 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
gnome-terminal -x lltag --cddb-query "$cddb" ~/MP3/conv/conv.mp3
use_lltag="1"
}
recherche(){
export MAIN_DIALOG='
<window icon-name="deezaster" title="Deezaster" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/deezasterfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Deezer</item>
<item>Imeem</item>
<item>Les 2</item>
<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 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
if [ "$EXIT" = "OK" ]; then
{
if [ "$search" = "Deezer" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
}
elif [ "$search" = "Imeem" ]; then
{
##Recherche à effectuer sur imeem
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Les 2" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Fichier déjà en cours de chargement" ]; then
{
continue 2>/dev/null &
}
else
exit 0
fi
}
# Quitte
elif [ "$EXIT" = "Cancel" ]; then
{
boulet="Merci d'avoir lancer deezaster 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 deezaster!"
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
deezaster
exit 0
}
else exit 0
fi
}
existence(){
if [ -e "$file" ]; then
{
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
)
export MAIN_DIALOG='
<window title="Téléchargement terminé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Téléchargement terminé! La Conversion audio va débuter</label>
</text>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson, une fenêtre apparaitra une fois la tache éxecutée</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### 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
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
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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)
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1)
##### Affichage des Tags trouvés
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 conformes ?>
<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>mbgenre</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 "$mbgenre" -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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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 Tags (ID3 v2.4) terminée !</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%t" /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.*//')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/.mp3.*//')
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/.*=//')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//')
}
fi
### Création des dossiers /artist/album
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/
### Déplacement du mp3 dans le dossier /$artist/$album
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$dossier"'/'"$ARTIST"'/'"$ALBUM"'/'"$TITRE"'.mp3</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>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$dossier"'/'"$ARTIST"'/'"$ALBUM"'/'"$TITRE"'.mp3</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
debut(){ ###fonction sans problème qui appelle existence
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 Deezaster</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/
if [ "$EXIT" = "OK" ]; then
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
existence
else exit 0
fi
}
if [ -r ~/.deezaster/config ]; then
dossier=$(cat ~/.deezaster/config)
else
configuration
fi
recherche
debut
j'ai pas fait encore tout ce que je pensais.le fichier de config généré n'est pas le bon, pas encore eu le temps de changer
Dernière modification par syubuntu (Le 18/01/2009, à 00:49)
Arch[gnu/]linuxiens
Hors ligne
#162 Le 18/01/2009, à 00:36
- MCMic
Re : [Aide] Script qui télécharge convertie tag et range les mp3
j'ai un problème, avec une chanson dont le nom pris dans cddb contient un "-", il se transforme en slash mystérieusement et ça fait foirer le mv :
mv: ne peut déplacer `/tmp/conv/Varioussupr1Albumsupr2ti - tre.mp3' vers `/home/mcmic/Musique/Various/Album/ti / tre.mp3': Aucun fichier ou dossier de ce type
Tu saurais pourquoi? (moi je comprends rien aux lignes pleines de "sed" ...
Hors ligne
#163 Le 18/01/2009, à 00:46
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
a non le sed je ne peux pas t'aider. dsl. ça fait 2h que j'essaye de m'en servir et c'est un peu spécial...
Dernière modification par syubuntu (Le 18/01/2009, à 01:07)
Arch[gnu/]linuxiens
Hors ligne
#164 Le 18/01/2009, à 01:44
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
@Rom
Il te manque le paquet gtkdialog c'est ce qui cré la version grafique de la bête
@MCMIc
j'ai pas souvenir d'utuliser sed pour modifier un - en /
@syubuntu
Sed est un outil trés puissant qui couplet avec grep de simplifie la vie pour traiter des fichier ou des string il est bcp utiliser dans mon script
en gros la syntaxe c'est:
sed -e 's/Ce_que_tu_remplace/Par_quoi_tu_le_remplace/Comportement (g = redondance)'
sinon j'ai prix en compte vaux demande et bug et j'ai fait sa je ne mets pas en ligne cette version pour les motif cité plus haut
mais bon un screen du prog en train de tourné
Mes script : T1000tag~Série pour conky
Hors ligne
#165 Le 18/01/2009, à 02:16
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
lol même un message pour moi:D. j'y suis presque.
ça me parait très bien tous cela
et il y la petite barre de chargement ça c'est cool.
voila pour le début(l'endroit ou se sera stocké et le classement)
maintenant je voudrai rajouter pour le nom du fichier pour pouvoir choisir ça :
artiste - titre.mp3
track - titre.mp3
track.artiste.mp3
....
#! /bin/bash
key=3839dbda127e29ccd213da2be833b756
configuration(){
export MAIN_DIALOG='
<vbox>
<frame répertoire>
<hbox>
<vbox>
<entry accept="directory">
<label>Selectionner un repertoire</label>
<variable>FILE_DIRECTORY</variable>
</entry>
<button>
<input file stock="gtk-open"></input>
<variable>FILE_BROWSE_DIRECTORY</variable>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</vbox>
<vbox>
<combobox>
<variable>rang1</variable>
<item>Artiste</item>
<item>Genre</item>
<item>Album</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang2</variable>
<item>Album</item>
<item>Genre</item>
<item>Artiste</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang3</variable>
<item></item>
<item>Genre</item>
<item>Album</item>
<item>Artiste</item>
</combobox>
</vbox>
</hbox>
</frame>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
'
VARIABLES=`gtkdialog --program MAIN_DIALOG`
eval $VARIABLES
if [ "$EXIT" = "OK" ] ; then
if [ -d "$FILE_DIRECTORY" ] ; then
echo "chemin">~/.deezaster/config
echo "$FILE_DIRECTORY">>~/.deezaster/config
echo -e "rang1\n$rang1\nrang2\n$rang2\nrang3\n$rang3" >>~/.deezaster/config
else
configuration
exit 0
fi
elif [ "$EXIT" = "cancel" ] ; then
exit 0
else
exit 0
fi
}
tagman(){
###### 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>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&/')
malbum=$(echo "$malbum" | sed 's/^./\u&/')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" ~/MP3/conv/conv.mp3
}
tagcddb(){
###### 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
gnome-terminal -x lltag --cddb-query "$cddb" ~/MP3/conv/conv.mp3
use_lltag="1"
}
recherche(){
export MAIN_DIALOG='
<window icon-name="deezaster" title="Deezaster" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/deezasterfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Deezer</item>
<item>Imeem</item>
<item>Les 2</item>
<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 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
if [ "$EXIT" = "OK" ]; then
{
if [ "$search" = "Deezer" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
}
elif [ "$search" = "Imeem" ]; then
{
##Recherche à effectuer sur imeem
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Les 2" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Fichier déjà en cours de chargement" ]; then
{
continue 2>/dev/null &
}
else
exit 0
fi
}
# Quitte
elif [ "$EXIT" = "Cancel" ]; then
{
boulet="Merci d'avoir lancer deezaster 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 deezaster!"
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
deezaster
exit 0
}
else exit 0
fi
}
existence(){
if [ -e "$file" ]; then
{
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
)
export MAIN_DIALOG='
<window title="Téléchargement terminé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Téléchargement terminé! La Conversion audio va débuter</label>
</text>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson, une fenêtre apparaitra une fois la tache éxecutée</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### 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
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
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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)
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1)
##### Affichage des Tags trouvés
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 conformes ?>
<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>mbgenre</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 "$mbgenre" -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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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 Tags (ID3 v2.4) terminée !</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%t" /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.*//')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/.mp3.*//')
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/.*=//')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//')
}
fi
### Création des dossiers /artist/album
if [ "rang2" = ""]; then
rang2=$rang3
rang3=""
fi
if [ "rang3" = ""]; then
rang1=$rang2
rang2=$rang3
rang3=""
fi
if [ "rang1" = "Artiste"]; then
if [ "rang2" = "Artiste"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Album"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Genre"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "rang1" = "Album"]; then
if [ "rang2" = "Artiste"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"//"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Album"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Genre"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "rang1" = "Genre"]; then
if [ "rang2" = "Artiste"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Album"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "rang2" = "Genre"]; then
if [ "rang3" = "Artiste"]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "rang3" = "Album"]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "rang3" = "Genre"]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
fi
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$rang1"'/'"$rang2"'/'"$rang3"'/'"$TITRE"'.mp3</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>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$dossier"'/'"$ARTIST"'/'"$ALBUM"'/'"$TITRE"'.mp3</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
debut(){
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 Deezaster</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/
if [ "$EXIT" = "OK" ]; then
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
existence
else exit 0
fi
}
if [ -r ~/.deezaster/config ]; then
dossier=$(cat ~/.deezaster/config | sed '/chemin/ {n}')
rang1=$(cat ~/.deezaster/config | sed '/rang1/ {n}')
rang2=$(cat ~/.deezaster/config | sed '/rang2/ {n}')
rang3=$(cat ~/.deezaster/config | sed '/rang3/ {n}')
else
configuration
fi
recherche
debut
Dernière modification par syubuntu (Le 18/01/2009, à 02:19)
Arch[gnu/]linuxiens
Hors ligne
#166 Le 18/01/2009, à 02:29
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
y a du boulots lol
Mes script : T1000tag~Série pour conky
Hors ligne
#167 Le 18/01/2009, à 02:31
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
ça va peut être t'embêter j'ai fait plusieurs fonction je m'y retrouve mieux.
mais les parties à prendre sont juste la fonction configuration et une partie à la fin (pas superbe comme codage mais je n'ai pas eu d'autre idée sur le coup, faut voir si c'est ameliorable) .
pour le nom de chanson je te laisse voir combien de possibilité on peut laisser.pour l'instant je penser à une profondeur de 2 avec un choix entre nom du chanteur, titre de la chanson, et numero de la chanson, avec " - "entre les 2 rangs :
numero - titre.mp3
nom - titre.mp3
titre - numero.mp3
numero - nom.mp3
...
et je n'ai pas verifier mon code d'avant pour l'instant ça ne marche pas.mais ça doit pas etre mechant je regarde
Dernière modification par syubuntu (Le 18/01/2009, à 02:33)
Arch[gnu/]linuxiens
Hors ligne
#168 Le 18/01/2009, à 02:42
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
voila deja mieux
#! /bin/bash
key=3839dbda127e29ccd213da2be833b756
configuration(){
export MAIN_DIALOG='
<vbox>
<frame répertoire>
<hbox>
<vbox>
<entry accept="directory">
<label>Selectionner un repertoire</label>
<variable>FILE_DIRECTORY</variable>
</entry>
<button>
<input file stock="gtk-open"></input>
<variable>FILE_BROWSE_DIRECTORY</variable>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</vbox>
<vbox>
<combobox>
<variable>rang1</variable>
<item>Artiste</item>
<item>Genre</item>
<item>Album</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang2</variable>
<item>Album</item>
<item>Genre</item>
<item>Artiste</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang3</variable>
<item></item>
<item>Genre</item>
<item>Album</item>
<item>Artiste</item>
</combobox>
</vbox>
</hbox>
</frame>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
'
VARIABLES=`gtkdialog --program MAIN_DIALOG`
eval $VARIABLES
if [ "$EXIT" = "OK" ] ; then
if [ -d "$FILE_DIRECTORY" ] ; then
echo "chemin">~/.deezaster/config
echo "$FILE_DIRECTORY">>~/.deezaster/config
echo -e "rang1\n$rang1\nrang2\n$rang2\nrang3\n$rang3" >>~/.deezaster/config
else
configuration
exit 0
fi
elif [ "$EXIT" = "cancel" ] ; then
exit 0
else
exit 0
fi
}
tagman(){
###### 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>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&/')
malbum=$(echo "$malbum" | sed 's/^./\u&/')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" ~/MP3/conv/conv.mp3
}
tagcddb(){
###### 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
gnome-terminal -x lltag --cddb-query "$cddb" ~/MP3/conv/conv.mp3
use_lltag="1"
}
recherche(){
export MAIN_DIALOG='
<window icon-name="deezaster" title="Deezaster" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/deezasterfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Deezer</item>
<item>Imeem</item>
<item>Les 2</item>
<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 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
if [ "$EXIT" = "OK" ]; then
{
if [ "$search" = "Deezer" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
}
elif [ "$search" = "Imeem" ]; then
{
##Recherche à effectuer sur imeem
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Les 2" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Fichier déjà en cours de chargement" ]; then
{
continue 2>/dev/null &
}
else
exit 0
fi
}
# Quitte
elif [ "$EXIT" = "Cancel" ]; then
{
boulet="Merci d'avoir lancer deezaster 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 deezaster!"
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
deezaster
exit 0
}
else exit 0
fi
}
existence(){
if [ -e "$file" ]; then
{
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
)
export MAIN_DIALOG='
<window title="Téléchargement terminé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Téléchargement terminé! La Conversion audio va débuter</label>
</text>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson, une fenêtre apparaitra une fois la tache éxecutée</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### 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
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
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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)
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1)
##### Affichage des Tags trouvés
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 conformes ?>
<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>mbgenre</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 "$mbgenre" -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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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 Tags (ID3 v2.4) terminée !</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%t" /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.*//')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/.mp3.*//')
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/.*=//')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//')
}
fi
### Création des dossiers /artist/album
if [ "$rang2" = ""]; then
rang2=$rang3
rang3=$( echo "")
fi
if [ "$rang3" = ""]; then
rang1=$rang2
rang2=$rang3
rang3=$( echo "")
fi
if [ "$rang1" = "Artiste" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "$rang1" = "Album" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"//"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "$rang1" = "Genre" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
fi
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$rang1"'/'"$rang2"'/'"$rang3"'/'"$TITRE"'.mp3</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>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$dossier"'/'"$ARTIST"'/'"$ALBUM"'/'"$TITRE"'.mp3</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
debut(){
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 Deezaster</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/
if [ "$EXIT" = "OK" ]; then
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
existence
else exit 0
fi
}
if [ -r ~/.deezaster/config ]; then
dossier=$(cat ~/.deezaster/config | sed '/chemin/ {n}')
rang1=$(cat ~/.deezaster/config | sed '/rang1/ {n}')
rang2=$(cat ~/.deezaster/config | sed '/rang2/ {n}')
rang3=$(cat ~/.deezaster/config | sed '/rang3/ {n}')
else
configuration
fi
recherche
debut
Arch[gnu/]linuxiens
Hors ligne
#169 Le 18/01/2009, à 02:45
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
pour ton option de renamage de titre en l'appelant comme tu dit c'est simple a mettre en place
suffit que dans le fichier de conf tu mette name = 1, 2, 3, 4...
et moi avec un if $option_name = 1 -> numero - titre.mp3
etc ...c pas compliquer et dans la fenetre de conf on fait une fenetre avec des bouton radio retournant 1 2 3 4... puis definir le dossier de destination
Mes script : T1000tag~Série pour conky
Hors ligne
#170 Le 18/01/2009, à 02:52
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
j'ai pas compris trop.
le numero doit être en fonction de celui donné par musicbrainz("d'ailleurs ce truc la manque dans le mode manuel)
pour le sed :
dossier=$(cat ~/.deezaster/config | sed '/chemin/ {n}')
me prend la ligne qu'il y a apres la ligne ou il y a ecrit chemin mais moi je veux seulement cette ligne et il me me tt le reste du fichier lui.
edit c'est bon c'est moi qui fatigue
re edit finalement ce n'est pas bon
Dernière modification par syubuntu (Le 18/01/2009, à 02:57)
Arch[gnu/]linuxiens
Hors ligne
#171 Le 18/01/2009, à 02:58
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Bonsoir @ Tous
Cela avance à grand pas, très intéressent de suivre le développement du petit DySasteur.
@re06011988 : Dommage de conserver emprisonné dans ton disque dur ton taf, mais la liberté est l'un des dernier luxe qu'il nous reste
Tu devrais virer les liens firefox dans le code ainsi que les WebSites avec copyright dans le menu déroulant et reellement si besoin permettre aux utilisateurs de les saisir manuellement
Encore bravo pour la gestion des Tags
Dernière modification par l e . n o x (Le 18/01/2009, à 03:00)
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
#172 Le 18/01/2009, à 03:02
- re06011988
Re : [Aide] Script qui télécharge convertie tag et range les mp3
faut lui dire de virer le reste apres ou de selection que la ligne avec un variable propre genre si tu as un fichier qui resemble a sa :
Chemin=/home/MP3/repertoirx
rang=1
tu peut tapper sa :
cat ~/.deezaster | grep "Chemin" | sed -e 's/Chemin=//'
sa affichera la ligne chemin=... mais sed va remplacer chemin= par rien donc sa affichera seulement /home/MP3/repertoirx
Sinon je pense que tes if seront utile même si moi je ne mets pas tout dans des fonction pour garder un code aligner et a mes repere (qui ne sont pas au gout de tout le monde mais bon g toujour prog comme sa et sa mets rester lol)
voila mais avens te faire tous sa il me faut un nom qui déchire avec un logo que je puisse faire partager le nouveau script le plus vite possible
@l e . n o x :
je sais c'est bête mais je tien a respecté les regle du forum pour que moi et comme eux nous ayons des probleme en nous fesant traiter de warez alors que le but premier de ce logiciel n'est pas le cas
Donc je cherche un news name avec un jeux de mots débile et une image qui tue apres reste le fichier de conf a inseré et puis voila
mais sa attendrat demain la vais au pieu les ubunteros morphé m'appelle dans ces bras et ma copine va encore geuler que g passer la nuit sur le pc
(Ps : sa aurait pus avancer plus vite deezaster si elle avait pas casser sa partoche cette aprem et que son merveilleu cherie (moi lol) ne vien a sa rescousse pour essayer de recuperer des donner d'une partoche bousillié )
Dernière modification par re06011988 (Le 18/01/2009, à 03:10)
Mes script : T1000tag~Série pour conky
Hors ligne
#173 Le 18/01/2009, à 03:19
- syubuntu
Re : [Aide] Script qui télécharge convertie tag et range les mp3
parfait.
pour le nom de fichier j'ai pas compris comme tu disais.
je sais pas si c'est interessant moi je sais que j'ai l'habitude de nommer ma musique
track - titre/mp3
#! /bin/bash
key=3839dbda127e29ccd213da2be833b756
configuration(){
export MAIN_DIALOG='
<vbox>
<frame répertoire>
<hbox>
<vbox>
<entry accept="directory">
<label>Selectionner un repertoire</label>
<variable>FILE_DIRECTORY</variable>
</entry>
<button>
<input file stock="gtk-open"></input>
<variable>FILE_BROWSE_DIRECTORY</variable>
<action type="fileselect">FILE_DIRECTORY</action>
</button>
</vbox>
<vbox>
<combobox>
<variable>rang1</variable>
<item>Artiste</item>
<item>Genre</item>
<item>Album</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang2</variable>
<item>Album</item>
<item>Genre</item>
<item>Artiste</item>
<item></item>
</combobox>
</vbox>
<vbox>
<combobox>
<variable>rang3</variable>
<item></item>
<item>Genre</item>
<item>Album</item>
<item>Artiste</item>
</combobox>
</vbox>
</hbox>
</frame>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
'
VARIABLES=`gtkdialog --program MAIN_DIALOG`
eval $VARIABLES
if [ "$EXIT" = "OK" ] ; then
if [ -d "$FILE_DIRECTORY" ] ; then
echo "chemin=$FILE_DIRECTORY">~/.deezaster/config
echo -e "rang1=$rang1\nrang2=$rang2\nrang3=$rang3" >>~/.deezaster/config
else
configuration
exit 0
fi
elif [ "$EXIT" = "cancel" ] ; then
exit 0
else
exit 0
fi
}
tagman(){
###### 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>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&/')
malbum=$(echo "$malbum" | sed 's/^./\u&/')
mgenre=$(echo "$mgenre" | sed 's/^./\u&/')
mtitre=$(echo "$mtitre" | sed 's/^./\u&/')
eyeD3 -a "$martiste" -A "$malbum" -t "$mtitre" -G "$mgenre" ~/MP3/conv/conv.mp3
}
tagcddb(){
###### 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
gnome-terminal -x lltag --cddb-query "$cddb" ~/MP3/conv/conv.mp3
use_lltag="1"
}
recherche(){
export MAIN_DIALOG='
<window icon-name="deezaster" title="Deezaster" resizable="false" window_position="1">
<vbox>
<hbox>
<pixmap>
<input file>/usr/share/pixmaps/deezasterfd.png</input>
</pixmap>
</hbox>
<hbox>
<frame Sur quel site effectuer une recherche?>
<hbox>
<combobox>
<variable>search</variable>
<item>Deezer</item>
<item>Imeem</item>
<item>Les 2</item>
<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 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
if [ "$EXIT" = "OK" ]; then
{
if [ "$search" = "Deezer" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
}
elif [ "$search" = "Imeem" ]; then
{
##Recherche à effectuer sur imeem
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Les 2" ]; then
{
#Conversion des espaces en url html et autres charactères spéciaux
mquery=$(echo $query | sed -e 's/ /%20/g' | sed -e 's/[éèêë]/e/g' | sed -e 's/à/a/g' | sed -e 's/[ôö]/o/g' | sed -e 's/ù/u/g' | sed -e 's/ç/c/g')
##Lancement de firefox
firefox http://www.deezer.com/#music/result/all/$mquery 2>/dev/null &
firefox http://www.imeem.com/tag/$mquery/music/ 2>/dev/null &
}
elif [ "$search" = "Fichier déjà en cours de chargement" ]; then
{
continue 2>/dev/null &
}
else
exit 0
fi
}
# Quitte
elif [ "$EXIT" = "Cancel" ]; then
{
boulet="Merci d'avoir lancer deezaster 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 deezaster!"
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
deezaster
exit 0
}
else exit 0
fi
}
existence(){
if [ -e "$file" ]; then
{
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
)
export MAIN_DIALOG='
<window title="Téléchargement terminé" icon-name="dialog-info" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Téléchargement terminé! La Conversion audio va débuter</label>
</text>
<text>
<label>Cette étape peut prendre plus ou moins de temps selon la durée de la chanson, une fenêtre apparaitra une fois la tache éxecutée</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
### 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
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
verif=$(cat /tmp/conv/.PUID | grep "This <" | sed -e 's/.*<strong>//' | sed -e 's/<\/strong>.*//')
if [ "$verif" = "PUID" ]; then
{
##### Tag non trouvé sur Musicbrainz©
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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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)
mbalbum=$(cat /tmp/conv/.PUID | grep "/release/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtitre=$(cat /tmp/conv/.PUID | grep "/track/" | sed -e 's/.*">//g' | sed -e 's/<\/a.*//' | sed -e "s/'/'/g" | head -n1)
mbtrack=$(cat /tmp/conv/.PUID | grep "no\">" | sed -e 's/.*">//g' | sed -e 's/<\/t.*//' | sed -e "s/'/'/g" | head -n1)
##### Affichage des Tags trouvés
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 conformes ?>
<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>mbgenre</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 "$mbgenre" -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
{
cddbtag
}
elif [ "$EXIT" = "Manuellement" ]; then
{
tagman
}
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 Tags (ID3 v2.4) terminée !</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%t" /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.*//')
ALBUM=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr1//' | sed -e 's/supr2.*//')
TITRE=$(ls -lt /tmp/conv/*.mp3 | head -n1 | sed -e 's/.*tmp\/conv\///' | sed -e 's/.*supr2//' | sed -e 's/.mp3.*//')
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/.*=//')
ALBUM=$(lltag -S /tmp/conv/"$MOVE" | grep "ALBUM" | sed -e 's/.*=//')
TITRE=$(lltag -S /tmp/conv/"$MOVE" | grep "TITLE" | sed -e 's/.*=//')
}
fi
### Création des dossiers /artist/album
if [ "$rang2" = ""]; then
rang2=$rang3
rang3=$( echo "")
fi
if [ "$rang3" = ""]; then
rang1=$rang2
rang2=$rang3
rang3=$( echo "")
fi
if [ "$rang1" = "Artiste" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ARTIST"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "$rang1" = "Album" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ARTIST"//"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ARTIST"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$ALBUM"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
elif [ "$rang1" = "Genre" ]; then
if [ "$rang2" = "Artiste" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ARTISTE"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ARTISTE"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Album" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ARTISTE"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$ALBUM"/"$GENRE"/"$TITRE".mp3
fi
elif [ "$rang2" = "Genre" ]; then
if [ "$rang3" = "Artiste" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ARTIST"/"$TITRE".mp3
elif [ "$rang3" = "Album" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$ALBUM"/"$TITRE".mp3
elif [ "$rang3" = "Genre" ]; then
mkdir -p "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/
mv /tmp/conv/"$MOVE" "$dossier"/"$GENRE"/"$GENRE"/"$GENRE"/"$TITRE".mp3
fi
fi
fi
export MAIN_DIALOG='
<window title="Programme terminé" icon-name="redo" resizable="false" window_position="1">
<vbox>
<frame Info :>
<text>
<label>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$rang1"'/'"$rang2"'/'"$rang3"'/'"$TITRE"'.mp3</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>Toutes les opérations ont été effectuées avec succès, la musique a été rangée dans :</label>
</text>
<text>
<label>'"$HOME"'/'"$dossier"'/'"$ARTIST"'/'"$ALBUM"'/'"$TITRE"'.mp3</label>
</text>
</frame>
<hbox>
<button ok></button>
</hbox>
</vbox>
</window>
'
gtkdialog --program=MAIN_DIALOG
}
fi
}
debut(){
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 Deezaster</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/
if [ "$EXIT" = "OK" ]; then
file=$(ls -lt /tmp/Flash* | cut -d " " -f8 | head -n1)
existence
else exit 0
fi
}
if [ -r ~/.deezaster/config ]; then
dossier=$(cat ~/.deezaster/config | grep "dossier" | sed -e 's/dossier=//')
echo "$dossier"
rang1=$(cat ~/.deezaster/config | grep "rang1" | sed -e 's/rang1=//')
echo "$rang1"
rang2=$(cat ~/.deezaster/config | grep "rang2" | sed -e 's/rang2=//')
rang3=$(cat ~/.deezaster/config | grep "rang3" | sed -e 's/rang3=//')
else
configuration
fi
recherche
debut
lol.
bonne nuit.
en theorie ça marche comme ça.
++
Dernière modification par syubuntu (Le 18/01/2009, à 03:21)
Arch[gnu/]linuxiens
Hors ligne
#174 Le 18/01/2009, à 03:28
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Dans la famille Terminator :
Cyberdyne
Skynet
T-800 = T8Cen
T1000 = TMile
T-XZeira Corp
endosquelette
le programme CRS
un acier "Titane-Tungstène" (Ti-W)
Cyberdyne SystemsTerminator T-800 Modèle 101
Terminator T-850 Modèle 101
Terminator T-888
Terminator T-1John Connor
Marcus Wright
Kate Connor
http://fr.wikipedia.org/wiki/Personnages_de_Terminator
Dernière modification par l e . n o x (Le 18/01/2009, à 04:02)
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
#175 Le 18/01/2009, à 06:04
- l e . n o x
Re : [Aide] Script qui télécharge convertie tag et range les mp3
Rebonjour,
Pour la partie install du script et plus particulièrement l'implémentation du lanceur dans Applications\son et vidéo, voici ce que je vous propose pour remplacer le fichier "deezaster.desktop" dans l'archive "deezasteri.tar.gz" :
# Prévu pour la version graphique
echo "\nCréation d'un raccourci dans le Menu Principal"
sudo cp deezaster.png /usr/share/pixmaps/deezaster.png
#Script origine => sudo cp deezaster.desktop /usr/share/applications/deezaster.desktop
# Modification--------------------------debut
echo "
[Desktop Entry]
Name=Deezaster
Name[fr]=Deezaster
Comment=Stream Music downloader and tagger automatically
Comment[fr]=Télécharge et tag automatiquement de la musique diffusée en streaming
Exec=deezaster
Icon=/usr/share/pixmaps/deezaster.png
Type=Application
Categories=AudioVideo;AudioVideoEditing;GTK;
MimeType=audio/x-mp3;application/ogg;x-directory/normal;
Encoding=UTF-8" | sudo tee /usr/share/applications/deezaster.desktop
# Modification--------------------------Fin
Bonne continuation
Dernière modification par l e . n o x (Le 18/01/2009, à 06:05)
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