You are not logged in.
Hello bbs.archlinux.org!
When I record my screen with gtk-recordmydesktop and then watch the result later - it just doesn't go as is was going when recorded. Video has pauses and between those pauses it kinda goes a little faster. I know the speed I type with. And when I watch it on the video it goes FAST for several chars (faster than I type) and then makes pause which I don't make when type. Even after converting OGV video into AVI (I suggested this might help) it's still incorrect.
What am I doing wrong?
Last edited by Mr. Alex (2011-09-20 14:09:09)
Offline
Maybe that's happening because my CPU (Celeron 440) is not enough? What are real system requirements for gtk-recordmydesktop?
Offline
Could this be related to your power supply and mouse problems in your other thread, https://bbs.archlinux.org/viewtopic.php?id=126787?
Offline
No, I really don't think so. APC gives click-like switches whereas video recording just goes the way I described it all the time.
Offline
recordmydesktop is quite bad for capturing IMO. I have the same problem even with quite beefy CPU, use ffmpeg instead (and glc for openGL applications).
Also more desktop suited kernel helps, such as -ck. Or realtime one even better if you don't mind the high CPU usage.
Some stuff from my .funcs
############################
## Screen capture to file ##
############################
function screencap() {
local fd="${1-capture.mkv}"
local WININFO="`xwininfo`"
local INRESW=`echo "$WININFO" | grep 'Width:' | awk '{print $2;}'`
local INRESH=`echo "$WININFO" | grep 'Height:' | awk '{print $2;}'`
local INPOSX=`echo "$WININFO" | grep 'Absolute upper-left X:' | awk '{print $4;}'`
local INPOSY=`echo "$WININFO" | grep 'Absolute upper-left Y:' | awk '{print $4;}'`
local INRES="${INRESW}x${INRESH}"
local INPOS="${INPOSX},${INPOSY}"
local FPS="24" # Target FPS
local PRESET="ultrafast"
echo "---------$INRES+$INPOS------------"
echo ""
ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0+$INPOS \
-f alsa -async 1 -ac 2 -i hw:0,0 -vcodec libx264 -vsync 1 -vpre $PRESET -sameq \
-acodec pcm_s16le -threads 0 "$fd"
}
##############################
## Encode GLC captured file ##
##############################
glc-encode() {
if [[ ! "$1" ]] || [[ ! "$2" ]] || [[ ! "$3" ]] || [[ ! "$4" ]]; then
echo "Usage : glc-encode [input] [audio bitrate] [video bitrate] [output]"
return
fi
if [[ "$2" != "0" ]]; then
glc-play "$1" -o - -a 1 | ffmpeg -i pipe: -ab $2 /tmp/audio.mp4
fi
if [ -f /tmp/audio.mp4 ]; then
glc-play "$1" -o - -y 1 | ffmpeg -i pipe: -i /tmp/audio.mp4 -acodec copy -b $3 "$4"
rm /tmp/audio.mp4
else
glc-play "$1" -o - -y 1 | ffmpeg -i pipe: -b $3 "$4"
fi
}The screencap function will allow you select a window, click root window for full screen capture.
glc-encode encodes glc captured videos.
Last edited by Cloudef (2011-09-20 13:42:39)
Offline
Thanks. This thing ( http://unix.stackexchange.com/questions … with-audio ) works properly.
Offline