Come trasformare una directory piena di immagini, magari proprio la nostra preziosa collezione, in un fotoalbum con tanto di menu e colonna sonora
(pagina 1 di 6)
La creazione di un DVD Video con menu,
contenuti extra e percorsi di navigazione
è un’arte che si avvale di programmi sofisticati spesso di importante ausilio per
grafici professionisti e artisti. Nel nostro caso, affronteremo
il problema con un approccio diverso
spiegando come creare da zero un album di foto
da “sfogliare” con il lettore DVD (sia per PC che
da tavolo) tramite uno script PHP (www.php.net).
Usatissimo come linguaggio di scripting per creare applicazioni web, PHP
offre tutti i suoi vantaggi anche nella modalità a linea comando senza nulla
invidiare agli script Bash o altro. All’interno dello script che vi proponiamo
sono stati utilizzati numerosi programmi Open Source per l’elaborazione di
immagini, suoni e filmati, di conseguenza oltre all’ambiente PHP è necessario
che nel sistema siano presenti i software riportati nella tabella. Ovviamente,
oltre a questi, è necessario installare l’interprete PHP nella versione
a riga comando, cioè php5-cli. Il nome dello script è fotoalbum_dvd.php.
Per usarlo è sufficiente renderlo eseguibile con chmod +x fotoalbum_dvd.
php, copiarlo in una directory contenuta
nella variabile $PATH (in pratica una dove
il sistema cerca gli eseguibili) con cp fotoalbum_
dvd.php /usr/local/bin e digitare
il nome come un comando shell qualsiasi.
Per quanto riguarda le immagini, eventuali
file audio da usare come colonna sonora, la
struttura delle directory e altre operazioni
preliminari necessari all’esecuzione dello
script, tutti i passi necessari saranno descritti dettagliatamente durante la fase
di analisi del codice che compone.
GLI STRUMENTI NECESSARI
Software utilizzati e relativi comandi
Softaware
Comando
Sito Web
ImageMagick
convert
www.imagemagick.org
Netpbm
ppm4yuv, ppmfade
netpbm.sourceforge.net
MJPEG Tools
mpeg2enc, mplex
mjpeg.sourceforge.net
FFmpeg
ffmpeg
ffmpeg.mplayerhq.hu
Sox
sox
sox.sourceforge.net
Dvdauthor
spumux,dvdauthor
dvdauthor.sourceforge.net
Gimp
gimp
www.gimp.org
Xine
xine
xinehq.de
Dvd+rw-tools
growisofs
fy.chalmers.se/~appro/linux/DVD+RW
Dalle immagini al DVD
fotoalbum_dvd.php01 #!/usr/bin/php02 0304 /*05 * Variabili globali06 */07 //directory radice; contiene le directory conle immagini08 $root_dir=”./”;0910 //directory con le immagini per l’album11 $image_collections=array(12 “oggetti”,13 “piante”,14 “animali”,15 “luoghi”16 );1718 //tipi di immagine permessi19 $image_types=array(20 “jpg”,21 “png”,22 “gif”,23 “pnm”,24 “tiff ”,25 “tif”26 );...494 myrun(“rm -f “.$image_dir.”scale_*”);495496 //pulizia prodotti dello stepdissolve497 myrun(“rm -f “.$image_dir.”dissolve_*”);498499 //pulizia prodotti dello step video500 unlink($image_dir.”video.m2v”);501502 //pulizia prodotti dello step audio503 unlink($image_dir.”audio.ac3”);504505 //pulizia prodotti dello step mux506 unlink($image_dir.”mux.mpg”);507508 //pulizia dei prodotti dello stepfi nal509 unlink($image_dir.”fi nal.xml”);510 }511 }512 ?
Lo script in esecuzione con il menu di gestione
Salvataggio immagine PNG indicizzata a 3 colori. Il quarto serve per la trasparenza
Analisi del codice PHP
[01-16] Osservando la sezione del codice denominata Variabili globali si
comprendono i passi preliminari da effettuare prima dell’esecuzione dello
script. La struttura del DVD che realizzeremo sarà composta da un unico
menu da cui sarà possibile scegliere tanti percorsi quante sono le directory
in cui salveremo le foto che costituiranno il nostro album multimediale. Nel
nostro esempio si suppone di avere 4 collezioni di immagini suddivise in
4 directory all’interno della direc