views:

18

answers:

1

Please pardon the naivety of this question. It's 2:00 AM.

In doing some performance monitoring of a multi-threaded application I was playing with (.NET, C#), I realized that the loop in a time-sensitive worker thread would be interrupted on occasion. Makes sense, there are many threads the OS needs to tend to. This affects the consistent performance of the worker thread.

If that is true, how is full-motion video (assuming 30 FPS or greater) achieved? If the rendering is going to be regularly and unpredictably interrupted, wouldn't we notice? I'm thinking of when I watch a movie in VLC as I type this.

Please avoid any answers that involve DirectX. I'm looking for an understanding outside of that platform.

+2  A: 

In Vista streaming such as video and audio get a special priority from the OS, causing them to be able to get more attention from the CPU then any 'other' thread. This was done specially to improve the quality of the audio/video.

Tony
Correct you are:http://technet.microsoft.com/en-us/magazine/2007.02.vistakernel.aspx
oakskc