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: