| // Copyright 2016 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Internal message types that should not be seen outside the protocol |
| // directory. |
| |
| syntax = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| package remoting; |
| |
| // Next Id: 19 |
| message FrameStatsMessage { |
| // Frame ID. |
| optional uint32 frame_id = 1; |
| |
| // Frame size. |
| optional int32 frame_size = 2; |
| |
| // Id of the last event that was injected before this frame was captured. |
| optional int64 latest_event_timestamp = 3; |
| |
| // Time from when the last event was injected until capturing has started. |
| optional int32 capture_pending_time_ms = 4; |
| |
| // Time in milliseconds spent in capturing this video frame. |
| optional int32 capture_time_ms = 5; |
| |
| // Total overhead time for IPC and threading when capturing frames. |
| optional int32 capture_overhead_time_ms = 6; |
| |
| // Time between when the frame was captured and when encoding started. |
| optional int32 encode_pending_time_ms = 7; |
| |
| // Time in milliseconds spent in encoding this video frame. |
| optional int32 encode_time_ms = 8; |
| |
| // Time for which the frame is blocked until it's sent to the client. |
| optional int32 send_pending_time_ms = 9; |
| |
| // Current network RTT estimate. |
| optional int32 rtt_estimate_ms = 10; |
| |
| // Current bandwidth estimate in kb/s. |
| optional int32 bandwidth_estimate_kbps = 11; |
| |
| // The capturer Id to indicate the implementation of ScreenCapturer that |
| // generates this frame. |
| optional uint32 capturer_id = 12; |
| |
| // A simple indication of the quality of the frame, scored between 0 and 100, |
| // with 100 representing a lossless encoded frame. |
| optional uint32 frame_quality = 13; |
| |
| // The screen ID of the desktop-capturer that captured this frame. The value |
| // matches the corresponding field of the VideoTrackLayout for the stream. |
| optional int64 screen_id = 14; |
| |
| // Codec used to encode the frame. |
| enum VideoCodec { |
| UNKNOWN = 0; |
| VP8 = 1; |
| VP9 = 2; |
| AV1 = 3; |
| H264 = 4; |
| } |
| optional VideoCodec codec = 15 [default = UNKNOWN]; |
| |
| // Video codec profile. |
| optional int32 profile = 16; |
| |
| // Estimated width/height of the areas of screen that have changed since |
| // last frame. |
| optional int32 encoded_rect_width = 17; |
| optional int32 encoded_rect_height = 18; |
| } |