openipc_video/api/stats.rs
1/// Cumulative decoder and backpressure statistics.
2#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)]
3pub struct DecoderStats {
4 /// Encoded access units offered to the decoder.
5 pub access_units_received: u64,
6 /// Access units accepted by the platform decoder.
7 pub access_units_submitted: u64,
8 /// Access units ignored while waiting for parameter sets or a keyframe.
9 pub waiting_drops: u64,
10 /// Access units dropped because the decoder queue was full.
11 pub backpressure_drops: u64,
12 /// Successful decoded frames received from the platform.
13 pub frames_decoded: u64,
14 /// Decoded frames replaced before the application consumed them.
15 pub output_drops: u64,
16 /// Synchronous or asynchronous platform decoder errors.
17 pub decode_errors: u64,
18 /// Number of decoder session configurations or reconfigurations.
19 pub reconfigurations: u64,
20 /// Frames currently owned by the platform decoder.
21 pub frames_in_flight: usize,
22 /// Most recent submit-to-output latency in microseconds.
23 pub last_decode_latency_us: u64,
24 /// Highest observed submit-to-output latency in microseconds.
25 pub max_decode_latency_us: u64,
26 /// Most recent native platform error code.
27 pub last_platform_status: Option<i32>,
28}