
mythtv at cvs
Nov 22, 2009, 10:07 PM
Post #8 of 17
(1517 views)
Permalink
|
|
Re: Ticket #7519: Mac OS X 10.6.1 compile missing symbols related to mysql
[In reply to]
|
|
#7519: Mac OS X 10.6.1 compile missing symbols related to mysql ------------------------------------+--------------------------------------- Reporter: astralbodies@… | Owner: nigel Type: defect | Status: new Priority: critical | Milestone: 0.22 Component: Ports - OSX | Version: head Severity: medium | Mlocked: 0 ------------------------------------+--------------------------------------- Comment(by anonymous): - currently must add #include <qsize.h> to util-opengl.h (as of 11/22/09) before trunk will build - osx-packager.pl tries to pull mysql-5.0.85 which no longer is available -change to 5.0.88 - the above patches for 32-bit compilation are critical because !MythFrontEnd, like thousands of other Mac apps, uses Apple's Carbon API calls (that descend from the original 1980s Mac platform) and Apple chose not to support that API for use by 64-bit applications and instead emphasize it's somewhat redundant Cocoa API (that desceind from the original 1980s NeXT platform). Further, - MythTV use of qt-opensource-mac (32 bit) should be replaced with the new Cocoa-native version of "Qt for Mac" (32-bit) ( http://qt.nokia.com/products/platform/qt-for-mac ) because Nokia likely will or has discontinue(d) qt-opensource-mac. Simply transitioning to Cocoa-native Qt will not fully permit 64-bit Myth applications though. - It's important to complete the transition to 64-bit because Apple has only been selling 64-bit compatible Macs since October 2008 and starting with Mac OS X 10.6 Snow Leopard, the new system default will be 64-bit applications, so after a brief transition period, Apple has little incentive to continue paying to support 32-bit Carbon APIs. (Bear in mind that Apple makes most of its money from hardware, not software, sales --and 64-bit support in the applications is crucial to their customers realizing the full-value of the newer high-memory/cpu capacity Apple models.) - Thus to complete transition to 64-bit, aside from transition to Qt for Mac, as neil/astralbodies and others know, we need to fork the code so the Intel versions that make direct calls to 32-bit-only Carbon API (ie, to show/hide the Mac menu bar, etc..) instead call equivalent Cocoa or Quartz APIs (though it would be nice if the PowerPC version could remain indefinitely, especially in light of the three years of work they did on the DVD-hardware decode); however, - in Snow Leopard, there is a new Mac OS X API to allow general purpose code to run on the GPU (OpenCL) and to better exploit SMP (Grand Central Dispatch). But rather than re-factor the MythTV code to run in those APIs (thereby diverging significantly from the other platforms), it might make more sense to use another new feature of Snow Leopard, !QuickTime X, that already exploits the former two technologies. (See also http://www.apple.com/macosx/technology/ ) In other words, while removing all 32-bit-only Carbon code from the Intel-only version of MythTV, MythTV could replace the video-decode + playback feature with calls to !QuickTime X Internet Streaming, keeping the Qt-for-Mac on Cocoa code just for the non-playback UI. This might involve scaling the playback-window to inset within the Program Guide and rendering the !MythTV OSD (menu, guide, program-info but not closed-captioning) into the MPEG stream being fed to !QuickTime X (using some kind of software-genlock/multiplexer ala Video LAN Client does). - Lastly, if there is any hope of EVENTUALLY getting CableCARD or Switched Video support inside of MythTV (to enable playback of encrypted digital cable channels), it will likely be Mac-only and involve routing the video streams coming in from future APIs that pull from CableCARD/Switched Video USB-devices and implement !TiVo-like hardware encryption tied to the network adapter's MAC address and further encode the streams to require an HDCP playback device. Perhaps using !Quicktime X Internet Streaming as part of the transition to 64-bit native binaries would ease the transition to such future technologies. Further note that it might be possible for a third-party such as Elgato.com, or anyone else, to license CableCARD/Switched Video devices for use on Macs and export a post-DRM- only developer API using !QuickTime plug-ins even if Apple does not. Such an effort would be decidedly non-GPL/open source like much of the rest of Mac OS X (CoreVideo, CoreAudio, etc..) -- Ticket URL: <http://svn.mythtv.org/trac/ticket/7519#comment:7> MythTV <http://www.mythtv.org/> MythTV _______________________________________________ mythtv-commits mailing list mythtv-commits [at] mythtv http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-commits
|