Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This webpage shows layout of YV12 and other YUV formats | 5 // This webpage shows layout of YV12 and other YUV formats |
| 6 // http://www.fourcc.org/yuv.php | 6 // http://www.fourcc.org/yuv.php |
| 7 // The actual conversion is best described here | 7 // The actual conversion is best described here |
| 8 // http://en.wikipedia.org/wiki/YUV | 8 // http://en.wikipedia.org/wiki/YUV |
| 9 // excerpt from wiki: | 9 // excerpt from wiki: |
| 10 // These formulae are based on the NTSC standard; | 10 // These formulae are based on the NTSC standard; |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 66 #ifdef _OPENMP | 66 #ifdef _OPENMP |
| 67 #include <omp.h> | 67 #include <omp.h> |
| 68 #endif | 68 #endif |
| 69 | 69 |
| 70 #ifdef _DEBUG | 70 #ifdef _DEBUG |
| 71 #include "base/logging.h" | 71 #include "base/logging.h" |
| 72 #else | 72 #else |
| 73 #define DCHECK(a) | 73 #define DCHECK(a) |
| 74 #endif | 74 #endif |
| 75 | 75 |
| 76 // MMX for Windows, Linux and Mac. | 76 // MMX for Windows, Linux and Mac. |
|
Mark Mentovai
2009/05/06 16:18:16
This comment should say "on x86".
| |
| 77 // C++ code provided as a fall back. | 77 // C++ code provided as a fall back. |
| 78 // Compile with /DUSE_MMX=0 | 78 // Compile with /DUSE_MMX=0 |
| 79 #ifndef USE_MMX | 79 #ifndef USE_MMX |
| 80 | |
| 81 #ifdef ARCH_CPU_ARM_FAMILY | |
|
Mark Mentovai
2009/05/06 16:18:16
I think that this should be flipped, right? We wa
| |
| 82 #define USE_MMX 0 | |
| 83 #else | |
| 80 #define USE_MMX 1 | 84 #define USE_MMX 1 |
| 81 #endif | 85 #endif |
| 86 #endif | |
| 82 | 87 |
| 83 namespace media { | 88 namespace media { |
| 84 | 89 |
| 85 #if USE_MMX | 90 #if USE_MMX |
| 86 | 91 |
| 87 #define RGBY(i) { \ | 92 #define RGBY(i) { \ |
| 88 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ | 93 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ |
| 89 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ | 94 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ |
| 90 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ | 95 static_cast<int16>(1.164 * 64 * (i - 16) + 0.5), \ |
| 91 0 \ | 96 0 \ |
| (...skipping 571 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 663 (clip(C298b + cr) << 16) | | 668 (clip(C298b + cr) << 16) | |
| 664 0xff000000; | 669 0xff000000; |
| 665 | 670 |
| 666 rgb_buf += 8; // Advance 2 pixels. | 671 rgb_buf += 8; // Advance 2 pixels. |
| 667 } | 672 } |
| 668 } | 673 } |
| 669 #endif | 674 #endif |
| 670 | 675 |
| 671 | 676 |
| 672 } // namespace media | 677 } // namespace media |
| 673 | |
| OLD | NEW |