scripts
phpMan, le pagine del manuale Unix via web
by root on Mar.22, 2010, under scripts
phpMan è uno script in php che formatta le pagine del manuale Unix ( man pages).
Il suo utilizzo è semplicissimo, basta copiare lo script sul vostro spazio web ed è fatta.
Potete vederlo in azione qui
Riferimenti
dalla fotocamera al lettore avi
by root on Mar.23, 2009, under scripts
I files video prodotti dalle fotocamere digitali spesso hanno l’audio a 8 kHz che non è ben visto da molti lettori divx.
Il risultato è che i video si vedono ma non si sentono.
Questo è il comando che uso per convertire i files della fotocamera in divx, con il ricampionamento dell’audio.
mencoder -ovc lavc -lavcopts vcodec=mpeg4:mbd=1:vbitrate=2048 -af resample=44100:0:2 -oac mp3lame infile.avi -o outfile.avi
Dove infile è il file d’ingresso, outfile quello di uscita.
un grande classico, conversione caratteri di fine linea formato DOS a formato Unix
by root on Feb.13, 2009, under scripts
Usando sed.
sed 's/.$//' # assumes that all lines end with CR/LF sed 's/^M$//' # in bash/tcsh, press Ctrl-V then Ctrl-M sed 's/\x0D$//' # gsed 3.02.80, but top script is easier
sincronizzare la data dei files con le immagini con i corrispondenti tag exif
by root on Feb.13, 2009, under scripts
Questo semplice script serva a sincronizzare la data di un file immagine con la data di creazione dello stesso specificata nei tag exif.
#!/bin/bash
# exif-sync, a small command line utility to set unix file date according to image exif tags
function set_exiftime (){
image=$1
PST=`exiftime $image | awk ' { if (match($0, /^Image Created: ..(..):(..):(..) (..):(..):(..)/,arr)){ print arr[1] arr[2] arr[3] arr[4] arr[5] "." arr[6]}}'`
echo $PST
if [ $PST ]; then
echo "Setting [$image] file date according to exif tags" $PST
touch -t $PST $image
fi
}
if [ $# == 0 ]; then
echo Usage: $0 FILE [FILE] ...
exit 1
fi
for file in $*; do
set_exiftime $file
done
convertire un file avi in flv
by root on Feb.08, 2009, under scripts
Se avete una fotocamera che fa i video in formato avi e volete convertirli in formato flv vi basta usare mencoder:
mencoder <file avi> -o <file flv> -ofps 30 -vf eq=15:0,denoise3d,spp=6,scale=640:360 -of lavf -ovc lavc -lavcopts vcodec=flv:vbitrate=2048:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -oac mp3lame -lameopts br=64 -srate 22050 -af lavcresample=22050
Settate il parametro scale in base alla risoluzione voluta.
vbitrate è il bitrate del video: più grande = qualità maggiore = file più grande = maggiore banda
Potete poi mettere il file flv sul vostro sito e renderlo fruibile con un player flash, esempio l’ottimo JW Flv Media Player
estrarre un singolo frame da uno stream mjpeg
by root on Feb.06, 2009, under scripts
Questa ricettina serve ad estrarre un singolo frame da uno stream mjpeg
Usa curl e mplayer.
curl -s <stream url> | mplayer -demuxer +rawvideo -vc +ffmjpeg -fps 2 -rawvideo fps=2:w=640:h=480 -noextbased -vo jpeg -frames 1 -
Verrà creato nella directory corrente un file, “00000001.jpg”, con il frame catturato dalla streaming camera.
Praticamente dico a mplayer di fare il play di stdin (il nome del file è “-”), che viene fornito da curl tramite la pipe “|”, forzandogli la tipologia di codec e demuxer, altrimenti per default lui tenta di capirla dal file di ingresso facendo delle seek.
Gli dico inoltre di produrre file jpeg piuttosto che fare play su video ( -vo jpeg ) e di prendere un solo frame (-frames 1)
Dato che stdin non prevede seek, se non specificassi i parametri con cui è codificato lo stream otterrei questo errore:
Cannot seek backward in linear streams!
Seek failed
Prerequisiti sono curl e mplayer
sudo apt-get install mplayer curl
Riferimenti
georeferenziare immagini con exiftool
by root on Feb.01, 2009, under scripts
Exiftool è una libreria perl e un tool a linea di comando molto potente che consente di editare i tag exif delle foto digitali.
Tra i tag exif ci sono due coppie di coordinate latitudine e longitudine, una identifica il posto dov’è stata scattata la foto, l’altra le coordinate del soggetto.
Le coordinate del soggetto sono identificate dalle label Dest (destinazione) sui nomi dei tag.
Esempio per aggiungere ad una foto l’informazione sulla posizione:
exiftool -GPSLatitude=41,59,18.64 -GPSLongitude=12,29,26.09 -GPSLatitudeRef=N -GPSLongitudeRef=E -GPSMapDatum=WGS84 -GPSDestLatitude=41,59,18.64 -GPSDestLongitude=12,29,26.09 -GPSDestLongitudeRef=E -GPSDestLatitudeRef=N -overwrite_original immagine.jpg
Rinominare un gruppo di files
by root on Jan.28, 2009, under scripts
Ammettiamo di dover rinominare tutti i files su una directory che hanno un’ estensione con un altra:
Es. per rinominare tutti i files con estensione “.jad” in “.java”
for i in *.jad; do mv $i ${i%%.jad}.java; done
spostare file video con find - exec
by root on Jan.26, 2009, under scripts
Una utile ricettina per spostare tutti i files video da una directory ad una altra..
In una shell, posizionarsi sulla directory di destinazione, ovvero dove si vuole vadano i video. (continue reading…)









































