| 
    PipeWire 0.3.77
    
   | 
 
Absolute time reporting. More...
#include <spa/node/io.h>
Data Fields | |
| uint32_t | flags | 
| clock flags  More... | |
| uint32_t | id | 
| unique clock id, set by application  More... | |
| uint64_t | nsec | 
| time in nanoseconds against monotonic clock  More... | |
| struct spa_fraction | rate | 
| rate for position/duration/delay  More... | |
| uint64_t | position | 
| current position  More... | |
| uint64_t | duration | 
| duration of current cycle  More... | |
| int64_t | delay | 
| delay between position and hardware, positive for capture, negative for playback  More... | |
| double | rate_diff | 
| rate difference between clock and monotonic time  More... | |
| uint64_t | next_nsec | 
| estimated next wakeup time in nanoseconds  More... | |
| struct spa_fraction | target_rate | 
| target rate of next cycle  More... | |
| uint64_t | target_duration | 
| target duration of next cycle  More... | |
| uint32_t | target_seq | 
| seq counter.  More... | |
| uint32_t | padding [3] | 
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
| 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[3] |