On Tue, Jan 20, 2009 at 05:21:53PM +0000, Tony Houghton wrote:
> Varying the output frame rate to keep in sync with the input stream is
> very clever, but I don't understand how it solves the problem of
> distinguishing between top and bottom fields to sync to.
surely you can distinguish top and bottom fields on older (pre-avivo)
Radeon cards. My vga-sync-fields patch exactly uses this feature:
---8<---
#define RADEON_CRTC_STATUS 0x005c
#define RADEON_CRTC_CURRENT_FIELD (1 << 3)
field = INREG(RADEON_CRTC_STATUS) & RADEON_CRTC_CURRENT_FIELD;
---8<---
BTW:
I meanwhile could port the Radeon VGA2SCART thing to Intel i9xx chipsets
too. Description of my Intel patch can be found here (sorry only in German):
patch version I:
http://www.vdr-portal.de/board/thread.php?postid=766459#post766459
patch version II:
http://www.vdr-portal.de/board/thread.php?postid=769703#post769703
For Intel chipsets you even don't have to tamper with kernel modules
like radeon-drm since they already have builtin some key features
needed for VGA2SCART frame rate control.
This way you now can build very cheap budget VDRs based on modern hardware
like Intel D945GCLF/D945GCLF2 or Pundit P5945GC. With SCART output quality
equaling a FF card but at fractional cost.
As with former Radeon vga-sync-fields patch even/odd fields are routed
straightly from softdecoder to VGA port. No software deinterlacing
takes place thus saving CPU power and resulting in an artifact free picture.
All you additionally need is a special VGA2SCART adapter cable like this:
http://www.vdr-portal.de/board/thread.php?postid=742945#post742945
Because VGA2SCART patches now appear to become more popular in this FF
dominated VDR-world:-) VDR distribution easy-vdr just started to integrate
Radeon and Intel VGA2SCART patches for everyone use. Please see also
http://www.easy-vdr.de/forum/index.php?board=63.0
It seems German related sites show more interest in VGA2SCART things. So
I did not spend further time to translate all things I developed for
VGA2SCART into english. Sorry for that;-)
Due to -ENOTIME I have not yet integrated my last Intel patches to
vga-sync-fields patch version found at
http://lowbyte.de/vga-sync-fields/
Cheers
Thomas