PipeWire: spa_io_clock Struct Reference

PipeWire 1.0.3

Loading...
Searching...
No Matches
Data Fields
spa_io_clock Struct Reference
SPA » Node

Absolute time reporting. More...

`#include <spa/node/io.h>`

## Data Fields
uint32_t | flags
| clock flags
uint32_t | id
| unique clock id, set by application
uint64_t | nsec
| time in nanoseconds against monotonic clock
struct spa_fraction | rate
| rate for position/duration/delay/xrun
uint64_t | position
| current position
uint64_t | duration
| duration of current cycle
int64_t | delay
| delay between position and hardware, positive for capture, negative for playback
double | rate_diff
| rate difference between clock and monotonic time
uint64_t | next_nsec
| estimated next wakeup time in nanoseconds
struct spa_fraction | target_rate
| target rate of next cycle
uint64_t | target_duration
| target duration of next cycle
uint32_t | target_seq
| seq counter.
uint32_t | padding
uint64_t | xrun
| estimated accumulated xrun duration

## Detailed Description

Absolute time reporting.

Nodes that can report clocking information will receive this io block. The application sets the id. This is usually set as part of the position information but can also be set separately.

The clock counts the elapsed time according to the clock provider since the provider was last started.

## Field Documentation

## ◆ flags

uint32_t spa_io_clock::flags

clock flags

## ◆ id

uint32_t spa_io_clock::id

unique clock id, set by application

## ◆ nsec

uint64_t spa_io_clock::nsec

time in nanoseconds against monotonic clock

## ◆ rate

struct spa_fraction spa_io_clock::rate

rate for position/duration/delay/xrun

## ◆ position

uint64_t spa_io_clock::position

current position

## ◆ duration

uint64_t spa_io_clock::duration

duration of current cycle

Examples
  audio-dsp-filter.c, and audio-dsp-src.c.

## ◆ delay

int64_t spa_io_clock::delay

delay between position and hardware, positive for capture, negative for playback

## ◆ rate_diff

double spa_io_clock::rate_diff

rate difference between clock and monotonic time

## ◆ next_nsec

uint64_t spa_io_clock::next_nsec

estimated next wakeup time in nanoseconds

## ◆ target_rate

struct spa_fraction spa_io_clock::target_rate

target rate of next cycle

## ◆ target_duration

uint64_t spa_io_clock::target_duration

target duration of next cycle

## ◆ target_seq

uint32_t spa_io_clock::target_seq

seq counter.

must be equal at start and end of read and lower bit must be 0

## ◆ padding

uint32_t spa_io_clock::padding

## ◆ xrun

uint64_t spa_io_clock::xrun

estimated accumulated xrun duration

The documentation for this struct was generated from the following file:

- spa/node/io.h