PipeWire 1.1.0
|
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 | |
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.
uint32_t spa_io_clock::flags |
clock flags
uint32_t spa_io_clock::id |
unique clock id, set by application
uint64_t spa_io_clock::nsec |
time in nanoseconds against monotonic clock
struct spa_fraction spa_io_clock::rate |
rate for position/duration/delay/xrun
uint64_t spa_io_clock::position |
current position
uint64_t spa_io_clock::duration |
duration of current cycle
int64_t spa_io_clock::delay |
delay between position and hardware, positive for capture, negative for playback
double spa_io_clock::rate_diff |
rate difference between clock and monotonic time
uint64_t spa_io_clock::next_nsec |
estimated next wakeup time in nanoseconds
struct spa_fraction spa_io_clock::target_rate |
target rate of next cycle
uint64_t spa_io_clock::target_duration |
target duration of next cycle
uint32_t spa_io_clock::target_seq |
seq counter.
must be equal at start and end of read and lower bit must be 0
uint32_t spa_io_clock::padding |
uint64_t spa_io_clock::xrun |
estimated accumulated xrun duration