diff --git a/screencap/screencap-ffmpeg.sh b/screencap/screencap-ffmpeg.sh index 9de42c4afc243c867ce08fcef6c7b5d4a56e7eee..548a3d082c1acc5f3cb4aa5dad5138d3878d2b1c 100755 --- a/screencap/screencap-ffmpeg.sh +++ b/screencap/screencap-ffmpeg.sh @@ -6,10 +6,12 @@ # Erster und einziger, optionaler, Parameter ist ein Präfix für die Datei, in die aufgenommen wird. # Der Dateiname lautet: $prefix-YYYY-MM-DD-HH-MM-SS-nummer.mp4 # Teilweise gibt es Probleme mit der Syncronität Bild<->Ton, daher dringen auf den Präsentationslaptops ausprobieren. +# Bei langsamen Geräten kann auch LOSSLESS=1 helfen, dann wird zwar die Ausgabedatei größer, aber der Rechenaufwand sollte am geringsten sein. DEVICE="VGA" AUDIO=1 FPS=15 +LOSSLESS=0 info=$(xrandr | grep $DEVICE) if [ -z "$info" ] || (echo $info | grep disconnected) @@ -53,4 +55,11 @@ else audiocmd="-an" fi -$prog -f x11grab -s $res -r $FPS -i :0.0$pos $audiocmd -c:v libx264 -r $FPS -preset:v ultrafast $file +if [ $LOSSLESS -eq 1 ] + then + losslesscmd="-qp 0 -crf 0 -tune stillimage" +fi + +cmd="$prog -f x11grab -s $res -r $FPS -i :0.0$pos $audiocmd -c:v libx264 $losslesscmd -r $FPS -preset:v ultrafast $file" +echo "Command: $cmd" +$cmd