OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright 2012 The LibYuv Project Authors. All rights reserved. | 2 * Copyright 2012 The LibYuv Project Authors. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
551 } | 551 } |
552 #endif | 552 #endif |
553 #if defined(HAS_I422TORGB24ROW_NEON) | 553 #if defined(HAS_I422TORGB24ROW_NEON) |
554 if (TestCpuFlag(kCpuHasNEON)) { | 554 if (TestCpuFlag(kCpuHasNEON)) { |
555 I422ToRGB24Row = I422ToRGB24Row_Any_NEON; | 555 I422ToRGB24Row = I422ToRGB24Row_Any_NEON; |
556 if (IS_ALIGNED(width, 8)) { | 556 if (IS_ALIGNED(width, 8)) { |
557 I422ToRGB24Row = I422ToRGB24Row_NEON; | 557 I422ToRGB24Row = I422ToRGB24Row_NEON; |
558 } | 558 } |
559 } | 559 } |
560 #endif | 560 #endif |
561 #if defined(HAS_I422TORGB24ROW_MSA) | |
562 if (TestCpuFlag(kCpuHasMSA)) { | |
563 I422ToRGB24Row = I422ToRGB24Row_Any_MSA; | |
fbarchard1
2016/10/26 17:56:31
when doing RGB24, its good to do RAW at the same t
| |
564 if (IS_ALIGNED(width, 16)) { | |
565 I422ToRGB24Row = I422ToRGB24Row_MSA; | |
566 } | |
567 } | |
568 #endif | |
561 | 569 |
562 for (y = 0; y < height; ++y) { | 570 for (y = 0; y < height; ++y) { |
563 I422ToRGB24Row(src_y, src_u, src_v, dst_rgb24, yuvconstants, width); | 571 I422ToRGB24Row(src_y, src_u, src_v, dst_rgb24, yuvconstants, width); |
564 dst_rgb24 += dst_stride_rgb24; | 572 dst_rgb24 += dst_stride_rgb24; |
565 src_y += src_stride_y; | 573 src_y += src_stride_y; |
566 if (y & 1) { | 574 if (y & 1) { |
567 src_u += src_stride_u; | 575 src_u += src_stride_u; |
568 src_v += src_stride_v; | 576 src_v += src_stride_v; |
569 } | 577 } |
570 } | 578 } |
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1111 default: | 1119 default: |
1112 return -1; // unknown fourcc - return failure code. | 1120 return -1; // unknown fourcc - return failure code. |
1113 } | 1121 } |
1114 return r; | 1122 return r; |
1115 } | 1123 } |
1116 | 1124 |
1117 #ifdef __cplusplus | 1125 #ifdef __cplusplus |
1118 } // extern "C" | 1126 } // extern "C" |
1119 } // namespace libyuv | 1127 } // namespace libyuv |
1120 #endif | 1128 #endif |
OLD | NEW |