class RingBufferRecorder

Defined at line 280 of file ../../src/media/audio/drivers/lib/inspect/recorder.h

Public Methods

void RingBufferRecorder (RingBufferSpecification * ring_buffer_spec, inspect::Node node, const zx::time & created_at)

Defined at line 275 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordDestructionTime (const zx::time & destroyed_at)

Defined at line 282 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordStartTime (const zx::time & started_at)

This captures the current startup_task_save_count_ and final_task_save_count_ for this interval.

Defined at line 287 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordStopTime (const zx::time & stopped_at)

Defined at line 303 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void SaveStartupAndFinalTaskMetrics (size_t startup_task_save_count, size_t final_task_save_count)

Set the values that are captured into a RunningInterval at creation (upon RecordStartTime call).

Can be called multiple times; does not affect a currently-active RunningInterval.

Defined at line 312 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordTaskMetrics (const Subtask::Metrics & metrics)

Defined at line 318 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordTaskUnderrun (int64_t underrun_frames)

Defined at line 338 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordTaskOverrun (int64_t overrun_frames)

Defined at line 345 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordDroppedTransfer ()

Defined at line 352 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordActiveChannelsCall (uint64_t active_channels_bitmask, const zx::time & set_active_channels_called_at, const zx::time & active_channels_completed_at)

Defined at line 359 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void SetupBufferTracker (const std::string & name, std::optional<uint32_t> max_buffer_count, std::optional<zx::duration> per_buffer_duration)

On some platforms, the ring buffer might be fed into hardware buffers. These methods enable

tracking of metrics associated with such hardware buffers.

Defined at line 372 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordBufferSubmission ()

Defined at line 383 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void RecordBufferCompletion ()

Defined at line 389 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void StartMonitoringOutstandingBufferCount ()

Should be called once a pipeline is "primed" with initial data, before streaming begins.

Defined at line 395 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void StopMonitoringOutstandingBufferCount ()

Should be called once a pipeline is no longer streaming, before it "drains".

Defined at line 401 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc

void SetTaskScheduleInterval (zx::duration interval)

Sets the expected interval between tasks. This is used to calculate

scheduling delay metrics.

Defined at line 408 of file ../../src/media/audio/drivers/lib/inspect/recorder.cc