In questo breve articolo aggiorneremo le informazioni contenute negli articoli dedicati al Video per il web, con le ultime tecnologie proposte da Microsoft. Utilizzeremo dunque il Windows Media Encoder Serie 9 per comprimere un filmato e vedremo come poterlo pubblicare su uno spazio Web.
Come già espresso negli articoli precedenti, la pubblicazione di un file video su un sito Web non adatto a tale scopo è un compromesso che spesso può portare a risultati non del tutto soddisfacenti. Per poter infatti visualizzare un video attraverso Internet è necessario utilizzare uno spazio di hosting o un web server che rendano esplicito il permesso di pubblicare file multimediali, audio o video. Questo non a causa di eventuali problemi legati al diritto d'autore dei file pubblicati, ma a causa del tipo di protocollo di comunicazione con cui i dati vengono inviati dal sito al browser.
I normali spazi Web mettono a disposizione infatti solo la normale comunicazione http che non prevede i controlli e le caratteristiche di qualità dei protocolli utilizzati per la riproduzione audio/video, come il RealTime Streaming Protocol (RTSP) di Real Networks o i protocolli legati alla piattaforma Microsoft Media Server (MMS) di Microsoft.
A ciò si aggiunga che i file audio/video impiegano più risorse sia in termini di calcolo da parte del computer che li elabora sia in termini di banda utilizzata. È dunque facilmente comprensibile che, per utilizzare al meglio queste tecnologie, è necessario affidarsi ad un servizio di hosting che abbia un esplicito riferimento allo streaming via Web.
Il nostro esempio
Per il nostro tutorial utilizzeremo il Microsoft Windows Media Encoder 9 per comprimere un filmato scaricato dalla rete e utilizzeremo un leggerissimo codice HTML per pubblicarlo online. Il filmato sorgente è il ben noto 'Crash' di Windows 98 alla sua prima uscita pubblica al Comdex di Las Vegas nell'aprile 1998.
Come file sorgente il Windows Media Encoder 9 accetta file wav, .wma, .wmv, .asf, .avi, .mpg, .mp3. I file MPEG-1 e MPEG-2 possono essere convertiti se si ha installato un codec compatibile con Microsoft DirectShow. Solitamente se un filmato .mpg viene visualizzato correttamente nel Windows Media Player, vuol dire che è possibile convertirlo utilizzando il Windows Media Encoder.
Microsoft afferma che la serie 9 del proprio encoder raggiunge una qualità del video tra il 15 e il 50 per cento migliore del precedente Media Encoder 8. Con l'encoder versione 9 è possibile creare filmati sino ad una risoluzione di 1280 x 720 pixel accompagnati da un suono surround 5.1.
Il filmato
Passiamo a processare il filmato vero e proprio. Per le prove potete utilizzare il filmato AVI che abbiamo scaricato per voi oppure qualsiasi filmato in formato compatibile con l'Encoder 9 in vostro possesso. Il Microsoft Windows Media Encoder può essere scaricato gratuitamente dal sito Microsoft. Il software 'pesa' circa 10 MByte e può essere installato solamente su computer dotati di Windows XP, Windows 2000 o Windows Server 2003.
Compressione
Iniziamo a comprimere il filmato. Per comprimere i file video si può agire in due modi. La prima interfaccia che ci presenta il programma ci offre infatti cinque principali opzioni:
- Custom Session. È l'opzione dedicata alle impostazioni personalizzate. Attraverso una serie di opzioni sarà possibile stabilire con precisione l'esatto formato del proprio video.
- Broadcast a Live Event. Se abbiamo una videocamera o una webcam collegata al computer, sarà possibile trasmettere in diretta ('live') le nostre riprese. In questo caso sarà necessario avere o un server cui inviare il video oppure permettere agli utenti di collegarsi al proprio computer che in questo caso fungerà da server esso stesso.
- Capture Audio or video. È l'opzione per chi vuole catturare, da Videocamera o da un ingresso audio/video del computer, filmati o suoni.
- Convert a file. È l'opzione che ci interessa. Permette di convertire un filmato in un formato semplice e leggero tanto da essere visualizzato sul web.
- Capture Screen. Ci può essere d'aiuto quando abbiamo necessità di mostrare un filmato delle azioni eseguite sul nostro schermo.
Per ciò che interessa i nostri fini sceglieremo l'opzione "Convert a file". Nella finestra successiva sceglieremo il file originale e il sistema automaticamente ci consiglierà il nome da dare al filmato compresso con estensione .wmv (Windows Media Video). Nella finestra successiva dovremmo scegliere su quale "media" sarà distribuito il filmato. La nostra scelta sarà naturalmente, non avendo un Windows Media server su cui contare, la quarta: "Web Server (progressive download)".
L'ultima finestra è dedicata alla qualità del video. Ciò dipenderà sostanzialmente da due fattori: dal formato originale del file e dal mezzo su cui lo distribuiremo. È pacifico che un video come il nostro che ha una risoluzione di partenza di 240x180 non potrà essere convertito a 1280x720, pena una perdita sostanziale di qualità e una dimensione del file maggiore e dunque una difficoltà nella visualizzazione. Per una pubblicazione sul Web si potrà essere soddisfatti delle impostazioni che abbiamo assegnato nella finestra che segue:
L'ultima finestra servirà ad assegnare un titolo e alcune informazioni aggiuntive al video. Le informazioni, che non è obbligatorio aggiungere, compariranno sia nella finestra di riproduzione sia nelle "proprietà" del video. Un ultimo click e saremo giunti alla finestra di riepilogo. Ora basterà cliccare su fine per dare inizio alla riproduzione. Il file sarà ora pronto nella directory scelta durante la seconda schermata. Nel nostro caso il file è stato compresso da 3,7 MByte a 0,6 MByte con una impercettibile perdita di qualità.
Pubblicazione
Cosa ci faremo con il nostro filmato? Lo possiamo naturalmente pubblicare sul nostro sito web. Noi abbiamo sperimentato una connessione su uno spazio web gratuito di Tripod con buoni risultati. Per evitare che Tripod ricevesse troppe connessioni, il link che vi forniamo per l'esempio è invece relativo al filmato pubblicato su un server di HTML.it.
Per pubblicare un video sul proprio sito si ha bisogno di due file: un metafile .ASX e una pagina HTML con il codice per la visualizzazione. Il risultato finale (un video nella propria pagina) potrebbe essere ottenuto anche solo attraverso il file HTML, ma Microsoft consiglia di utilizzare il metafile .ASX, anche per poter inviare al player informazioni aggiuntive sul filmato da riprodurre.
Il metafile .ASX è un file di testo che contiene informazioni su un indirizzo web da riprodurre all'interno del Windows Media Player. Un semplicissimo metafile è composto dal codice che segue:
<ASX version="3.0">
<Entry>
<ref href="crash.wmv">
</Entry>
</ASX>
Nel campo <ref href="video.wmv">, evidenziato in grassetto, si trova un normale link al video compresso che, in questo caso, risiede nella stessa directory del file .ASX. Ogni metafile può essere arricchito di informazioni accessorie. Microsoft, all'interno del sito dedicato agli articoli tecnici, fornisce l'esempio di quest'altro metafile .ASX che noi abbiamo adattato al nostro video:
<ASX version = "3.0">
<ABSTRACT>Bill Gates e un suo collaboratore provano windows 98 che va in crash non appena viene collegata una periferica USB</ABSTRACT>
<TITLE>Win 98 Crash/TITLE>
<AUTHOR>Francesco</AUTHOR>
<COPYRIGHT>CNN</COPYRIGHT>
<MoreInfo href = "http://www.cnn.com/TECH/computing/9804/20/gates.comdex/" />
<Entry>
<Title>Win 98 Crash</Title>
<Copyright>1998 CNN</Copyright>
<MoreInfo href = "http://www.cnn.com/TECH/computing/9804/20/gates.comdex/" />
<ref href="crash.wmv">
</Entry>
</ASX>
Il file HTML dovrà invece richiamare il file .ASX attraverso il tag OBJECT. In questo modo si attiva l'ActiveX del Windows Media Player. La sintassi di base da inserire nel file HTML è la seguente:
<OBJECT id = "Player"
CLASSID = "CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
height="320"
width="240">
<PARAM Name = "autoStart" Value = "true">
<PARAM Name = "uiMode" Value = "full">
<param name="URL" value="crash.asx" />
</OBJECT>
Naturalmente al posto del riferimento a crash.asx andrà inserito il nome del nostro file asx creato nei passaggi precedenti.
Il codice creato sopra non funzionerà con quelle versioni di Mozilla sprovviste del plug-in per ActiveX e con tutte le versioni di Mozilla per Linux. Per chi utilizza Mozilla per Windows basterà scaricare il plug-in ActiveX, mentre per chi invece utilizza Mozilla su Linux si potrà far uso di questo codice alternativo.
<OBJECT id = "Player"
CLASSID = "CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
height="320"
width="240">
<PARAM Name = "autoStart" Value = "true">
<PARAM Name = "uiMode" Value = "full">
<param name="URL" value="crash.asx" />
<embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" name="MediaPlayer1" height="320" width="240" src="crash.wmv" filename="crash.wmv" autostart="True" showcontrols="True" showstatusbar="False" showdisplay="False" autorewind="True">
</EMBED>
</OBJECT>
Con questo codice, Internet Explorer e Mozilla con il plug-in per gli ActiveX visualizzeranno il video normalmente, mentre Mozilla su Linux e Mozilla senza l'ActiveX plug-in visualizzeranno una diversa versione del player. Molti utenti delle versioni di Mozilla senza ActiveX Plug-in hanno tuttavia lamentato problemi nella visualizzazione di filmati. Ciò è dovuto, suggeriscono gli sviluppatori Netscape e Mozilla, al cattivo supporto offerto da Microsoft al browser concorrente.