Old:Visualizzare filmati YouTube con Gnash e GreaseMonkey

Da Guide@Debianizzati.Org.
Versione del 25 mag 2010 alle 21:29 di Brunitika (discussione | contributi) (Nuova pagina: == Introduzione == Da buon utente Debian si è sempre alla ricerca di qualche strumento libero per liberarci da quelle cattive abitudini di utilizzare software proprietario ;-). Fra i...)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca

Introduzione

Da buon utente Debian si è sempre alla ricerca di qualche strumento libero per liberarci da quelle cattive abitudini di utilizzare software proprietario ;-). Fra i casi più comuni, le catene di flash sono state per anni un qualcosa di difficile dalle quali liberarsi. Dal 2005 GNU ha incominciato lo sviluppo di un software libero che potesse leggere e dunque riprodurre i filmati in formato flash: nacque così gnash .

Mentre le prime versioni presentavano qualche difficoltà d'utilizzo, il software è migliorato di tempo in tempo arrivando ai giorni attuali in grado di sostituire completamente il suo compagno proprietario. Una delle "ultime difficoltà" riguardava proprio YoutTube appunto; con quest'ultimo non si arrivava a sfruttare il plugin di gnash per iceweasel, cosa che rendeva il software non ancora "pronto" per tutti.

Da qualche mese si è però arrivati ad un ottimo compromesso d'utilizzo sfruttando GreaseMonkey, un estensione di firefox (e dunque di iceweasel), per poter vedere i filmati di YouTube con il player embed di gnash tramite uno script. In questa guida vedremo passo per passo come installare tutto ciò.

Installare gnash e il plugin per iceweasel

Evidentemente dovrete avere iceweasel installato. Se non fosse il caso potrete installarlo come sempre tramite Apt con la vostra interfaccia preferita.

# aptitude install iceweasel

Attualmente ho installato la versione 3.5.9-3 da squeeze. In seguito installeremo gnash allo stesso modo:

# aptitude install gnash

Su squeeze attualmente siamo alla versione 0.8.7-2. Per utilizzare il plugin di gnash con iceweasel installeremo ancora il pacchetto

# aptitude install mozilla-plugin-gnash

alla stessa versione di gnash. A questo punto siamo già liberi di navigare con iceweasel e il nuovo plugin di gnash. Almeno fino a YouTube non dovremmo avere particolari problemi e ci potremo già godere i benefici di un ulteriore plugin free in più sul nostro PC o - meglio detto - un plugin non-free in meno :-)-

Installare GreaseMonkey

Per installare GreaseMonkey potremo ancora una volta usufruire di Apt:

# aptitude install xul-ext-greasemonkey

Il pacchetto iceweasel-greasemonkey, presente in tutte le release, verrà sostituito da xul-ext-greasemonkey appunto in squeeze ed è per questo che se ne consiglia l'installazione. Se siete su stable o vi date al "mix" o potrete installare il primo pacchetto citato (in ogni caso non ho provato con stable e non posso dirvi se e come funziona).

Preparare lo script che cambierà il player di default di YouTube da flash a gnash

Grazie a Toon che ci mette a disposizione il suo script per utilizzare appunto il player "embed" di gnash con YouTube. Copiate dunque il seguente script

// ==UserScript==
// @name           YouTube Gnash Script
// @namespace      http://*.youtube.com/watch?v=*
// @description    Enables Gnash Playback On YouTube
// @include        http://*.youtube.com/watch?v=*
// ==/UserScript==

var goodlink, goodlink2;


goodlink = document.getElementsByTagName("link").item(4).href;
goodlink2 = goodlink.replace(/.*watch\?v=(.*)/i, "$1");
goodlink2 = "http://www.youtube.com/v/"+goodlink2;

goodlink2 = "<object width='640' height='505'><param name='movie' value='"+goodlink2+"&hl=nl_NL&fs=1&'></param><param name='allowFullScreen' \
 value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='"+goodlink2+"&hl=nl_NL&fs=1&' \
type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width='640' height='505'></embed></object>";

document.getElementById("watch-video").innerHTML = goodlink2;

e salvatelo in un file ad esempio chiamato gnash-youtube.user.js ( la variabile goodlink2 va scritta su una linea continua; i backslash \ sono stati aggiunti per segnalare la continuità appunto della linea, ma vanno poi eliminati). Se gnash-youtube potrà essere sostituito da quello che volete voi, l'estensione user.js sarà obbligatoria per far riconoscere a GreaseMonkey lo script. Mi sono permesso una piccolissima modifica all' include in quanto se richiamerete lo script da YouTube senza digitare il "www" prima del nome non verrà eseguito lo script. Inoltre l'include con "*.youtube[...]" mi dava dei freeze indesiderati (mistero...). Per dunque cambiare gli include come sopra descritto potrete applicare la seguente patch allo script

--- gnash-youtube.user.js	2010-05-25 23:00:23.000000000 +0200
+++ gnash-youtube-new.user.js	2010-05-25 23:03:30.000000000 +0200
@@ -2,7 +2,8 @@
 // @name           YouTube Gnash Script
 // @namespace      http://*.youtube.com/watch?v=*
 // @description    Enables Gnash Playback On YouTube
-// @include        http://*.youtube.com/watch?v=*
+// @include        http://www.youtube.com/watch?v=*
+// @include        http://youtube.com/watch?v=*
 // ==/UserScript==

oppure semplicemente cambiare gli "@include" a manina (oppure ancora cambiarli dalla comoda interfaccia direttamente da iceweasel in un secondo tempo).

Installare lo script

Per installare lo script salvato in gnash-youtube-new.user.js ci basterà aprirlo con iceweasel ("apri file..."); a questo punto GreaseMonkey lo riconoscerà come "suo" script e ci proporrà di installarlo:


GreaseMonkeyInstall.png


A questo punto basterà cliccare su "Install" e lo script verrà installato. Non ci resta ora che provare lo script con ad esempio la mitica free software song di rms -> http://www.youtube.com/watch?v=9sJUDx7iEJw :-).

Interfaccia GreaseMonkey

In conclusione, come antecedentemente citato per cambiare gli include ad uno script, sarà possibile in egual modo utilizzare la comoda interfaccia di GreaseMonkey direttamente da iceweasel. Per aprirla andremo sotto "Tools" (o "Strumenti") -> "GreaseMonkey" -> "Manage User Scripts"


Greasemonkey.png


potremo poi cliccare sugli include da cambiare e con il pulsante "Edit..." modificare gli stessi

Conclusioni

Se YouTube poteva essere il freno di gnash e causa di un plugin non-free sul nostro sistema, grazie a GreaseMonkey e a Toon possiamo ora tranquillamente navigare con il plugin di gnash senza più invidia verso il fratellone flash. Non mi resta che dire:


Happy Debian & Happy Gnash :-) !


Brunitika 23:29, 25 mag 2010 (CEST)