Capture X11 (pleeeaaaaaaseeee....)


(kEinStein) #1

Hi there!

Does anybody know a program that allows to capture the X11 screen and write it e.g. as an avi-file? I’m not looking for something to make simple screenshots but to make videos of the desktop. I’ve already searched allaround but without any result… Perhaps someone can give me a hint? I’m going nuts in more “googleing”… :frowning:

kEinStein


(Alltaken) #2

yep i had one a while ago

i think i deleted it because i didn’t use it!!

from memory its called “camstudio”

and is free.


(Eric) #3

That’s not for X11

here’s a proggy for X11, http://freshmeat.net/projects/x11rec/ …it doesn’t look very updated thought.


(kEinStein) #4

Ah! Ok. Thank you guys! :slight_smile:


(Alltaken) #5

whats x11?

is it os x version 1.11 for the mac or somthing.

i dunno

sorry didn’t realise !!!

i take back my previous post.


(kEinStein) #6

No prob. X11 is an abbreviation for the X Window System, mostly used with unix-like systems. Sometimes it’s also simply called X.


(basse) #7

hmm… I have made couple of scripts… one grabs screen to pictures… then another converts them and encodes to divx avi.

it needs:
mplayer with mencoder
some codecs
imagemagick

it’s stupid and simple, but works… you can customize it to a desktop-cam also… if you ever use it, please, create a separate directory to it where you run it…
or run it in “tmp” folder… whatever. it’s pretty rough on converting and deleting the used picture files… just in case… so that you wont loose anything precious.

well they are here:


#!/bin/bash

outputfile=fideo.avi
picsize=800x600
delaysecs=1s


b=1


echo "tallennetaan ruutuja (paina ctrl-c niin katkee) ..."

while [ 1 = 1 ]; do

xwd -silent -root >grabbed_frame_$b
sleep $delaysecs

b=`expr "$b" + 1`

echo "frame $b"

done



#!/bin/bash

outputfile=fideo.avi
picsize=800x600



echo "käsitellään kuvia..."

for f in grabbed_frame_* ; do

convert -geometry $picsize $f $f.jpg

done



echo "muunnetaan kuvat fideoksi ..."

mencoder \*.jpg -mf on:fps=25  -ovc lavc -lavcopts vcodec=msmpeg4 -o $outputfile


echo "siivotaan .."

rm grabbed_frame_* -f

echo "valmis!"

.b


(kEinStein) #8

Yes, thanks. That’s pretty the same way x11rec works. Well, I don’t think that it’s stupid. But it can’t grab the screen at a good framerate (>15 fps) for a appropriate "realtime-"movie and doesn’t catch the pointer (this needs direct access to the framebuffer, I think).

Sounds like work to do, but I can’t believe that noone has already progged something like that. Well, seems I will have to learn more about the way X works and do it on my own…

But thanks anyway for your help!
kEinStein


(basse) #9

yep… I’ve been using it mainly as a desktop-camera, updating 2-10 times per second… recording stuff in real time, would been a real program… but if I remember correctly, you could use xwd function in your own code too… I dont know more about that, since I am not much of a C coder…

.b


(kEinStein) #10

Yes, I think you’re right. xwd seems to be a part of XFree86 and the license is pretty liberal.

It’s some years ago since I’d progged in C, but the biggest problem will be the great amount of data, I believe… I’ll see what’ll be possible…

kEinStein