Screen capture while playing video yields to blue window where video is playing
Linux - DesktopThis forum is for the discussion of all Linux Software used in a desktop context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Location: Under the bridge where proper engineers walkover
Distribution: Various Linux, Solaris, BSD, Cisco
Posts: 443
Rep:
Screen capture while playing video yields to blue window where video is playing
Hi,
I'm not sure under which category this posting should go but I guess it's 'best' described as a desktop issue...
While taking screen shots when using software like mplayer or xine the video window is totally blue within the screenshot image.
I never had this issue on my other 'newer' machine which had an Intel GM45HD chipset.
The current chipset of this much less powered box is an Intel i855.
I have a feeling that it's something to do with the video overlay or perhaps the graphics drivers.
Has anyone got any advice on what it is or a solution to the problem without pressing the 'screen capture' hotkey from the video players as I'm trying to get the whole desktop in the shot?
What distribution are you using? I remember back in the day when I did this similar thing, I had to disable hardware acceleration in order to get it to work.
Location: Under the bridge where proper engineers walkover
Distribution: Various Linux, Solaris, BSD, Cisco
Posts: 443
Original Poster
Rep:
Thanks for the response
I'm using something called Salix which is based on Slackware.
I did a bit of reading in the meantime about disabling the h/w acceleration and took a look at glxinfo, indeed Xorg is using the Intel driver for the i855 which I believe to be the i810.
I don't have any Xorg.conf in /etc/X11 though as I wanted to # out the glx portion.
Guess I'll have to run Xorg --configure, which will then create the file then comment out the above?
I remember having this issue waaaay back when too with Debian 3.01R but I think after I swapped over to Kubuntu 9.04 on that box it went away - that box is now sitting in the store room as it's too old to be used any more for normal stuff.
Erm..... I still think it's an XV video overlay issue but I could be wrong. Trying mplayer with the various drivers didn't work however.
If X is doing a full screen buffer, mplayer is bypassing that via acceleration, anyway. Even where X is not and has to do an expose operation to all the X apps, mplayer doesn't respond to that because normally it will be sending the next frame "real soon now" anyway.
Try setting up a virtual instance of X via VNC (do not use the Xvnc code that lets you access a real X instance via VNC). Connect to the virtual instance with a VNC client. Now capture the VNC client window.
Depending on what you are doing, mplayer/ffmpeg does have the ability to use a "driver" that just spews out each video frame into an image file in a specified directory. Then pick the one you want.
Location: Under the bridge where proper engineers walkover
Distribution: Various Linux, Solaris, BSD, Cisco
Posts: 443
Original Poster
Rep:
Quote:
If X is doing a full screen buffer, mplayer is bypassing that via acceleration, anyway. Even where X is not and has to do an expose operation to all the X apps, mplayer doesn't respond to that because normally it will be sending the next frame "real soon now" anyway.
Try setting up a virtual instance of X via VNC (do not use the Xvnc code that lets you access a real X instance via VNC). Connect to the virtual instance with a VNC client. Now capture the VNC client window.
Depending on what you are doing, mplayer/ffmpeg does have the ability to use a "driver" that just spews out each video frame into an image file in a specified directory. Then pick the one you want.
I get what your saying.
One would need two machines for this though or connect to same machine?
VNC is going to be hard for me to run I think as just running a few terminals already takes up round 60MB swap and if I open a browser or so I am in 300MB+ of swap space... :-(
Location: Under the bridge where proper engineers walkover
Distribution: Various Linux, Solaris, BSD, Cisco
Posts: 443
Original Poster
Rep:
Quote:
You're taking screen shots with the desktop, using PrtScr; use the control in the video player instead (Ctrl T in gnome-mplayer) and that will work.
Yep indeed this will work :-)
The only problem with this method is that you can't get the whole desktop in the screen-capture just the video portion, meaning to add it in later one will need to do a GIMP job on it.
My reasons for wanting the 'whole' desktop is to iterate things on the screen not just grab the video as the dimensions are left at 320x240 or 480x320 of the video file itself.
Try the VNC approach within just one machine. You'll have 2 X servers running, one "inside" using a virtual buffer and where the mplayer window is, and one "on the video card" (the usual case of X Windows) running just VNC in full screen mode (to get the same size). Then try various capture approaches. If "PrintScrn" is going to work, it would have to get the whole full screen window of the VNC client since the X Server driving the video card doesn't really know about the smaller windows you see (they are on the inside X server that is driving a VNC server).
Location: Under the bridge where proper engineers walkover
Distribution: Various Linux, Solaris, BSD, Cisco
Posts: 443
Original Poster
Rep:
Quote:
Try the VNC approach within just one machine. You'll have 2 X servers running, one "inside" using a virtual buffer and where the mplayer window is, and one "on the video card" (the usual case of X Windows) running just VNC in full screen mode (to get the same size). Then try various capture approaches. If "PrintScrn" is going to work, it would have to get the whole full screen window of the VNC client since the X Server driving the video card doesn't really know about the smaller windows you see (they are on the inside X server that is driving a VNC server).
I'll give this a try but am already in swap space with a few terminals open so the system may just not take the extra load.
Quote:
Mplayer has a screenshot feature, use that to get screenshots, external apps won't work.
I captured that on KUbuntu 9.04 - don't worry about the Solaris theme; I was 'theming' at the time for the Belenix OS in which I used my hard-install of Ubuntu as the test template! - hence the little telltale Bluethooth support icon which Solaris I don't think had bluetooth support back then.
Besides the point the above link is what I'm aiming at doing with my old hardware as that particular notebook stopped working so am down to an ancient Centrino Mobile M 1.7GHz uni-core CPU with 484MB RAM and intel 855 chipset... you know the one with the memory leak issue
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.