domenica 13 settembre 2009

Plugin per vedere i video di Youtube e Vimeo dentro Pidgin

Segnalo che poche ore fa è stato rilasciato un plugin molto carino per Pidgin che permette di visualizzare i video presenti su Youtube e Vimeo direttamente all'interno delle finestre di conversazione quando qualcuno linka un video caricato su una di queste due piattaforme, senza bisogno quindi di aprire appositamente un browser. La procedura di installazione è riportata (in inglese) molto chiaramente qui.

venerdì 11 settembre 2009

Script per vedere canali RAI senza Firefox

In rete si trovano diversi metodi per Linux che permettono di vedere i canali RAI senza bisogno di dover usare il browser (con conseguente enorme risparmio di memoria). Uno dei migliori (se non il migliore in circolazione) è lo script che si può trovare all'indirizzo http://www.slacky.eu/wikislack/index.php?title=Rai.tv_senza_silverlight. Ultimamente, però, ho problemi ad accedere al sito rai.tv e anche lo scaricamento dei canali effettuati dallo script è particolarmente lento (a volte non avviene proprio perché passano i 10 secondi di timeout impostati nello script. Una soluzione a questo problema è aumentare il timeout, per esempio portandolo a 20 o 30 secondi).

Per evitare di dover aspettare ogni volta diversi secondi per poter avere l'elenco dei canali, allora, ho rimesso mano a un vecchio script che scrissi diversi mesi fa, poco dopo che fu aperto il sito rai.tv, per poter scegliere i canali da vedere ed ecco il risultato (Attenzione: i canali Rai 1, Rai 2 e Rai 3 potrebbero non funzionare):
#!/bin/bash
#  Ultimo aggiornamento: 26/11/2010
#+ Per suggerimenti e consigli visita http://forum.ubuntu-it.org/index.php/topic,316995.0.html

function seleziona(){
    canale=`zenity --list --height=400 --width=300 --title="Televisione" --text="Quale canale vuoi vedere?" --column="Canale" \
    "=== TELEVISIONE ===" "Rai Uno" "Rai Due" "Rai Tre" "Rai 4" "Rai 5" "Rai News 24" "Rai Sport Più" "Rai Sport 2" \
    "Rai Edu1" "Rai Storia" "RaiSat Extra" "RaiSat Premium" "RaiSat Cinema" "RaiSat YoYo" "Rai gulp" "Rai Scuola" "Rai Med" \
    "EuroNews" "Sportitalia" "All Music" "RTL 102.5 (TV)" "NRK1" "NRK2" "NRK Rogaland" "Arcoiris TV" "Antena 1" \
    "France24 English" "etvsatellite" "CBL Channel" "[3]CHANNEL ONE" "SAT 2000" "Ultimo Tg1" "Ultimo Tg2" "Ultimo Tg3" "=== RADIO ===" \
    "Radio Uno" "Radio Due" "Radio Tre" "Isoradio" "RDS" "Radio 105" "RTL 102.5 (Radio)" "Radio Capital" "Radio Deejay" \
    "Radio24" "Controradio" "Radio Popolare" "Radio Onda Rossa" "Radio onda d'Urto" "Radio Città Aperta" "Radio Blackout" \
    "Radio Sherwood" "Virgin radio" "Virgin rock classico" "Virgin rock extreme" "Virgin rock alternative" "Virgin woodstock" \
    "Virgin revolver" "LifeGate Radio" "Radio Flash"`
}

function play_rai(){
    if [ ! -f ~/bin/rai.py ]; then
        if [ ! -d ~/bin ]; then
            mkdir ~/bin
        fi
        wget "http://elubuntu.altervista.org/rai.py" -O ~/bin/rai.py
        chmod +x ~/bin/rai.py
    fi
    ~/bin/rai.py "$1"
}

function play(){
    vlc "$1"
}
while true; do
    seleziona
    case $canale in
        "=== TELEVISIONE ===" | "=== RADIO ===" ) seleziona ;;
        "Rai Uno") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=180090 ;;
        "Rai Due") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=180116 ;;
        "Rai Tre") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=180117 ;;
        "Rai 4") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=75708 ;;
        "Rai 5") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=72382 ;;
        "Rai News 24") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=1 ;;
        "Rai Sport Più") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=4145 ;;
        "Rai Sport 2") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=179975 ;;
        "Rai Edu1") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=24268 ;;
        "Rai Storia") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=24269 ;;
        "RaiSat Extra") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=72382 ;;
        "RaiSat Premium") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=72916 ;;
        "RaiSat Cinema") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=72381 ;;
        "RaiSat YoYo") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=72918 ;;
        "Rai gulp") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=4119 ;;
        "Rai Scuola") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=24268 ;;
        "Rai Med") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=87127 ;;
        "EuroNews") play_rai http://mediapolis.rai.it/relinker/relinkerServlet.htm?cont=113784 ;;
        "Sportitalia") play mms://mms.cdn-tiscali.com/sportitalia ;;
        "All Music") play mms://live.mediaserver.kataweb.it/retea?MSWMExt=.asf ;;
        "RTL 102.5 (TV)") play mms://151.1.245.36/rtl102.5vs ;;
        "NRK1") play mms://mms-icanal-live.online.no/nrk_tv_webvid03_l ;;
        "NRK2") play mms://mms-icanal-live.online.no/nrk_tv_webvid05_h ;;
        "NRK Rogaland") play mms://straumV.nrk.no/nrk_tv_rogaland_247_mbr ;;
        "Arcoiris TV") play mms://193.41.7.40/vive-adsl ;;
        "Antena 1") play mms://81.196.2.232/pp1 ;;
        "France24 English") play mms://stream1.france24.yacast.net/f24_liveen ;;
        "etvsatellite") play mms://streaming.e-tv.it/etvsatellite ;;
        "CBL Channel") play mms://151.1.245.71/cblfilm-live ;;
        "[3]CHANNEL ONE") play mms://84.233.254.2/3Channel ;;
        "SAT 2000") play mms://89.119.94.130/Sat2000 ;;
        "Ultimo Tg1") play http://link.rai.it/x/vod/ue/wmx/ultimo_tg1.asx ;;
        "Ultimo Tg2") play http://link.rai.it/x/vod/ue/wmx/ultimo_tg2.asx ;;
        "Ultimo Tg3") play http://link.rai.it/x/vod/ue/wmx/ultimo_tg3.asx ;;
        "Radio Uno") play rtsp://live.media.rai.it/broadcast/radiouno.rm ;;
        "Radio Due") play rtsp://live.media.rai.it/broadcast/radiodue.rm ;;
        "Radio Tre") play rtsp://live.media.rai.it/broadcast/radiotre.rm ;;
        "Isoradio") play rtsp://live.media.rai.it/broadcast/isoradio.rm ;;
        "RDS") play mms://fastreal.fastweb.it/RDS ;;
        "Radio 105") play mms://151.1.245.6/1 ;;
        "RTL 102.5 (Radio)") play mms://151.1.245.36/rtl102.5hq/ ;;
        "Radio Capital") play mms://live.mediaserver.kataweb.it/capital?MSWMExt=.asf ;;
        "Radio Deejay") play mms://live.mediaserver.kataweb.it/radiodeejay?MSWMext=.asf ;;
        "Radio24") play mms://62.196.2.90/Radio24 ;;
        "Controradio") play http://streaming.controradio.emmi.it:8190/ ;;
        "Radio Popolare") play http://www.radiopopolare.it/liveU.asx ;;
        "Radio Onda Rossa") play http://radio.dyne.org:8000/ondarossa.mp3 ;;
        "Radio onda d'Urto") play http://www.radiondadurto.org:8000/listen.pls ;;
        "Radio Città Aperta") play mms://stream.greynetweb.it/rca?MSWMExt=.asf ;;
        "Radio Blackout") play http://stream.teknusi.org:8000/blackout.mp3 ;;
        "Radio Sherwood") play http://62.101.68.185:8000/sherwood.ogg ;;
        "Virgin radio") play mmsh://151.1.245.1/20?MSWMExt=.asf ;;
        "Virgin rock classico") play mms://151.1.245.1/24 ;;
        "Virgin rock extreme") play mms://151.1.245.1/25 ;;
        "Virgin rock alternative") play mms://151.1.245.1/36 ;;
        "Virgin woodstock") play mms://151.1.245.1/13 ;;
        "Virgin revolver") play mms://151.1.245.1/34 ;;
        "LifeGate Radio") play mmsh://onair8.xdevel.com/Lifegate?MSWMExt=.asf ;;
        "Radio Flash") play http://stream5.top-ix.it:8000/radioflash.m3u ;;
        *) exit 0 ;;
    esac
done
(Lo trovate anche qui: http://forum.ubuntu-it.org/index.php/topic,316995.0.html) Gli unici pacchetti richiesti per l'utilizzo del programma sono zenity (utilizzato per creare la semplice interfaccia di scelta del programma) e vlc (potente player multimediale che permette di modificare l'user agent HTTP, necessario per accedere ai video presenti su rai.tv). Per visualizzare i canali della RAI inoltre è necessario installare python3.

Per utilizzarlo basta copiare lo script in un file con un editor di testo a piacere, salvare il file chiamandolo, per esempio, rai, renderlo eseguibile e posizionarlo nella cartella ~/bin (ricordo che la tilde ~ è un'abbreviazione della cartella home dell'utente corrente), creandola se eventualmente non esiste. All'avvio successivo del computer dovrebbe essere sufficiente dare nel terminale il comando
rai
(o il nome che avete dato allo script) per poter aprire la finestra di scelta del canale da visualizzare. Ovviamente è anche possibile creare un lanciatore a questo comando per avviarlo ancora più semplicemente.

Questo script permette solo di vedere le dirette elencate nella finestra che vi apparirà, lo script presente su slacky.eu, invece, offre la possibilità di riprodurre anche tanti altri video presenti sul sito della RAI.

Aggiornamento: su suggerimento di mario000 ho aggiunto anche il link allo streaming di Sportitalia. Se avete suggerimenti per altri canali da aggiungere (anche radio se volete), non esitate a segnalare (meglio se forniti di link allo streaming :-) ). D'ora in poi non credo che scriverò tutte le modifiche apportate allo script, se non modifiche importanti.

martedì 1 settembre 2009

Rendere eseguibile un file

Affinché un file possa essere eseguito è necessario che abbia impostato il permesso di esecuzione. Infatti, provando a eseguire da terminale un file (sia esso un eseguibile, uno script o altro) che non ha il permesso di esecuzione riceverete il messaggio di errore:
bash: ./nomefile: Permesso negato
(dove nomefile rappresenta il nome del file che si è provato a eseguire).

Per impostare il permesso di esecuzione da terminale bisogna utilizzare il comando chmod. La sintassi del comando è
chmod [OPZIONI] permessi nomefile
Per quello che vi interessa riguardo al rendere eseguibile un file il comando da utilizzare è
chmod +x nomefile
Il file da rendere eseguibile può essere specificato indicandone il percorso assoluto o quello relativo, come preferite. Per tutti gli altri usi e opzioni di chmod potete consultare il manuale utilizzando il solito comando man chmod.

Ovviamente è possibile rendere eseguibile un file utilizzando l'interfaccia grafica. Se usate Nautilus, il file manager predefinito di GNOME, bisogna fare clic con il tasto destro sull'icona di un file, scegliere Proprietà, nella scheda Permessi si deve quindi mettere la spunta a Consentire l'esecuzione del file come programma.

È possibile anche utilizzare il seguente breve script di Nautilus che ho scritto per rendere eseguibile anche più file contemporaneamente con un solo clic:
#!/bin/bash
for arg; do
    chmod u+x -- "$arg"
done

Per utilizzare lo script, aprite un file vuoto con un editor di testo (come gedit), copiate lo script nell'editor e salvatelo nella cartella ~/.gnome2/nautilus-scripts (ricordo che la tilde ~ è un'abbreviazione della cartella home dell'utente corrente) chiamandolo, per esempio, Rendi eseguibile. Rendete quindi eseguibile lo script in uno dei modi descritti in precedenza. In questo modo, selezionando e facendo clic con il tasto destro sui file a cui vorrete assegnare il permesso di esecuzione, vi basterà fare clic su ScriptRendi eseguibile (o il nome che avete dato allo script).