1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 #ifndef MEDIA_BASE_YCBCR_TO_RGB565_H_
5 #define MEDIA_BASE_YCBCR_TO_RGB565_H_
6 #include "yuv_convert.h"
7 #include "mozilla/arm.h"
9 // It's currently only worth including this if we have NEON support.
10 #ifdef MOZILLA_MAY_SUPPORT_NEON
11 #define HAVE_YCBCR_TO_RGB565 1
18 #ifdef HAVE_YCBCR_TO_RGB565
19 // Convert a frame of YUV to 16 bit RGB565.
20 NS_GFX_(void) ConvertYCbCrToRGB565(const uint8
* yplane
,
33 // Used to test if we have an accelerated version.
34 NS_GFX_(bool) IsConvertYCbCrToRGB565Fast(int pic_x
,
40 // Scale a frame of YUV to 16 bit RGB565.
41 NS_GFX_(void) ScaleYCbCrToRGB565(const uint8_t *yplane
,
42 const uint8_t *uplane
,
43 const uint8_t *vplane
,
57 // Used to test if we have an accelerated version.
58 NS_GFX_(bool) IsScaleYCbCrToRGB565Fast(int source_x0
,
66 #endif // HAVE_YCBCR_TO_RGB565
70 } // namespace mozilla
72 #endif // MEDIA_BASE_YCBCR_TO_RGB565_H_