Bonjour,
Je cherche le moyen d'extraire une chaine d'une autre, en bash.. exemples de chaines :
Stream #0.1: Video: WVP2 / 0x32505657, 320x240, 6 kb/s, 30.00 tb(r)
Stream #0.1: Video: wmv3, yuv420p, 320x240, 400 kb/s, 29.97 tb(r)
Stream #0.0[0x1e0]: Video: mpeg1video, yuv420p, 352x288 [PAR 1:1 DAR 11:9], 1024 kb/s, 25.00 tb(r)
Stream #0.0: Video: mpeg4, yuv420p, 352x288, 25.00 tb(r)
de ces chaine, je dois extraire le nombre de frame par secondes, "30.00", "29.97", "25.00"
je ne connais pas trop la programmation bash..
pour le moment mon script c'est ca :
1 2 3 4 5 6 7 8 9 10 11
| #!/bin/bash
ffmpeg -i "$1" &> fps.txt
ligne=$(grep 'Video: ' fps.txt)
x=0
for i in `echo $ligne | tr "," " "`;
do
echo $i;
x=$((x+1));
liste[$x]=$i;
done
echo ${liste[9]} |
le ${liste[9]} marche pour certaines, mais pas toutes.. donc a bannir comme methode..
mais la je tourne en rond depuis un moment alors que ca doit etre tout bete.. une astuce ?
Partager