[mythtv-commits] Ticket #2381: Add support for CoreVideo when displaying on Mac OS X

MythTV mythtv at cvs.mythtv.org
Wed Sep 13 19:00:12 UTC 2006


#2381: Add support for CoreVideo when displaying on Mac OS X
-----------------------------+----------------------------------------------
 Reporter:  awk at awkward.org  |       Owner:  ijr    
     Type:  patch            |      Status:  new    
 Priority:  minor            |   Milestone:  unknown
Component:  mythtv           |     Version:  head   
 Severity:  medium           |  
-----------------------------+----------------------------------------------
 The attached patch implements a VideoOut class using CoreVideo and OpenGL
 instead of QuickTime/QuickDraw. This is a more 'forward looking' approach
 to presenting video in Mac OS X.

 Although at the moment it shows no particular performance advantage over
 the QuickTime approach (since QT uses ostensibly the same code path to do
 the actual drawing) this code should offer more future enhancements. For
 example CoreImage filters can now be run on the video stream and the OSD
 display could in the future be composited onto the display in RGB space
 rather than the YUV conversion that is currently performed to draw the OSD
 'in line' with the video image.

 This patch seems to work well for me - even in it's currently limited
 state however it needs additional work to implement PIP support. I'm also
 planning on updating the current 'usleep/busy wait' timing method to use
 the CoreVideo display link mechanism to provide notifications as to when
 to draw the next frame.

 I can't yet see any evidence of anyone else implementing YUV420(YCbCr420)
 -> YUV422(YCbCr422) CoreImage filters or a CoreImage deinterlace filter
 but it's certainly possible such items could appear in the future. Doing
 the colorspace conversion entirely on the card would definately yield some
 further performance improvements.

 Note that videoout_corevideo doesn't implement any of the 'cute' features
 of videoout_quartz such as video in the dock or in a transparent window -
 those settings are ignored.

-- 
Ticket URL: <http://svn.mythtv.org/trac/ticket/2381>
MythTV <http://www.mythtv.org/>
MythTV


More information about the mythtv-commits mailing list