Index: chrome/gpu/arc_video_accelerator.h |
diff --git a/chrome/gpu/arc_video_accelerator.h b/chrome/gpu/arc_video_accelerator.h |
index 95bf81b59adf24c164198057fdde587fb51e1910..d379bcc3846649e61a4a2acff06c8d9897261abc 100644 |
--- a/chrome/gpu/arc_video_accelerator.h |
+++ b/chrome/gpu/arc_video_accelerator.h |
@@ -28,13 +28,8 @@ enum PortType { |
PORT_COUNT = 2, |
}; |
-enum BufferFlag { |
- BUFFER_FLAG_EOS = 1 << 0, |
-}; |
- |
struct BufferMetadata { |
int64_t timestamp = 0; // in microseconds |
- uint32_t flags = 0; // Flags defined in BufferFlag. |
uint32_t bytes_used = 0; |
}; |
@@ -102,6 +97,9 @@ class ArcVideoAccelerator { |
// Called as a completion notification for Reset(). |
virtual void OnResetDone() = 0; |
+ |
+ // Called as a completion notification for Flush(). |
+ virtual void OnFlushDone() = 0; |
}; |
// Initializes the ArcVideoAccelerator with specific configuration. This |
@@ -143,6 +141,11 @@ class ArcVideoAccelerator { |
// and there won't be more callbacks. |
virtual void Reset() = 0; |
+ // Flushes the accelerator. After all the output buffers pending decode have |
+ // been returned to client by OnBufferDone(), Client::OnFlushDone() will be |
+ // called. |
+ virtual void Flush() = 0; |
+ |
virtual ~ArcVideoAccelerator() {} |
}; |