diff options
Diffstat (limited to 'source/convert_from.cc')
-rw-r--r-- | source/convert_from.cc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/source/convert_from.cc b/source/convert_from.cc index 6fa25323..cb5b4b51 100644 --- a/source/convert_from.cc +++ b/source/convert_from.cc @@ -302,6 +302,14 @@ int I420ToYUY2(const uint8_t* src_y, } } #endif +#if defined(HAS_I422TOYUY2ROW_MMI) + if (TestCpuFlag(kCpuHasMMI)) { + I422ToYUY2Row = I422ToYUY2Row_Any_MMI; + if (IS_ALIGNED(width, 8)) { + I422ToYUY2Row = I422ToYUY2Row_MMI; + } + } +#endif for (y = 0; y < height - 1; y += 2) { I422ToYUY2Row(src_y, src_u, src_v, dst_yuy2, width); @@ -381,6 +389,14 @@ int I422ToUYVY(const uint8_t* src_y, } } #endif +#if defined(HAS_I422TOUYVYROW_MMI) + if (TestCpuFlag(kCpuHasMMI)) { + I422ToUYVYRow = I422ToUYVYRow_Any_MMI; + if (IS_ALIGNED(width, 8)) { + I422ToUYVYRow = I422ToUYVYRow_MMI; + } + } +#endif for (y = 0; y < height; ++y) { I422ToUYVYRow(src_y, src_u, src_v, dst_uyvy, width); @@ -448,6 +464,14 @@ int I420ToUYVY(const uint8_t* src_y, } } #endif +#if defined(HAS_I422TOUYVYROW_MMI) + if (TestCpuFlag(kCpuHasMMI)) { + I422ToUYVYRow = I422ToUYVYRow_Any_MMI; + if (IS_ALIGNED(width, 8)) { + I422ToUYVYRow = I422ToUYVYRow_MMI; + } + } +#endif for (y = 0; y < height - 1; y += 2) { I422ToUYVYRow(src_y, src_u, src_v, dst_uyvy, width); |