V1.0, marzo 2006
L'obiettivo di questa mini guida è quello di dimostrare come si può implementare la funzione audio su una pagina web (o su tutto un sito web) nella maniera più economica e più funzionale possibile.
ECONOMICA perchè di servizi a pagamento ce ne sono diversi, quello italiano più famoso è http://www.myvoice.it/ che peraltro richiede anche di scaricare ed installare un plugins da parte dell'utente.
FUNZIONALE perchè basandosi sulla sintesi vocale non è necessario registrare i file audio, con tutte le implicazioni che comporta la registrazione in termini di pronuncia, microfoni ecc.
Gli unici requisiti sono un sintetizzatore vocale tipo Text Aloud che si può scaricare in versione Trial dal sito http://www.nextup.com/ e una voce sintetica italiana. Text Aloud è un programma che converte un testo ASCI in un file audio che può essere di tipo MP3, WAV o WMA. Quest'ultimo (WMA) è risultato essere il più leggero tra i tre. La voce sintetica italiana è contenuta nel file lhttsiti.exe che può essere facilmente reperito e scaricato dalla rete.
La maggioranza degli script che si trovano in rete usano la tecnica del preload, ovvero di precaricare tutti i file audio insieme alla pagina HTML. Questa procedura da un verso velocizza l'esecuzione dei file audio mentre si naviga nella pagina ma dall'altro ritarda, (in certi casi insopportabilmente) , il caricamento della pagina stessa. Per cui se si tratta di precaricare 3 o 4 piccolissimi file audio, per esempio di un menu, si può anche usare la tecnica del preload altrimenti è preferibile ritardare leggermente l'esecuzione dei file audio a vantaggio del caricamento della pagina web non eseguendo il preload.
3. Visibile o non visibile
Sostanzialmente l'esecuzione dei file audio avviene attraverso un player (di solito Windows MediaPlayer), quindi per ascoltare un file audio sarebbe sufficiente mostrare sulla pagina il player, (magari in dimensioni ridotte ) e premere il pulsante PLAY. Quella che segue è la sintassi per ottenere il player visibile ma con dimensioni ridotte: <EMBED src="fileaudio.wma" autostart=false loop=false volume=100 width="66" height="28">. Questo sistema è funzionante ma non permette di associare un file audio ad un testo o ad un link. Pertanto è da preferire la versione non visibile che si ottiene con il seguente codice HTM: <BGSOUND id="BGSOUND_ID" LOOP=1 SRC="jsilence.mid"> <EMBED NAME="Bach" SRC="jsilence.mid" LOOP=FALSE AUTOSTART=FALSE HIDDEN=TRUE MASTERSOUND>. Il file jsilence.mid altro non è che un file audio muto.
4. Javascript interno o file JS esterno
Visto che l'esempio in oggetto comprende un codice in javascript che comprende tante funzioni quanti sono i file audio necessari si pone il problema se incorporare o meno il codice javascript nella pagina HTML. La facilità di manutenzione del codice in javascript, modifica e aggiornamento, fa optare per il codice esterno in file di tipo js che deve essere dichiarato tra i tag <head> e </head> con la seguente sintassi: <SCRIPT SRC="aloud.js"></SCRIPT> .
5. Audio su testo e audio su link
Il linguaggio javascript si presta benissimo per entrambe le modalità.
Nel caso di Audio su testo il codice sarà: <a onmouseout="stopSound()" onmouseover="playSound()" href="javascript:void(0);" >audio senza link</a>
Nel caso di Audio su link il codice sarà: <a onmouseout="stopSound()" onmouseover="playSound()" href="link.htm" >audio con link</a>
dove stopsound() è la funzione per interrompere l'esecuzione di qualsiasi file audio, mentre playsound() è la funzione per avviare l'esecuzione di un file audio. Il comando unmouseout è fondamentale per interrompere l'esecuzione del file audio semplicemente spostando il mouse dal testo o dal link.
Appendice e download
L'esempio pratico che implementa tutta questa teoria è il menù parlante della pagina istituzionale del sito http://www.comunecampagnano.it/index_0.htm
download Text Aloud da http://www.nextup.com/
download lhttsiti tramite http://www.google.it/search?hl=it&q=lhttsiti&btnG=Cerca+con+Google&meta=cr%3DcountryIT
download il file audio jsilence.mid
download il codice javascript esterno aloud.js
questo documento è rilasciato con licenza CopyLeft - (tutti i rovesci sono riservati) - ovvero fatene quello che vi pare!
altre guide e mini-howto