Screencast - uso di pyvnc2swf
pyvnc2swf.py è una applicazione python che consente di catturare il video di una sessione X, contemporaneamente registrare anche l'audio per poi miscelarli in un unico file e generare un filmato. Utile per la didattica
riferimenti
http://www.unixuser.org/~euske/vnc2swf/pyvnc2swf.html
http://www.unixuser.org/~euske/vnc2swf/
http://www.unixuser.org/~euske/vnc2swf/pyvnc2swf-0.9.1.tar.gz (Nov 3, 2006)
Uso
Bisogna innanzitutto che sulla macchina (quella dove si vuol catturare la schermata) sia avviato il server vnc [1]:
$ vncserver
che ovviamente si dovrà aver installato [2] in precedenza
Ora, da questo servizio, è possibile ottenere e quindi riprodurre l'immagine di una o più schermate da questa stessa macchina o da remoto (quest'ultimo è l'utilizzo più diffuso).
Con un visualizzatore [3] è possibile vedere quella immagine su qualsiasi macchina con un comando del tipo:
$ vncviewer localhost:1
dove al posto di localhost può esserci l'indirizzo di un'altra macchina e :1 rappresenta lo schermo di riferimento
Per avviare una registrazione di video e audio di una schermata usiamo il programma python vnc2swf.py con un comando del tipo:
python vnc2swf.py -o file_video.swf -S "arecord -r 22050 file_voce.wav" localhost:0
l'opzione -o stabilisce il nome da dare al file del filmato che in prima istanza non contiene ancora l'audio che infatti viene registrato a parte con l'applicazione (nel nostro caso con il programma arecord) e nel file stabiliti con l'opzione -S
NB: dovremo ovviamente trovarci nella cartella dove risiede il file vnc2swf.py!
si apre una finestra di dialogo che ci permette di accedere al server vnc o di modificare le opzioni. Dato il via alla registrazione video ci viene proposta un'altra finestra di dialogo (se non impostata altrimenti) per inserire la password. Dopo aver esaurito i preliminari di autorizzazione (potrebbe esserci anche quello per l'uso dell'audio), inizia la vera registrazione che può essere interrotta da terminale con un ctrl-C o con i comandi della finestra di dialogo.
Terminata la registrazione dovremmo trovare tre file, uno con estensione swf con il nome che abbiamo messo a riga di comando (o da finestra di dialogo), quello con il sonoro di estensione wav e un altro con lo stesso nome del primo ma con estensione html. Quest'ultimo è il file che lanciato da un browser ci permette di vedervi il relativo filmato.
Ma per sentire anche l'audio dobbiamo prima effettuare altri due passaggi per miscelare i due file.
Trasformiamo il sonoro da formato wav a formato mp3 (poiché il programma arecord può produrre solo wav e invece il nostro edit.py sa lavorare solo con mp3) con un comado del tipo:
$ lame file_voce.wav
che genera il file file_voce.wav.mp3 che è quanto ci serve per poter miscelare definitivamente l'audio con il video con un comando del tipo:
$ python edit.py -o filmato_con_audio.swf -a file_voce.wav.mp3 file_video.swf
buona visione!
| [1] | Virtual network computing: sistema di visualizzazione remota che consente di visualizzare l'immagine di una finestra non solo sulla macchina dove sta effettivamente girando ma anche su macchine remote e di diversa architettura. |
| [2] | per ubuntu edgy: http://packages.ubuntulinux.org/edgy/x11/vncserver |
| [3] | per ubuntu edgy: http://packages.ubuntulinux.org/edgy/x11/xtightvncviewer |