diff --git a/src/android/camera_device.cpp b/src/android/camera_device.cpp
index ded57649..0dcfc880 100644
--- a/src/android/camera_device.cpp
+++ b/src/android/camera_device.cpp
@@ -311,7 +311,7 @@ CameraDevice::Camera3RequestDescriptor::~Camera3RequestDescriptor() = default;
 
 CameraDevice::CameraDevice(unsigned int id, std::shared_ptr<Camera> camera)
 	: id_(id), running_(false), camera_(std::move(camera)),
-	  facing_(CAMERA_FACING_FRONT), orientation_(0)
+	  facing_(CAMERA_FACING_FRONT), orientation_(0), lastResultTimestamp_(0)
 {
 	camera_->requestCompleted.connect(this, &CameraDevice::requestComplete);
 
@@ -1339,6 +1339,7 @@ const camera_metadata_t *CameraDevice::getStaticMetadata()
 		ANDROID_REQUEST_PIPELINE_DEPTH,
 		ANDROID_SCALER_CROP_REGION,
 		ANDROID_SENSOR_EXPOSURE_TIME,
+		ANDROID_SENSOR_FRAME_DURATION,
 		ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,
 		ANDROID_SENSOR_TEST_PATTERN_MODE,
 		ANDROID_SENSOR_TIMESTAMP,
@@ -1944,6 +1945,7 @@ void CameraDevice::requestComplete(Request *request)
 	 */
 	uint64_t timestamp = buffers.begin()->second->metadata().timestamp;
 	resultMetadata = getResultMetadata(*descriptor, timestamp);
+	lastResultTimestamp_ = timestamp;
 
 	/* Handle any JPEG compression. */
 	for (camera3_stream_buffer_t &buffer : descriptor->buffers_) {
@@ -2074,7 +2076,7 @@ CameraDevice::getResultMetadata(const Camera3RequestDescriptor &descriptor,
 	 * Total bytes for JPEG metadata: 82
 	 */
 	std::unique_ptr<CameraMetadata> resultMetadata =
-		std::make_unique<CameraMetadata>(44, 166);
+		std::make_unique<CameraMetadata>(45, 174);
 	if (!resultMetadata->isValid()) {
 		LOG(HAL, Error) << "Failed to allocate result metadata";
 		return nullptr;
@@ -2197,6 +2199,13 @@ CameraDevice::getResultMetadata(const Camera3RequestDescriptor &descriptor,
 	value = ANDROID_NOISE_REDUCTION_MODE_OFF;
 	resultMetadata->addEntry(ANDROID_NOISE_REDUCTION_MODE, &value, 1);
 
+	/*
+	 * \todo Use sliding window average
+	 * int64_t value64 = timestamp - lastResultTimestamp_;
+	 */
+	int64_t value64 = 33333333;
+	resultMetadata->addEntry(ANDROID_SENSOR_FRAME_DURATION, &value64, 1);
+
 	/* 33.3 msec */
 	const int64_t rolling_shutter_skew = 33300000;
 	resultMetadata->addEntry(ANDROID_SENSOR_ROLLING_SHUTTER_SKEW,
diff --git a/src/android/camera_device.h b/src/android/camera_device.h
index 388acf51..dc03a038 100644
--- a/src/android/camera_device.h
+++ b/src/android/camera_device.h
@@ -131,6 +131,8 @@ private:
 
 	unsigned int maxJpegBufferSize_;
 
+	int64_t lastResultTimestamp_;
+
 	CameraMetadata lastSettings_;
 };
 
