On Thu, 22 Mar 2007, Koen De Vleeschauwer wrote:
I believe video players usually use the sound card as timing source,
otherwise they'd have to compensate for the difference between the sound
card's clock and system/graphics clock by resampling the sound.
If you're watching a live broadcast, the video decoding in the TV receiver has
to be synchronous with the video encoding TV transmitter.
The slightest difference in clock would case video frames to be missed or
skipped in the long term. The same clock reference is also used for audio/video
synchronisation (lip sync).
This is the System Clock Reference/Program Clock Reference mechanism.
I thought mplayer uses the sound card timer as System Clock Reference.
I assume this is because what is really needed to locally re-create the system
clock - a 27 MHz voltage-controlled crystal oscillator - is not generally
available on PC hardware.
If one looks at
http://www.linuxtv.org/wiki/index.php/The_DVB_Decoder_Challenge there is a
very good summary of problems in DVB decoding on computer. Audio
resampling is the way to go and it is way more simple than frame rate
resampling. For frame rate resampling there must be motion compensation
and such, so very coplicated and resource wasting. A good example of that
topology seems to be NVidia 'PureVideo' (tm).
IMHO the final product just have to have a driver hook for runtime
fine tuning of pixel frequency. If the clock synthesizer only allows
certain too coarse steps, then some kind of fractional division scheme
could work as phase noise isn't that important here.
I think Timothy was going for variable blanking period as a solution last
time I made noise about the problem. That needs to be tested on real
monitors to make sure that picture wont jump. Variable Vblank is really
elegant if it works well. I've actually tested 27 MHz VCO on an old Matrox
for analog video deinterlacing/upscaling and it was great, but not too
digital apart from frequency division by 1728 (27 MHz / 15625 Hz).
-Vesa
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)