I444ToABGR for skcanvas in one step.
libyuv supported I444ToARGB in the past, but not ABGR, so it was a 2 step process. libyuv r1487 supports I444ToABGR in one step. BUG=libyuv:490 Review URL: https://codereview.chromium.org/1357943003 Cr-Commit-Position: refs/heads/master@{#350282}
This commit is contained in:
@ -27,6 +27,7 @@
|
||||
SK_A32_SHIFT == 24
|
||||
#define LIBYUV_I420_TO_ARGB libyuv::I420ToARGB
|
||||
#define LIBYUV_I422_TO_ARGB libyuv::I422ToARGB
|
||||
#define LIBYUV_I444_TO_ARGB libyuv::I444ToARGB
|
||||
#define LIBYUV_I420ALPHA_TO_ARGB libyuv::I420AlphaToARGB
|
||||
#define LIBYUV_J420_TO_ARGB libyuv::J420ToARGB
|
||||
#define LIBYUV_H420_TO_ARGB libyuv::H420ToARGB
|
||||
@ -34,6 +35,7 @@
|
||||
SK_A32_SHIFT == 24
|
||||
#define LIBYUV_I420_TO_ARGB libyuv::I420ToABGR
|
||||
#define LIBYUV_I422_TO_ARGB libyuv::I422ToABGR
|
||||
#define LIBYUV_I444_TO_ARGB libyuv::I444ToABGR
|
||||
#define LIBYUV_I420ALPHA_TO_ARGB libyuv::I420AlphaToABGR
|
||||
#define LIBYUV_J420_TO_ARGB libyuv::J420ToABGR
|
||||
#define LIBYUV_H420_TO_ARGB libyuv::H420ToABGR
|
||||
@ -512,7 +514,7 @@ void SkCanvasVideoRenderer::ConvertVideoFrameToRGBPixels(
|
||||
break;
|
||||
|
||||
case PIXEL_FORMAT_YV24:
|
||||
libyuv::I444ToARGB(
|
||||
LIBYUV_I444_TO_ARGB(
|
||||
video_frame->visible_data(VideoFrame::kYPlane),
|
||||
video_frame->stride(VideoFrame::kYPlane),
|
||||
video_frame->visible_data(VideoFrame::kUPlane),
|
||||
@ -523,15 +525,6 @@ void SkCanvasVideoRenderer::ConvertVideoFrameToRGBPixels(
|
||||
row_bytes,
|
||||
video_frame->visible_rect().width(),
|
||||
video_frame->visible_rect().height());
|
||||
#if SK_R32_SHIFT == 0 && SK_G32_SHIFT == 8 && SK_B32_SHIFT == 16 && \
|
||||
SK_A32_SHIFT == 24
|
||||
libyuv::ARGBToABGR(static_cast<uint8*>(rgb_pixels),
|
||||
row_bytes,
|
||||
static_cast<uint8*>(rgb_pixels),
|
||||
row_bytes,
|
||||
video_frame->visible_rect().width(),
|
||||
video_frame->visible_rect().height());
|
||||
#endif
|
||||
break;
|
||||
case PIXEL_FORMAT_NV12:
|
||||
case PIXEL_FORMAT_NV21:
|
||||
|
Reference in New Issue
Block a user