>it would be non-trivial, the codec only work with quicktime which is >not available for anything but macos and windows. in theory it would >be possible to make a binary compatibility system where you could run >osx binaries on linux similar to running linux binaries on freebsd. >but if the macosx quicktime is carbon that might not work, and since >it probably uses proprietary apple windowing system calls it would >never work on X. (unless you managed to make a shim for the entire >windowing system as well) > >the better way is to demand Open and Free standards, get the authors >of these movies to use an Open format which we can use and to avoid >sorenson and all other proprietary formats.
It may not be as complicated. It's probable that the codec actually don't make much proprietary calls as most QuickTime codecs are written in a very specific environement requiring only very few calls to be done outside, QuickTime itself does all of the hard work of feeding compressed datas, setting up the destination, scheduling frames in time, etc... I beleive all we need is a CFM runtime (be able to load & prepare CFM code fragments), and a few libs implementing enough for the Sorenson codec to work (probably only a few MacOS calls). Then wrap this into your favourite linux architecture, the wrapper taking care of calling the codec the way QT would do it. But don't expect as good performances as running on MacOS. MacOS video architecture supports all sorts of HW accelerations that X windows users can only dream of ;) (like bus mastering of YUV frames). One _BIG_ limitation we have today on PPC with anything like video playback is the PCI throughput. We have nothing like the Intel's MTRR hack to enable write combining (& burst) to the video memory. The only way we can cross the 22/24Mb sec barrier is by making parts of the framebuffer that hold the YUV images cachable. That would need both some kernel code to allow making cachable some bits of mmap'ed space, and some Xv ATI driver hacks to make use of this feature Another possibility would be to rework Xv so that it can take advantage of some of DRI features for bus mastering frames to card that support it. Ben.