Merge "Convert output latency to ns" into androidx-main
diff --git a/camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/Camera2CameraController.kt b/camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/Camera2CameraController.kt
index 73d9cff..7160f4f 100644
--- a/camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/Camera2CameraController.kt
+++ b/camera/camera-camera2-pipe/src/main/java/androidx/camera/camera2/pipe/compat/Camera2CameraController.kt
@@ -230,8 +230,11 @@
 
     override fun getOutputLatency(streamId: StreamId?): StreamGraph.OutputLatency? {
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
-            return currentSession?.getRealtimeCaptureLatency().let {
-                StreamGraph.OutputLatency(it?.captureLatency ?: 0, it?.processingLatency ?: 0)
+            return currentSession?.getRealtimeCaptureLatency()?.let {
+                // Convert output latency to ns for consistency with stall duration.
+                val captureLatencyNs = it.captureLatency * MS_TO_NS
+                val processingLatencyNs = it.processingLatency * MS_TO_NS
+                StreamGraph.OutputLatency(captureLatencyNs, processingLatencyNs)
             }
         }
         return null
@@ -320,5 +323,6 @@
 
     companion object {
         private const val DISCONNECT_TIMEOUT_MS = 2_000L // 2s
+        private const val MS_TO_NS = 1_000_000
     }
 }