Forum debian-fr.org

Rechercher:

* Connexion   * M’enregistrer

* FAQ    * Rechercher





Poster un nouveau sujet Répondre au sujet  [ 11 messages ] 
Auteur Message
MessagePosté: 03 Juin 2011 09:49 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
Salut à tous,
Je me retrouve avec un prob de débutant apparement.
En claire :
J'ai un fichier #!bin/bash qui ouvre mplayer avec zenity dont le contenu est ~ :
Code:
#!/bin/bash
[...]
mplayer -slave -input file=/tmp/music-control une_url
[...]

et j'ai un fichier #!bin/sh qui le referme
Code:
#!/bin/sh
[...]
echo 'quit' > /tmp/music-control
[...]

Quand je les exécutent dans 2 consoles différentes l'un après l'autre sa fonctionne impec, en revanche j'aimerais que le premier fichier appele le second :-?

J'ai testé qque chose comme :
Code:
exec>quiet-mplayer.sh

Dans plusieurs sens et avec plusieurs parammètres, mais nada :oops:

Quelqu'un une idée ?
...


Dernière édition par pascal_1212 le 06 Juin 2011 17:11, édité 1 fois.

Haut
 Profil  
 
MessagePosté: 03 Juin 2011 10:01 
Hors ligne
Contributeur
Avatar de l’utilisateur

Inscription: 18 Juil 2007 16:57
Messages: 8602
Tu devrait pouvoir le faire simplement avec son chemin :
Code:
./quiet-mplayer.sh

_________________
Je suis Pitta, cartésien, irritable, irritant et névrosé (de plus je fais de l'entrisme pour zsh), si l'un de mes messages vous insupporte essayez d'y voir de l'ironie ou de ne pas en tenir compte. Bonne journée et gardez le sourire. :)


Haut
 Profil  
 
MessagePosté: 03 Juin 2011 10:06 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
Hi MisterFreez
C'est la première chose que j'ai fait, ben nada !
J'ai controlé les logs histoir de voir si j'avais une erreur, ben re nada !
Une autre piste ?
...


Haut
 Profil  
 
MessagePosté: 03 Juin 2011 10:48 
Hors ligne
Très bavard(e)!
Avatar de l’utilisateur

Inscription: 02 Mai 2008 08:34
Messages: 401
Localisation: Pau
Et avec:

Code:
sh quiet-mplayer.sh


Ça donne quoi?

_________________
Debian Jessie - Autohébergé sur EeeBox B202

http://e-loquens.fr/


Haut
 Profil  
 
MessagePosté: 03 Juin 2011 21:51 
Hors ligne
Contributeur
Avatar de l’utilisateur

Inscription: 18 Juil 2007 16:57
Messages: 8602
pascal_1212 a écrit:
Hi MisterFreez
C'est la première chose que j'ai fait, ben nada !
J'ai controlé les logs histoir de voir si j'avais une erreur, ben re nada !
Une autre piste ?
...

Tu as mis le chemin (au moins relatif) vers l'autre script ?
Sinon il dis quoi avec #!/usr/bin/bash -x ?

_________________
Je suis Pitta, cartésien, irritable, irritant et névrosé (de plus je fais de l'entrisme pour zsh), si l'un de mes messages vous insupporte essayez d'y voir de l'ironie ou de ne pas en tenir compte. Bonne journée et gardez le sourire. :)


Haut
 Profil  
 
MessagePosté: 04 Juin 2011 09:22 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
MisterFreez,
Je connaissais pas le -x !
Voilà ce qui ce passe dans la console durant l'exécution et qui s'arrête:
Code:
+ fct_radio
++ zenity --width 320 --height 480 '--title=Les radios On-Line' '--text=Menu Radio' --list --radiolist --column=Choix --column=Radio TRUE RSR_1 FALSE Espace_2 FALSE Sortir
+ radio=RSR_1
+ case $radio in
+ echo 'message:Tu écoutes RSR la 1er'
+ zenity --notification --listen --window-icon=/home/pascal/icones/rsr_1.gif
+ fct_radio1
++ mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle
++ zenity --width 320 --height 240 --title=Changer/arreter '--text=Menu Radio' --list --radiolist --column=Choix --column=Actions TRUE Changer FALSE Quitter
Couldn't resolve name for AF_INET6: broadcast.infomaniak.ch
[pulse] working around probably broken pause functionality,
        see http://www.pulseaudio.org/ticket/440
+ radio1=Changer


Et quand je start le script externe :
Code:
+ MPlayer UNKNOWN-4.4.1 '(C)' 2000-2009 MPlayer Team Playing http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3. Resolving broadcast.infomaniak.ch for AF_INET6... Resolving broadcast.infomaniak.ch for AF_INET... Connecting to server 'broadcast.infomaniak.ch[84.16.67.133]:' 80... Name : RSR La $'Premi\350re' Genre : public radio Website: http://www.rsr.ch Public : yes Bitrate: 128kbit/s Cache size set to 320 KBytes $'\rCache' fill: 0.00% '(0' 'bytes)' ICY Info: 'StreamTitle='\''Zone' franche- Des sifflets pour 'l'\''arbitre'\'';' $'\rCache' fill: 17.50% '(57344' 'bytes)' Audio only file format detected. ========================================================================== Opening audio decoder: '[mp3lib]' MPEG layer-2, layer-3 AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% '(ratio:' '16000->176400)' Selected audio codec: '[mp3]' afm: mp3lib '(mp3lib' MPEG layer-2, 'layer-3)' ========================================================================== ICY Info: 'StreamTitle='\''Zone' franche- Des sifflets pour 'l'\''arbitre'\'';' AO: '[pulse]' 44100Hz 2ch s16le '(2' bytes per 'sample)' Video: no video Starting playback... A: 0.0 '(00.0)' of 0.0 '(unknown)' '??,' Exiting... '(Quit)' of 0.0 '(unknown)' 0.3% 40% '
./test_fichier.sh: line 27:
+ '[' '' == Changer ']'
+ '[' '' == Quitter ']'

Bizard cette ligne 27 : MPlayer : commande introuvable pourtant j'ai bien la radio en sortie sur les bafles...

Voilà le script en question :
Code:
#!/bin/bash -x
#find  /tmp/music-control
#echo $?
#echo "==========================="
#if [ "/tmp/music-control" ]
#then
#   echo "le fichier existe :)"
#else
#   echo "le fichier existe pas :("
#       mkfifo /tmp/music-control
#fi
# mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-espace2-high.mp3 -idle
function fct_radio()
{
        radio=`zenity --width 320 --height 480 --title="Les radios On-Line" --text="Menu Radio" --list --radiolist --column="Choix" --column="Radio" TRUE "RSR_1" FALSE "Espace_2"  FALSE "Sortir"`
}
function fct_radio1()
        {
                radio1=`zenity --width 320 --height 240 --title="Changer/arreter" --text="Menu Radio" --list --radiolist --column="Choix" --column="Actions" TRUE "Changer" FALSE "Quitter"`
        }

fct_radio

case $radio in  #case du menu radio
                        RSR_1)
                                echo message:"Tu écoutes RSR la 1er" | zenity --notification --listen --window-icon="/home/$USER/icones/rsr_1.gif" #info-bulle
                                fct_radio1 | `mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle`
                                        #ce qui suit (Changer/Quitter), j'aurai pu en faire une fonction :)
                                if [ "$radio1" == Changer ]     #si on veut changer de canal
                                then
                                        echo 'quit' > /tmp/music-control
                                        echo "cliqué sur changer!"
#                                       sh "quiet-mplayer.sh"
#                                       echo "./quiet-mplayer.sh"       #exec 6>&1
#                                       sh quiet-mplayer.sh
#                                       ./quiet-mplayer.sh
                                        fct_radio
                                fi
                                if [ "$radio1" == Quitter ] #si on veut revenir au menu principal
                                then
#                                        fct_input
                                        exit
                                fi
                                ;;
                        Sortir) #retour au menu principal
#                               fct_input
                                exit
                        ;;
esac


Le script d'arrêt :
Code:
#!/bin/bash
# Quitte mplayer
echo 'quit' > /tmp/music-control
exit 0


Vous noterez que j'ai testé plusieurs issus :-?

Je comprends pas si je lance la ligne :
Code:
mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle

dans une console et que je quitte en appelant ./quiet-mplayer.sh dans une autre y a aucune erreur..................

Une idée ?
...


Haut
 Profil  
 
MessagePosté: 04 Juin 2011 10:02 
Hors ligne
Contributeur
Avatar de l’utilisateur

Inscription: 18 Juil 2007 16:57
Messages: 8602
Code:
fct_radio1 | `mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle`

Enlève les `. Parce que sinon ça veut dire que tu exécute mplayer puis que tu tente d'évaluer sa sortie comme si c'était du code d'un script shell.

_________________
Je suis Pitta, cartésien, irritable, irritant et névrosé (de plus je fais de l'entrisme pour zsh), si l'un de mes messages vous insupporte essayez d'y voir de l'ironie ou de ne pas en tenir compte. Bonne journée et gardez le sourire. :)


Haut
 Profil  
 
MessagePosté: 04 Juin 2011 19:21 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
Ok MisterFreez,
Après le delete des (`) la console crie moins.
Voilà ma sortie console :
Citation:
+ fct_radio
++ zenity --width 320 --height 480 '--title=Les radios On-Line' '--text=Menu Radio' --list --radiolist --column=Choix --column=Radio TRUE RSR_1 FALSE Espace_2 FALSE Sortir
+ radio=RSR_1
+ case $radio in
+ echo 'message:Tu écoutes RSR la 1er'
+ zenity --notification --listen --window-icon=/home/pascal/icones/rsr_1.gif
+ fct_radio1
+ mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle
++ zenity --width 320 --height 240 --title=Changer/arreter '--text=Menu Radio' --list --radiolist --column=Choix --column=Actions TRUE Changer FALSE Quitter
MPlayer UNKNOWN-4.4.1 (C) 2000-2009 MPlayer Team

Playing http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3.
Resolving broadcast.infomaniak.ch for AF_INET6...
Couldn't resolve name for AF_INET6: broadcast.infomaniak.ch
Resolving broadcast.infomaniak.ch for AF_INET...
Connecting to server broadcast.infomaniak.ch[84.16.67.133]: 80...
Name : RSR-La Premiere
Public : yes
Bitrate: 128kbit/s
Cache size set to 320 KBytes
Cache fill: 0.00% (0 bytes)
ICY Info: StreamTitle='Sport Premi�re';
Cache fill: 15.00% (49152 bytes)
Audio only file format detected.
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
[pulse] working around probably broken pause functionality,
see http://www.pulseaudio.org/ticket/440
AO: [pulse] 44100Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
+ radio1=Changerof 0.0 (unknown) 0.3% 40%
^C 18.5 (18.4) of 0.0 (unknown) 0.3% 39%

MPlayer interrupted by signal 2 in module: enable_cache


MPlayer interrupted by signal 2 in module: play_audio
A: 18.7 (18.6) of 0.0 (unknown) 0.3% 38%
Exiting... (Quit)
+ '[' '' == Changer ']'
+ '[' '' == Quitter ']'
toto@mtata:~/zenity$ ^C

Note la ligne + radio1=Changer

On dirait que mon clique sur changer est interprété mais il s'arrête et ne lit plus le reste...
Code:
RSR_1)
echo message:"Tu écoutes RSR la 1er" | zenity --notification --listen --window-icon="/home/$USER/icones/rsr_1.gif" #info-bulle
                                fct_radio1 | mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle
                                if [ "$radio1" == Changer ]     #si on veut changer de canal
                                then
#                                        echo "-quit" > /tmp/music-control
                                        echo "cliqué sur changer!"
#                                       sh "quiet-mplayer.sh"
#                                       echo "./quiet-mplayer.sh"
                                        sh quiet-mplayer.sh
#                                       ./quiet-mplayer.sh
                                        fct_radio
                                fi
                                if [ "$radio1" == Quitter ] #si on veut revenir au menu principal
                                then
#                                        fct_input
                                        exit
                                fi
                                ;;

Note que dans la sortie console mon echo "cliqué sur changer!" reste muet :-?

J'avoue plus savoir :108
...


Haut
 Profil  
 
MessagePosté: 04 Juin 2011 21:45 
Hors ligne
Contributeur
Avatar de l’utilisateur

Inscription: 18 Juil 2007 16:57
Messages: 8602
radio1 n'est pas initialisé.

Pourquoi tu fais ça ?
Code:
fct_radio1 | mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle

_________________
Je suis Pitta, cartésien, irritable, irritant et névrosé (de plus je fais de l'entrisme pour zsh), si l'un de mes messages vous insupporte essayez d'y voir de l'ironie ou de ne pas en tenir compte. Bonne journée et gardez le sourire. :)


Haut
 Profil  
 
MessagePosté: 05 Juin 2011 17:17 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
Re MisterFreez,
Ben quand je veux changer d'url radio, me faut un focus sur un intérupteur. Le but étant d'utiliser une zapette.
Maintenant, je pourrait re afficher le menu radio.
Mais y a un truc qui m'échappe !
Si ma $case est :
Code:
RSR_1)
                                echo message:"Tu écoutes RSR la 1er" | zenity --notification --listen --window-icon="/home/$USER/icones/rsr_1.gif" #info-bulle
#                               fct_radio1 | mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle
                                fct_radio1
#                               mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle
                                if [ "$radio1" == "Changer" ]     #si on veut changer de canal
                                then
                                        echo "cliqué sur changer!"
                                        echo "-quit > /tmp/music-control"
#                                       ./quiet-mplayer.sh
                                        fct_radio
                                fi
                                if [ "$radio1" == Quitter ] #si on veut revenir au menu principal
                                then
                                        exit
                                fi
                                ;;

Note la ligne 3. Je devrais initialiser ma fonction et mplayer en même temps ?!? Visiblement c'est pas le cas !
Alors je tente de la décomposer ligne 4, là elle s'exécute jusqu'au bout.
Mais si j'intercale mplayer, là sa fonctionne plus :-?
J'ai essayé avec |, &&, même des trucs exotiques, nada.
WHY ? :oops:
...


Haut
 Profil  
 
MessagePosté: 06 Juin 2011 17:10 
Hors ligne
Grand posteur
Avatar de l’utilisateur

Inscription: 27 Jan 2007 10:34
Messages: 146
Re à tous,
Bon là je suis un boulet :116
C'est un simple & et non un | ou &&.
Code:
mplayer -slave -input file=/tmp/music-control http://broadcast.infomaniak.ch/rsr-la1ere-high.mp3 -idle & fct_radio1


Voilà, y pas plus c**
Dans tous les cas, merci à tous.


Haut
 Profil  
 
Afficher les messages postés depuis:  Trier par  
Poster un nouveau sujet Répondre au sujet  [ 11 messages ] 

Index du forum » Divers » Programmation


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


Vous ne pouvez pas poster de nouveaux sujets
Vous ne pouvez pas répondre aux sujets
Vous ne pouvez pas éditer vos messages
Vous ne pouvez pas supprimer vos messages
Vous ne pouvez pas joindre des fichiers

Aller à:  
Flux RSS Flux RSS Liste des flux Liste des flux
Powered by phpBB® Forum Software © phpBB Group
Traduction par: phpBB-fr.com
SEO
[ Time : 0.097s | 12 Queries | GZIP : Off ]