Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1172)

Unified Diff: media/gpu/v4l2_video_decode_accelerator.h

Issue 2408703002: V4L2VideoDecodeAccelerator: implement flush by VIDIOC_DECODER_CMD. (Closed)
Patch Set: rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: media/gpu/v4l2_video_decode_accelerator.h
diff --git a/media/gpu/v4l2_video_decode_accelerator.h b/media/gpu/v4l2_video_decode_accelerator.h
index fe15d6f0b69d1b72115f1970cabb9c30e81c7d28..a16dbb870ca8cd2fe958123c64f5309f3822b151 100644
--- a/media/gpu/v4l2_video_decode_accelerator.h
+++ b/media/gpu/v4l2_video_decode_accelerator.h
@@ -290,6 +290,8 @@ class MEDIA_GPU_EXPORT V4L2VideoDecodeAccelerator
// called any time a relevant queue could potentially be emptied: see
// function definition.
void NotifyFlushDoneIfNeeded();
+ // Returns true if V4L2_DEC_CMD_START and V4L2_DEC_CMD_STOP are supported.
+ bool DecoderCmdSupported();
// Reset() task. Drop all input buffers. If V4L2VDA is not doing resolution
// change or waiting picture buffers, call FinishReset.
@@ -449,8 +451,14 @@ class MEDIA_GPU_EXPORT V4L2VideoDecodeAccelerator
int decoder_decode_buffer_tasks_scheduled_;
// Picture buffers held by the client.
int decoder_frames_at_client_;
+
// Are we flushing?
bool decoder_flushing_;
+ // True if V4L2_DEC_CMD_START and V4L2_DEC_CMD_STOP are supported.
+ bool decoder_cmd_supported_;
+ // True if flushing is waiting for last output buffer.
+ bool flush_waiting_last_output_buffer_;
+
// Got a reset request while we were performing resolution change or waiting
// picture buffers.
bool reset_pending_;

Powered by Google App Engine
This is Rietveld 408576698