libjpegrecoverymap: refactor of public APIs
1. Add color space enumerator and add this field to
jpegr_compressed/uncompressed_struct
2. Add EXIF structure and add this field to encode/decode methods.
3. Add request_sdr flag in the decode API.
4. Add quality parameter in the encode API.
5. Change in comments.
Bug: b/252835416
Test: build
Change-Id: Ic28041cd7ba2500dc9e8608aeb273fa79a8b2fd1
diff --git a/libs/jpegrecoverymap/recoverymap.cpp b/libs/jpegrecoverymap/recoverymap.cpp
index 67c23e9..7cedae9 100644
--- a/libs/jpegrecoverymap/recoverymap.cpp
+++ b/libs/jpegrecoverymap/recoverymap.cpp
@@ -20,13 +20,20 @@
status_t RecoveryMap::encodeJPEGR(jr_uncompressed_ptr uncompressed_p010_image,
jr_uncompressed_ptr uncompressed_yuv_420_image,
- void* dest) {
+ void* dest,
+ int quality,
+ jr_exif_ptr /* exif */,
+ float /* hdr_ratio */) {
if (uncompressed_p010_image == nullptr
|| uncompressed_yuv_420_image == nullptr
|| dest == nullptr) {
return ERROR_JPEGR_INVALID_NULL_PTR;
}
+ if (quality < 0 || quality > 100) {
+ return ERROR_JPEGR_INVALID_INPUT_TYPE;
+ }
+
// TBD
return NO_ERROR;
}
@@ -34,7 +41,8 @@
status_t RecoveryMap::encodeJPEGR(jr_uncompressed_ptr uncompressed_p010_image,
jr_uncompressed_ptr uncompressed_yuv_420_image,
void* compressed_jpeg_image,
- void* dest) {
+ void* dest,
+ float /* hdr_ratio */) {
if (uncompressed_p010_image == nullptr
|| uncompressed_yuv_420_image == nullptr
@@ -49,7 +57,8 @@
status_t RecoveryMap::encodeJPEGR(jr_uncompressed_ptr uncompressed_p010_image,
void* compressed_jpeg_image,
- void* dest) {
+ void* dest,
+ float /* hdr_ratio */) {
if (uncompressed_p010_image == nullptr
|| compressed_jpeg_image == nullptr
|| dest == nullptr) {
@@ -60,7 +69,10 @@
return NO_ERROR;
}
-status_t RecoveryMap::decodeJPEGR(void* compressed_jpegr_image, jr_uncompressed_ptr dest) {
+status_t RecoveryMap::decodeJPEGR(void* compressed_jpegr_image,
+ jr_uncompressed_ptr dest,
+ jr_exif_ptr /* exif */,
+ bool /* request_sdr */) {
if (compressed_jpegr_image == nullptr || dest == nullptr) {
return ERROR_JPEGR_INVALID_NULL_PTR;
}