How do I programatically take a screenshot of an application in Linux?
Asked Answered
R

3

7

How do I programatically take a screenshot of an application in Linux? I'm using c++. Any idea? For windows there are a lot of resources but I can't find anything for linux

Any help? Thanks

Rhombencephalon answered 7/5, 2009 at 20:28 Comment(0)
M
1

If you just want a screen recorder, try using xvidcap. If you want to make your own, try looking at the sources. I'm not really sure how it works though. My guess is that it uses the XShm extension somehow.

Myrmecology answered 7/5, 2009 at 20:44 Comment(0)
M
2

Already answered here:

Screenshot of a windows application running under wine (linux)

Edit: if you want to do it in C, try Xlib. Some links:

Midlothian answered 7/5, 2009 at 20:32 Comment(3)
Humm... Since I'm building a screencast application, I need it to be as fast as possible. Saving it to disk and opening it again is probably time consuming. But I'll give it a try!Rhombencephalon
Xlib alone does not really help. AFAIK, there is no way to do fast screenshots purely using Xlib.Myrmecology
@Zifre: Yes you can take a screenshot with Xlib. #8250169 And, right now - I am doing it in python, both with python-Xlib and with ctypes as well (py-Xlib is to slow for such a task).Pesthole
M
1

If you just want a screen recorder, try using xvidcap. If you want to make your own, try looking at the sources. I'm not really sure how it works though. My guess is that it uses the XShm extension somehow.

Myrmecology answered 7/5, 2009 at 20:44 Comment(0)
R
-1

Can't you just do this with http://www.imagemagick.org/script/index.php ?

It's usually onboard the linux repos, and you can do a lot more than just take a screen shot with it... http://tips.webdesign10.com/how-to-take-a-screenshot-on-ubuntu-linux

Rainbow answered 7/5, 2009 at 21:12 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.