HEIF decoder: support 10-bit color format
Bug: b/201083499
Test: TBD
Change-Id: Id5fb35ce67cc895ea7e62e36853cd336e31ff3d8
diff --git a/media/libheif/HeifDecoderImpl.cpp b/media/libheif/HeifDecoderImpl.cpp
index fcac551..b28ae70 100644
--- a/media/libheif/HeifDecoderImpl.cpp
+++ b/media/libheif/HeifDecoderImpl.cpp
@@ -485,6 +485,11 @@
mOutputColor = HAL_PIXEL_FORMAT_BGRA_8888;
break;
}
+ case kHeifColorFormat_RGBA_1010102:
+ {
+ mOutputColor = HAL_PIXEL_FORMAT_RGBA_1010102;
+ break;
+ }
default:
ALOGE("Unsupported output color format %d", heifColor);
return false;
diff --git a/media/libheif/include/HeifDecoderAPI.h b/media/libheif/include/HeifDecoderAPI.h
index 9073672..fa51aef 100644
--- a/media/libheif/include/HeifDecoderAPI.h
+++ b/media/libheif/include/HeifDecoderAPI.h
@@ -23,9 +23,10 @@
* The output color pixel format of heif decoder.
*/
typedef enum {
- kHeifColorFormat_RGB565 = 0,
- kHeifColorFormat_RGBA_8888 = 1,
- kHeifColorFormat_BGRA_8888 = 2,
+ kHeifColorFormat_RGB565 = 0,
+ kHeifColorFormat_RGBA_8888 = 1,
+ kHeifColorFormat_BGRA_8888 = 2,
+ kHeifColorFormat_RGBA_1010102 = 3,
} HeifColorFormat;
/*