• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Capture screen when full screen OpenGL application running
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Capture screen when full screen OpenGL application running


  • Subject: Re: Capture screen when full screen OpenGL application running
  • From: John Stauffer <email@hidden>
  • Date: Thu, 3 Jul 2003 10:02:05 -0700

The format of the screen is a hardware specific format. Meaning it could be different for each graphics card. Currently there is no way to reliable read the screen when a fullscreen OpenGL is running. We're looking at ways to allow for this in the future.

John

On Thursday, July 3, 2003, at 8:45AM, Fei Li wrote:

Hello all,
I have an application to capture screen at a regular interval when other
application is running. I copy bytes directly from base address(get from
CGDisplayBaseAddress). It works very well under normal condition(Quartz),
but when full screen OpenGL application running(like Keynote), I got a messy
picture. I found this is because when full screen OpenGL running, graphic
cards will store every pixel on the screen in different format then window
server does. I try to use the code which can draw a line on the screen under
Quartz to draw when full screen OpenGL running, it will draw a 64*16 square
on my Power G4 with AGP4X card. But on the G4 Cube which use Rage 128
ProGraphics card, storing format of Quartz and OpenGL is the same.

Furthermore, OpenGL use double buffer, and when display animation, two
buffers swap rapidly, but I found base address only give the address of one
buffer. So even if I can get the correct picture during capture, I will lose
some frame.

So my question is:
1. If anybody know the storing format when OpenGL running, and how to detect
what kind of card is using. Or maybe there's other way to capture screen at
that time.

2. How can I get the other buffer of OpenGL.

Thanks for any information
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.

References: 
 >Capture screen when full screen OpenGL application running (From: Fei Li <email@hidden>)

  • Prev by Date: Re: Can't create new document
  • Next by Date: Re: Strong language about Cocoa and Qt
  • Previous by thread: Capture screen when full screen OpenGL application running
  • Next by thread: awakeFromNib and windowWillLoad : basic question
  • Index(es):
    • Date
    • Thread