The attached patch adds a new ioctl that transfers a yuv image to the
display. This is used by the Xdriver to implement Xv support.
The yuv buffer will have been transferred to the display before the ioctl
returns and is done just after the vsync interrupt so there should be no
tearing.
The ioctl structure takes several parameters which are currently
unused but I think should allow me to move more work in the future from the
Xdriver copying data around memory to the ivtv driver setting up the dma
transfers appropriately.
For now the data has to be in the Hauppauge format and match the screen
resolution (720x576 or 720 x 480).
There is a requirement for the mpeg decoder to be initialised before this
works and with this patch /dev/vide48 will fail to open until this has been
done.
Following this I will send out the updated X driver which implements
an Xv driver for YV12 data. It does all the appropriate alpha switching so
mplayer -vo xv foo.mpg
should just work.
I haven't tested this with NTSC yet so there may be problems there but they
will most likely be in the Xv driver.
The Xv driver should compile with older versions of ivtv and just not put in
the Xv support. It will also try to fail reasonably gracefully with older
version of ivtv if the code is enabled at compile time.
Any problems please let me know.
John
ivtv-0.3.4p.diffs.gz
Description: GNU Zip compressed data
