<--WYS--> <--IWYG content - do not remove this comment, and never use this identical text in your topics--> <--
PremessaPartendo dall'ottimo e semplice articolo http://en.flossmanuals.net/ogg-theora/live-streaming/ffmpeg2theora è possibile in pochi minuti installare un sistema di streaming audio/video da telecamera dotata di interfaccia DV (firewire 1394). Nel citato articolo si suggerisce di utilizzare il seguente script:sudo dvgrab --format raw - \ | ffmpeg2theora -a 0 -v 5 -f dv -x 320 -y 240 -o /dev/stdout - \ | oggfwd icecastserver 8000 pwd /theora.ogvSi tratta di una serie di comandi tra loro collegati in pipe che elaborano il flusso audio/video; dalla sorgente firewire, passando per un convertitore di formato e per essere infine inviato al server per la diffusione. L'esigenza era però di effettuare anche il salvataggio del flusso audio/video in locale. L'idea è di intercettare il flusso audio/video per salvarlo in locale. Soluzione#!/bin/bash HMS="$(date +%H-%M-%S)" NAME="my_test_video" dvgrab --format raw - \ | tee >(split -d -a3 -b680MB - ${NAME}_${HMS}_) \ | ffmpeg2theora -a -1 -v 3 -f dv -x 320 -y 240 -o /dev/stdout - \ | oggfwd icecastserver 8000 pwd /$NAME.ogvCome potete notare si è fatto uso dei ben noti comandi tee e split. In tal modo vengono salvati spezzoni della dimensione di 680Mbyte che si possono copiare su CD. Ovviamente la dimensione può essere adattata a piacimento. Il taglio del flusso non coincide però con il singolo frame, ma per uso amatoriale l'errore è trascurabile. Se vi fosse la necessità di effettuare il montaggio di una parte a cavallo dei due spezzoni potete semplicemente accodarli per poi elaborarli: cat my_test_video_22-30-18_005 my_test_video_22-30-18_006 my_test_video_22-30-18_007 >my_test_video_22-30-18_005-007.dvBuona registrazione ...
|