From ba41b40461df191624c61f0c98ae76e69fe1d46b Mon Sep 17 00:00:00 2001 From: Andreas Pehrson Date: Fri, 27 Jan 2023 15:13:35 +0100 Subject: [PATCH] webrtc_libyuv: Add support for more video types for consistency MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: webrtc:14830 Change-Id: I0998fb04a03745131f9f5cca878b0cdb46f3b62b Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/291529 Reviewed-by: Erik Språng Commit-Queue: Ilya Nikolaevskiy Reviewed-by: Ilya Nikolaevskiy Cr-Commit-Position: refs/heads/main@{#39940} --- common_video/libyuv/include/webrtc_libyuv.h | 2 ++ common_video/libyuv/webrtc_libyuv.cc | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/common_video/libyuv/include/webrtc_libyuv.h b/common_video/libyuv/include/webrtc_libyuv.h index 08a035a8d7..68831c70ab 100644 --- a/common_video/libyuv/include/webrtc_libyuv.h +++ b/common_video/libyuv/include/webrtc_libyuv.h @@ -32,7 +32,9 @@ enum class VideoType { kI420, kIYUV, kRGB24, + kBGR24, kARGB, + kABGR, kRGB565, kYUY2, kYV12, diff --git a/common_video/libyuv/webrtc_libyuv.cc b/common_video/libyuv/webrtc_libyuv.cc index 46322501ad..31ba1feca3 100644 --- a/common_video/libyuv/webrtc_libyuv.cc +++ b/common_video/libyuv/webrtc_libyuv.cc @@ -36,9 +36,11 @@ size_t CalcBufferSize(VideoType type, int width, int height) { case VideoType::kUYVY: return width * height * 2; case VideoType::kRGB24: + case VideoType::kBGR24: return width * height * 3; case VideoType::kBGRA: case VideoType::kARGB: + case VideoType::kABGR: return width * height * 4; case VideoType::kMJPEG: case VideoType::kUnknown: @@ -90,6 +92,10 @@ int ConvertVideoType(VideoType video_type) { return libyuv::FOURCC_YV12; case VideoType::kRGB24: return libyuv::FOURCC_24BG; + case VideoType::kBGR24: + return libyuv::FOURCC_RAW; + case VideoType::kABGR: + return libyuv::FOURCC_ABGR; case VideoType::kRGB565: return libyuv::FOURCC_RGBP; case VideoType::kYUY2: