Vous n'êtes pas identifié(e).
Pages : 1
Un petit partage de ma part
Pour que le script puisse fonctionner, vlc et cvlc doivent etre présent.
Enjoy.
#set -x
readonly args="$@"
radio(){
local pod=$args
local uri=
case $args in
'La premiere')
uri='http://lapremiere.ice.rtbf.be/lapremiere-128.mp3'
echo 'La premiere' > last-radio
;;
'Vivacite')
uri='http://vivacitebruxelles.ice.rtbf.be/vivabxl-128.mp3'
echo Vivacite > last-radio
;;
'Musiq3')
uri='http://musiq3.ice.rtbf.be/musiq3-128.mp3'
echo Musiq3 > last-radio
;;
'Classic21')
uri='http://classic21.ice.rtbf.be/classic21-128.mp3'
echo Classic21 > last-radio
;;
'Pure FM')
uri='http://purefm.ice.rtbf.be/purefm-128.mp3'
echo 'Pure FM' > last-radio
;;
*) if [[ -z last-radio && $(wc -l last-radio) -ne 0 ]]; then
uri=$(cat last-radio)
fi
;;
esac
cvlc --volume 120 $uri &
}
if [[ $(ps auxc | grep vlc | wc -l) -ge 1 ]]; then
sudo killall vlc
fi
radio
Synthaxe (en admettant que le script s'appelle radio.sh):
(La première) sh radio.sh "La premiere"
(Vivacité) sh radio.sh "Vivacite"
(Musiq3) sh radio.sh "Musiq3"
(Classic21) sh radio.sh "Classic21"
(Pure FM) sh radio.sh "Pure FM"
Il me reste un bug cependant à corriger, en effet lorsqu'une radio est déjà lancée, le kill du stream actuel ne se fait pas encore et ca a pour conséquence que les deux stream se chevauchent.
Hors ligne
il va très bien avec ce topic http://linuxtrack.net/viewtopic.php?id=1102 ou arpinux avait mis sa version de script radio également.
Utiliser des logiciels propriétaires, c'est comme les plats préparés, on est incapable de dire les conservateurs qu'ils contiennent, on dira toujours que c'est bon, mais ça ne remplacera jamais le repas fait maison par sa maman.
]:D #! Crunchbang & Archlinux GNU/Linux User ]:D
Hors ligne
Après la discussion de hier soir, j'ai modifié comme ceci
fichier de conf caché
suppression des pipe dans le test de process vlc
changement dans la vérification du fichier .last-radio
#!/bin/bash
#set -x
readonly args="$@"
hash cvlc || sudo apt-get install vlc-nox
radio(){
local pod=$args
local uri=
case $args in
'La premiere')
uri='http://lapremiere.ice.rtbf.be/lapremiere-128.mp3'
echo 'La premiere' > ~/.last-radio
;;
'Vivacite')
uri='http://vivacitebruxelles.ice.rtbf.be/vivabxl-128.mp3'
echo Vivacite > ~/.last-radio
;;
'Musiq3')
uri='http://musiq3.ice.rtbf.be/musiq3-128.mp3'
echo Musiq3 > ~/.last-radio
;;
'Classic21')
uri='http://classic21.ice.rtbf.be/classic21-128.mp3'
echo Classic21 > ~/.last-radio
;;
'Pure FM')
uri='http://purefm.ice.rtbf.be/purefm-128.mp3'
echo 'Pure FM' > ~/.last-radio
;;
*) if [[ -s ~/.last-radio ]]; then
uri=$(cat ~/.last-radio)
fi
;;
esac
cvlc --volume 120 $uri &
}
pidof vlc
if [ "$?" -eq "0" ]
then
killall vlc && radio
else
radio
fi
Utiliser des logiciels propriétaires, c'est comme les plats préparés, on est incapable de dire les conservateurs qu'ils contiennent, on dira toujours que c'est bon, mais ça ne remplacera jamais le repas fait maison par sa maman.
]:D #! Crunchbang & Archlinux GNU/Linux User ]:D
Hors ligne
faudrait dans ce style de script qui propose des install de soft de faire avant une détection d'os pour savoir si on prend : apt-get, dnf, yum, yaourt, pacman, etc... et ou un message d'erreur indiquant quel logiciel il manque.
exemple :
hash cvlc || sudo apt-get install vlc-nox || echo "please install cvlc"
Sachant qu'on rentre dans la merde que chaque distrib a un nom différent pour tel ou tel application . exemple sous fedora c'est vlc-core qui fournit cvlc.
vi est mon ami pour la vie
Ph'nglui nglw-nafh Cthulhu R'lyeh wgah-nagl fhtagn
Hors ligne
Pages : 1