XNA Creators Club Online
Page 1 of 1 (7 items)
Sort Posts: Previous Next

50Hz output in DirectX

Last post 02-07-2008 5:30 PM by ashnehru. 6 replies.
  • 02-06-2008 6:16 PM

    50Hz output in DirectX

    Hello all,

    My first post.

    I work as lead programmer at www.uva.co.uk. We write visualisation and video playback software based on DirectX 9.0c under Windows XP.

    I am trying to make our software play nice with 50Hz monitors (to smoothly play back video recorded at the European standard of 25fps). The problem is that DirectX filters out all 50Hz modes. Even if I place windows in (say) 1024x768 50Hz, DirectX doesn't report the availability of that mode, and won't allow me to select it. This is despite the fact that the graphics card and monitor clearly supports 50Hz. The CreateDevice call fails with D3D_INVALID_CALL.

    According to the documentation, DirectX doesn't support modes below 57 Hz.

    So my question is :

    - am I hosed ? Or is there some fantastic hack or control panel setting that will magically enable 50 Hz ?
    - would this work under DirectX10/Vista ? There's reasons we don't want to switch at the moment, but we would if we have to.
    - or do I (gasp) have to switch to opengl ?

    Thanks in advance for any help you can give me, and apologies if this is a known issue.

    PS. My system spec is : NVidia 8800 ultra, quad-core pentium xeon, 2GB RAM, Windows XP SP2. I'm about to run the same test on an ATI card to see if exhibits the same behaviour.

    Ash Nehru

  • 02-06-2008 6:20 PM In reply to

    Re: 50Hz output in DirectX

    I didn't realize a higher refresh rate could cause a loss of quality in things that normally run at a lower rate. For example, I figured anything above 25fps would run a video recorded in 25fps fine.
    XNA QuickStart Engine | My site
    "I'll be whatever I want to do!", Philip J. Fry
  • 02-06-2008 6:30 PM In reply to

    Re: 50Hz output in DirectX

    The issue is the mismatch between the 25fps content and the output frequency of 60Hz. If you're outputting at 50Hz, you display each video frame twice. If at 60, then each frame gets displayed either once or twice (an average of 60/25 = 2.4), and the result is 'steppiness'. In our application domain, that's not acceptable.

    I should also point out that 75 Hz (a 3:1 ratio, so smooth playback works) isn't an option on some output systems (we're outputting through video rescalers, switchers and other hardware).

    ash
  • 02-06-2008 6:46 PM In reply to

    Re: 50Hz output in DirectX

    Another issue may be that most LCD monitors are locked to 60hz.
    XNA QuickStart Engine | My site
    "I'll be whatever I want to do!", Philip J. Fry
  • 02-07-2008 1:43 AM In reply to

    Re: 50Hz output in DirectX

    Is 75Hz or 100Hz supported? They're both multiples of 25.
  • 02-07-2008 12:21 PM In reply to

    Re: 50Hz output in DirectX

    I guess I didn't see that they're limited to playback on specific hardware.

    Might have to try openGL. DirectX may not support it because all video cards may not support it either. Not sure on that one.

    Or could you convert the videos to a different framerate? Probably not easily.

    XNA QuickStart Engine | My site
    "I'll be whatever I want to do!", Philip J. Fry
  • 02-07-2008 5:30 PM In reply to

    Re: 50Hz output in DirectX

    75 and 100 Hz would allow smooth playback of 25fps content, but there will always be devices that only accept 50Hz (chiefly in the world of television).

    To clarify, the video card and the monitor I'm using both support 50Hz - I've put windows xp into 1024x768 x50Hz and verified it with the monitor's diagnostic panel. The limit seems somewhat pointless and artificial; I'm wondering if anyone knows what the reason is ?

    Converting video frame rates isn't an option unfortunately, as frame-rate conversion (using motion estimation) is processor-hungry, time-consuming, and introduces artefacts that reduce quality.

    It would indeed be a shame to have to switch to OpenGL, but if that's what I have to do then so be it...

    thanks

    ash
Page 1 of 1 (7 items) Previous Next