Changing the hardware acceleration settings programmatically

J

Jonas Wetz

Hi All,

I do not know if this is quite the appropriate newsgroup for that topic,
but maybe one of you guys can help me with that problems.

First of all a brief overview over the application I am currently
developing:

I want to stream the screen content to a high-speed USB device. One way
doing this is capturing the desktop periodically and streaming that
content to the interface. Which is not quite a problem and also already
works quite well (I am using GDI API to capture the screen, with DirectX
in terms of obtaining a pointer to the front buffer it is slow like
hell). The only thing this consumes lots of performance.

Because of that I started looking at display driver samples and also got
one very rudimentary driver up and running. It writes the video data to
a shared memory region where it can be read out by a user level application.

Currently I use the first solution.

Now speaking of the problem:

I only get displayed video when I disable the hw acceleration. Now what
I want with my application which already works obtaining the screen
content periodically and sending it out to usb is that I can disable the
HW acceleration programmatically. I know about the method changing the
"Acceleration.Level" registry key and then execute
ChangeDisplaySettings() to apply that.I already implemented that and it
works, but some graphics adapters do not have this registry key. What
should I do in that case? Is there any other way to change the
acceleration level?

I also already merged the registry settings for the graphics card after
and before disabling/enabling hw acceleration manually in the display
properties troubleshooting tab. But I did not find any changed key...

Sorry for that long story...

Thank you in advance for your thoughts on that.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top