Click here to Skip to main content
15,867,686 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
Hi,

I have a Windows form on which I have a Windows Media Player control placed on it, developed on a Win 7 64 bit machine targeted to any CPU.

I can play video files on it seamlessly on my Win 7 machine. However, when the same application is tested on an Win XP SP3 machine, the video play back is broken and blackens out.

On Win XP SP3, the video playback is improper(blackened) until I toggle the Hardware acceleration slider to "none" from "full" under Display properties-> Settings Tab -> Advanced button -> Troubleshoot tab.

Now, My queries are

1. Why do I have to do this setting On XP machine ? I ask this as the installed W.Media Player version 9 on the XP machine plays the same video file normally.

2. What is hardware acceleration ? Do this have to do something with minimum hardware requirements ?

3. Can I toggle this setting Programatically using c# 4.0 ? if so, how ? is it recommended ?

I know, I put in a lot of questions. :)

Thanks in advance for your patience :) Any help is greatly appreciated.
Posted

1 solution

The Windows Media Player ActiveX behaves differently than the normal Media Player.

Hardware Acceleration means that the video frames are not drawn by the CPU, but instead of the GPU. On newer systems the GPU also helps in decoding the video, but this feature requrires a DirectX 10 GPU and Windows Vista at least.

I'm not sure you can change this programatically, but you can look in the registry:
Make an export of the machine registry in regedit, toggle the setting, export again, diff the two files, now you got the setting, use the Registry class's methoods to change the registry option if needed.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900