Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/10/2009, à 10:08

tuxmax

Script pour enregistrer les chaines de la neufbox ( sur Pc)

J' essaie de creer un script pour enregistrer les chianes de la neuf box sur Pc, mais j' ai des petits soucis.
J' ai des bugs et comme je ne suis pas un pro de la programmation, je vous demande d' y jetté un  oeil et de me donné votre avis ou les améliorations possibles .
Merci


#!/bin/bash
#script par TuxMax 
#Version 0.1
#Le 09/10/09


filename=`date +"%Y-%m-%d-%H-%M-%S"`
flux="http://80.118.196.219/webtv-asx.cgi?channel=$chaine"
#player= "vlc"

echo " #####enregistrement d' une chaine neufbox :#####"
echo -n " entrer le nom du dossier où enregistrer :"
read recordpath
echo "Vous allez enregistrer dans le dossier : $recordpath" 



function main ()
{
choix=`zenity --list --height=640 --title="Chaines a enregistrer" \
--column="ID"  --column="Flux" \
"01" "France 2" \
"02" "France 3" \
"03" "France 5" \
"04" "Arte" \
"05" "Direct 8" \
"06" "NT1" \
"07" "NRJ 12" \
"08" "Lcp" \
"09" "France 4" \
"10" "BFM TV" \
"11" "TV5 Monde" \
"12" "France O" \
"13" "Euronews" \
"14" "Aljazeera" \
"15" "Liberty Tv" \
"16" "Beur TV" \
"17" "NRJ Hits" \
"18" "Video Click" \
"19" "KTO" \
"20" "cliquer sur annuler pour arreter" \
`

if [ $? = 0 ]
then

killall vlc

case $choix in
01 ) chaine= "france_2" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
02 ) chaine= "france_3" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
03 ) chaine= "france_5" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
04 ) chaine= "arte" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
05 ) chaine= "direct_8" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
06 ) chaine= "nt1" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
07 ) chaine= "nrj12" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
08 ) chaine= "lcp" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
09 ) chaine= "france_4"| screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
10 ) chaine= "bfm_tv" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
11 ) chaine= "tv5_monde" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
12 ) chaine= "france_o" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
13 ) chaine= "euronews" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
14 ) chaine= "aljazeera" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
15 ) chaine= "liberty_tv"| screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
16 ) chaine= "beur_tv" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
17 ) chaine= "nrj_hits" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
18 ) chaine= "video_click" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
19 ) chaine= "kto" | screen -d -m vlc -vvv "$flux" --sout '#standard{access=file,mux=ps,dst="'"$recordpath"'/'"$filename"'.mpg"}' -Idummy & ;;
esac

else

killall vlc

exit 0
fi
}


while :
do main
done

pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#2 Le 09/10/2009, à 13:04

AnsuzPeorth

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

Bjr,
http://forum.ubuntu-fr.org/viewtopic.php?pid=2919358#p2919358


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#3 Le 09/10/2009, à 13:36

tuxmax

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

merci de ta reponse


pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#4 Le 09/10/2009, à 16:17

AnsuzPeorth

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

tuxmax a écrit :

merci de ta reponse

Je me trompe peut être, mais je sens comme une pointe d'agacement dans ton intervention ?

Je t'envoyais vers ce post pour que tu y récupères l'archives et que tu y prenne ce qui t'intéresse !

Si tu veux des idées d'amélioration :
- Récupérer le m3u sur le net
- zenity --notification pour arrêter l'enregistrement par exemple (et tu auras un repère visuelle d'un rec en cours)
- Pour le choix de la destination de l'enregistrement, pourquoi pas une boite de dialogue zenity (zenity --file-selection)

Pour le fonctionnement :
-Pour la liste zenity , apres recup du m3u,le modifier avant l'envois dans zenity, genre: (attention aux espaces wink)

chaine add_flux

en sortie, tu récupère l'adresse du flux uniquement pour le donner à vlc (cela évitera le case).
-Pour l'arret de l'enregistrement, un killall vlc n'est pas top. Mes essais de l'époque me donné des fichiers illisibles, c'est pour ça que j'utilise l'interface http pour arrêter "proprement"  vlc (plus d'erreurs)
-Pour info, l'encodage en mpg ne fonctionne pas chez moi, donc chez d'autres sûrement également !

Et pour finir, regarde du coté de gtkdialog plutôt que zenity, tu pourras faire de plus jolies interfaces !


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#5 Le 09/10/2009, à 16:24

tuxmax

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

non aucun agacement et j' ai fais ce que tu dis , j' etudie ton script. De plus, c' est sympa de m' expliquer. Je vais etudie gtkdialog;
Pour le killall , je lis le fichier avec gnome-mplayer et ca marche nickel . ( sauf le son decallé , mais ca, ca doit etre l' enregistrement) .


pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#6 Le 13/10/2009, à 18:15

tuxmax

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

nouveau probleme :

je suis passé sous gtk dialog et je cherche a savoir comment faire pour ouvrir une autre fenetre pour choisir le dossier ou enregistrer, en cliquant sur un  bouton .


pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#7 Le 13/10/2009, à 22:58

AnsuzPeorth

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

Bsr,
regarde les exemples de la doc

/usr/share/doc/gtkdialog/examples

Sur ce forum, tu trouveras également pas mal matière wink


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#8 Le 14/10/2009, à 14:15

tuxmax

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

c' est bon j' ai trouve le site que je chercher ! Par contre je ne comprends pas bien comment tu fais pour extraire la liste de chaines et recuperer les adresses .

tree exported_column="1">
<height>300</height><width>130</width>
	<variable>TREE</variable>
	<label>Chaines|flux</label>
	<action signal="cursor_changed">refresh:RENOM</action>
	<input>cat "$PATH_SCRIPT/addstream.txt"</input>
	<action>wget "http://localhost:8080/requests/status.xml?command=pl_empty" -O /dev/null</action>
	<action>wget "http://localhost:8080/requests/status.xml?command=in_play&input=$TREE" -O /dev/null</action>
  </tree>

pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#9 Le 14/10/2009, à 14:22

AnsuzPeorth

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

Bjr,
Il faut récuperer avant le lancement du gui, mettre le resultat dans un fichier, et le donner à manger au tree de gtkdialog.


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#10 Le 14/10/2009, à 14:32

tuxmax

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

c' est le code qu'il y a en debut de ton script alors ?


pc: amd64X2 / 10.10 |portable: hercules eCAFE ec800/ karmic koala
      asrock aliveNF6G-DVI   |             amd geode lx800
      DDR2 2048/800Mhz      |             512 mo
      DD serial ata2 250 Go   |             20 go

Hors ligne

#11 Le 14/10/2009, à 14:39

AnsuzPeorth

Re : Script pour enregistrer les chaines de la neufbox ( sur Pc)

[ ! -e ./addstream.txt ] && curl http://televisionsurpc.neuf.fr/televisionsurpc.m3u | sed '1d' | sed 'N;s/\r\n/|/g' | cut -d "," -f2 > addstream.txt

Je verifie si le fichier addstream.txt existe, si non, je le telecharge, supprime la premiere ligne, joint les ligne 2 à 2 et remplace les retour chariot  et passages à la ligne par un | pour gtkdialog.


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne