DirectX video tearing on dual monitors
  Home FAQ Contact Sign in
microsoft.public.win32.programmer.directx.graphics only
 
Advanced search
POPULAR GROUPS

more...

microsoft ... graphics Profile…
 Up
DirectX video tearing on dual monitors         


Author: Menbrane
Date: Sep 11, 2008 22:52

I have a setup with a dual head video card (Intel GMA 950)
I need to synchronize both screens to render a different image at the same
time at exactly 60Hz without video tearing.

I am creating a device like this:
for (unsigned int i=0; i<2; ++i)
present_parameters[i].PresentationInterval=D3DPRESENT_INTERVAL_ONE;

CreateDevice(adapter_id, D3DDEVTYPE_HAL, window_id,
D3DCREATE_ADAPTERGROUP_DEVICE | D3DCREATE_MULTITHREADED |
D3DCREATE_NOWINDOWCHANGE |
D3DCREATE_SOFTWARE_VERTEXPROCESSING, present_parameters, &device );

Then I have a simple loop to check that the displays are not tearing:
Show full article (1.46Kb)
4 Comments
RE: DirectX video tearing on dual monitors         


Author: Arto
Date: Sep 15, 2008 14:46

The only way I can ever totally avoid tearing is by using exclusive mode. I
haven't tried exclusive mode with several graphics adapters though.

Arto
no comments
Re: DirectX video tearing on dual monitors         


Author: Sam Brown
Date: Sep 15, 2008 16:05

"Arto" discussions.microsoft.com> wrote in message
news:F645C1BA-2B85-42B0-A530-38B3E1035DAC@microsoft.com...
> The only way I can ever totally avoid tearing is by using exclusive mode.
> I
> haven't tried exclusive mode with several graphics adapters though.

It works. You need to create a window on each display, then create a device
for each of those windows. You'll be able to specify exclusive mode (which
you need set to be able to sync IIRC) for each of those devices. They may
still not sync perfectly with each other, but they will sync to the refresh
rate of the individual displays.

NB: The last version I did that with was DX8.1, so it's _possible_ it may
not work any more with 9 or 10.

- SamB
no comments
Re: DirectX video tearing on dual monitors         


Author: Arto
Date: Sep 16, 2008 01:43

> They may
> still not sync perfectly with each other, but they will sync to the refresh
> rate of the individual displays.

I have developed a renderer that synchronizes the display refresh rate to
the fps of the incoming video (e.g. TV), provided that they are close enough
to start with. A kind of "soft genlock". This solution might be possible to
adapt to two displays to compensate for any small differences in refresh
rate. Source code and more blah blah can be found here
http://www.ostrogothia.com/?page_id=405.

Arto
no comments
Re: DirectX video tearing on dual monitors         


Author: Menbrane
Date: Sep 16, 2008 01:59

"Arto" wrote:
>
>> They may
>> still not sync perfectly with each other, but they will sync to the refresh
>> rate of the individual displays.
>
> I have developed a renderer that synchronizes the display refresh...
Show full article (0.96Kb)
no comments