summaryrefslogtreecommitdiff
path: root/gralloc/QtiGralloc.cpp
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2022-09-28 23:03:27 -0700
committerLinux Build Service Account <lnxbuild@localhost>2022-09-28 23:03:27 -0700
commitceb02290540ea37f3a60d25e21810562c5c84996 (patch)
tree27e6cb7e5682d101ff45e5c5267faf0d320af7e2 /gralloc/QtiGralloc.cpp
parent0cf818d5e8cf92c34df00924ce7e9d4772989d71 (diff)
parent9cf3017b600c9fd71b3ce4a9a190509d42f08f45 (diff)
Merge 9cf3017b600c9fd71b3ce4a9a190509d42f08f45 on remote branch
Change-Id: I32759026e541117b3b7d248e3011435341887e73
Diffstat (limited to 'gralloc/QtiGralloc.cpp')
-rw-r--r--gralloc/QtiGralloc.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/gralloc/QtiGralloc.cpp b/gralloc/QtiGralloc.cpp
index 954c46d..e71e545 100644
--- a/gralloc/QtiGralloc.cpp
+++ b/gralloc/QtiGralloc.cpp
@@ -164,6 +164,23 @@ Error encodeVideoHistogramMetadata(VideoHistogramMetadata &in, hidl_vec<uint8_t>
return Error::NONE;
}
+Error decodeVideoTranscodeStatsMetadata(hidl_vec<uint8_t> &in, VideoTranscodeStatsMetadata *out) {
+ if (!in.size() || !out) {
+ return Error::BAD_VALUE;
+ }
+ memcpy(out, in.data(), sizeof(VideoTranscodeStatsMetadata));
+ return Error::NONE;
+}
+
+Error encodeVideoTranscodeStatsMetadata(VideoTranscodeStatsMetadata &in, hidl_vec<uint8_t> *out) {
+ if (!out) {
+ return Error::BAD_VALUE;
+ }
+ out->resize(sizeof(VideoTranscodeStatsMetadata));
+ memcpy(out->data(), &in, sizeof(VideoTranscodeStatsMetadata));
+ return Error::NONE;
+}
+
Error decodeVideoTimestampInfo(hidl_vec<uint8_t> &in, VideoTimestampInfo *out) {
if (!in.size() || !out) {
return Error::BAD_VALUE;
@@ -225,6 +242,8 @@ MetadataType getMetadataType(uint32_t in) {
return MetadataType_CVPMetadata;
case QTI_VIDEO_HISTOGRAM_STATS:
return MetadataType_VideoHistogramStats;
+ case QTI_VIDEO_TRANSCODE_STATS:
+ return MetadataType_VideoTranscodeStats;
case QTI_VIDEO_TS_INFO:
return MetadataType_VideoTimestampInfo;
case QTI_FD:
@@ -326,6 +345,10 @@ Error get(void *buffer, uint32_t type, void *param) {
err = decodeVideoHistogramMetadata(bytestream,
reinterpret_cast<VideoHistogramMetadata *>(param));
break;
+ case QTI_VIDEO_TRANSCODE_STATS:
+ err = decodeVideoTranscodeStatsMetadata(bytestream,
+ reinterpret_cast<VideoTranscodeStatsMetadata *>(param));
+ break;
case QTI_VIDEO_TS_INFO:
err = decodeVideoTimestampInfo(bytestream, reinterpret_cast<VideoTimestampInfo *>(param));
break;
@@ -449,6 +472,10 @@ Error set(void *buffer, uint32_t type, void *param) {
err = encodeVideoHistogramMetadata(*reinterpret_cast<VideoHistogramMetadata *>(param),
&bytestream);
break;
+ case QTI_VIDEO_TRANSCODE_STATS:
+ err = encodeVideoTranscodeStatsMetadata(
+ *reinterpret_cast<VideoTranscodeStatsMetadata *>(param), &bytestream);
+ break;
case QTI_VIDEO_TS_INFO:
err = encodeVideoTimestampInfo(*reinterpret_cast<VideoTimestampInfo *>(param), &bytestream);
break;