Qrio CamP3 V6000-n film nézegetés

Sikerült összehozni! A kamerán is megnézhető filmet lehet készíteni! Csak nehezen tudtam rájönni, miért akadt a film, ha a kamerán néztem. Az egyik, hogy a hang Joint-Stereo volt. A mode=3 -as opcióval mono lesz a hang. Ennek kitömörítése jóval kevesebb CPU időt igényel.
Qrio CamP3 V6000 digital camcorder
Másrészt a kamera is kettő B-frame-et tesz be, így a vmax_b_frames=2 opcióval én is ezt teszem. Ettől függetlenül a kép néha így is kicsit töredezett lesz. Talán az sc_threshold-ot kellene csökkenteni? Ez a scene change threshold, vagyis ha két kép között túl nagy a különbség akkor betesz egy I-képet. A keyint változóval meg lehet adni, hogy 50 kép után mindenképpen berak egy I-képet a kodek. Ez alapból 250, vagyis 10 másodperc. Egészen 15-ig lementem. Ennek az volt a hatása, hogy nagyon rövid ideig látszottak a kis oda nem illő négyzetek. Igazából arra kellene rájönni, hogy miért esik szét a kép.
A kész avi fájlt például a clip0001.avi-t a dcim/200movie/ könyvtárba kell másolni.
Viszont találtam még egy hibát a Qrio CamP3 V6000-es kamerában. A mencoder-rel készült filmek végén gyakran lefagy a kamera. Csak az akkumulátor kivételével és visszarakásával lehet működésre bírni :(.
Íme a program (any2CamP3):

#!/bin/sh
echo any2CamP3 v0.1.1
echo "Copyright (C) Peter Ivanov, 2006"
echo
if test $# == 0; then
    echo "Usage: $0 <movie> [outfile] [mplayer options]"
    echo "Default outfile is: clip0001.avi"
    echo "Example: $0 fun.wmv clip0007.avi \"-ss 100 -endpos 120\""
    exit;
fi
SRC=$1
if test "$2" = ""; then
    OUT=clip0001.avi;
else
    OUT=$2;
fi
# Video bitrate (kbit/s)
VBITR=400
# Audio bitrate (kbit/s)
ABITR=48
rm frameno.avi
rm divx2pass.log

mencoder -oac mp3lame -lameopts preset=$ABITR:mode=3 -af volnorm,volume=-15 \
-ovc lavc -lavcopts vcodec=mpeg4:vbitrate=$VBITR:mbd=1:sc_threshold=-2000:\
keyint=50:vqmin=2:vqdiff=3:vmax_b_frames=2:trell:vstrict=1 \
-vf scale=320:-2,expand=320:240 -ofps 25 $3 \
$SRC -ffourcc XVID -o $OUT

(Ugyanezen a címmel volt egy blogbejegzésem is régebben itt.)