[mythtv] Building 0.20svn on MacOS x86? Change reverted
Nigel Pearson
nigel at ind.tansu.com.au
Wed Jul 19 04:16:21 UTC 2006
>> So, now the conversion routine is set to NULL when altivec is not
>> available. The change before defaulted to a non altivec routine.
>> (shown here: http://www.mythtv.org/wiki/index.php/Myth_on_Mac_x86)
Isaac is right, 'twas never committed.
Todd, I suspect you must have had some of
those patches in your local SVN HEAD tree?
I didn't commit the patch on the Wiki
because I was never happy with it, and thought
it would wait until I got a Intel Core Mac to
do some testing on. That ain't happened yet,
so I will have to use my brain instead:
1) videoout_quartz.cpp and yuv2rgb.*
@ -1315,10 +1315,12 @@
data->windowedMode =
gContext->GetNumSetting("RunFrontendInWindow", 0);
data->correctGamma = gContext->GetNumSetting("MacGammaCorrect", 0);
+#ifdef HAVE_ALTIVEC
if (gContext->GetNumSetting("MacYuvConversion", 1))
data->yuvConverter = yuv2vuy_init_altivec();
else
- data->yuvConverter = NULL;
+#endif
+ data->yuvConverter = yuv2vuy_init_plain();
Note that on an AltiVec machine, if the user doesn't have
"Use Altivec-enhanced color space conversion" set then the
converter is still set to NULL, and there is no crashing.
Every occurrence of data->yuvConverter has an if around it.
I am at a loss to explain why this is needed?
2) libs/libavcodec/liba52/resample.c
@@ -13,14 +13,14 @@
#include "resample_c.c"
-#ifdef ARCH_X86
+#ifdef HAVE_MMX
#include "resample_mmx.c"
#endif
#endif
void* a52_resample_init(uint32_t mm_accel,int flags,int chans){
void* tmp;
-#ifdef ARCH_X86
+#ifdef HAVE_MMX
if(mm_accel&MM_ACCEL_X86_MMX){
tmp=a52_resample_MMX(flags,chans);
if(tmp){
mythtv-0.19/libs/libavcodec/msmpeg4.c
@@ -725,7 +725,7 @@
necessitate to modify mpegvideo.c. The problem comes from the
fact they decided to store the quantized DC (which would lead
to problems if Q could vary !) */
-#if (defined(ARCH_X86) || defined(ARCH_X86_64)) && !defined PIC
+#if defined(HAVE_MMX) && (defined(ARCH_X86) || defined(ARCH_X86_64))
&& !defined PIC
asm volatile(
"movl %3, %%eax \n\t"
Probably safe, but I don't understand why:
1) other non-MMX X86 users haven't complained about this.
2) it is even necessary, given that Intel Core cpus have MMX,
and the configure script seems to set HAVE_MMX on an Intel Mac
--
Nigel Pearson, nigel at ind.tansu.com.au|"Now the world has gone to bed,
Telstra Net. Eng., Sydney, Australia | Darkness won't engulf my head,
Office: 9202 3900 Fax: 9261 3912 | I can see by infrared,
Mobile: 0408 664435 Home: 9792 6998 | How I hate the night." -Marvin
More information about the mythtv-dev
mailing list