Avec vlc plutôt que mpv, de gros doutes sur l'utilisation de dmenu, et à l'arrache
#!/usr/bin/env nodeif(process.argv.length<3){varpath=require('path')console.error('Usage: %s %s [nom_radio|num_radio]',path.basename(process.argv[0]),path.relative(".",process.argv[1]));process.exit(1)}varradios={wwoz:"http://wwoz-sc.streamguys.com/wwoz-hi.mp3.m3u",fip:"http://audio.scdn.arkena.com/11016/fip-midfi128.mp3",classique:"http://players.creacast.com/creacast/classique/playlist.pls",inter:"http://www.listenlive.eu/franceinter128.m3u",nostalgie:"http://www.listenlive.eu/nostalgie_fr.m3u",larzac:"http://www.radiolarzac.org:8000/radiolarzac.m3u",}varargRadio=process.argv[2];if(argRadio.match(/^[0-9]+$/))argRadio=Object.keys(radios)[argRadio]if(!radios[argRadio]){console.error('Unknown radio %s\nChoose one of\n%s',process.argv[2],Object.keys(radios))process.exit(1)}varplayer='vlc'vardmenu=process.argv[3];if(!dmenu)returninvokePlayer(player,radios[argRadio])varchild=require('child_process').spawn('demnu',[],{stdio:'pipe'})Object.keys(radios).forEach(function(k,i){child.stdin.write(i+'\n')})varselected=null;child.stdout.on('data',function(d){selected=d.toString().replace(/^\s*|\s*$/,'')})child.on('close',function(){if(selected!==null)returninvokePlayer(player,radios[Object.keys(radios)[selected]])console.error('Oh no !...')})child.on('error',console.error.bind(console))functioninvokePlayer(player,url){varargs=[];(player.match(/mpv/)&&url.match(/[.](pls|m3u)$/))&&args.push('-playlist');args.push(url)varchild=require('child_process').spawn(player,args,{stdio:'inherit'})process.on('SIGINT',function(){child.kill('SIGINT')})}
Je ne suis pas certain de cette partie au sujet de dmenu
stname=$(for i in ${sta[@]};doecho$i;done| dmenu) // envoie les options à dmenu ? une par ligne ? bloque jusqu'à la fermeture de dmenu ? sauvegarde la réponse de dmenu dans stname ?
for((i=0; i<${#sta[@]}; i++))doif["$stname"="${sta[$i]}"]thenstream=${stau[$i]}fidone
# Avec votre langage préféré...
Posté par mh-cbon . En réponse au journal Écouter la radio. Évalué à -3.
... Ça donnerait quoi ?
Avec
vlcplutôt quempv, de gros doutes sur l'utilisation dedmenu, et à l'arracheJe ne suis pas certain de cette partie au sujet de dmenu