[5058] | 1 | .TH "roar_vs_position" "3" "June 2011" "RoarAudio" "RoarAudio Programmer's Manual" |
---|
| 2 | |
---|
| 3 | .SH NAME |
---|
[5082] | 4 | roar_vs_position, roar_vs_latency, roar_vs_latency2 \- Get stream position information |
---|
[5058] | 5 | |
---|
| 6 | .SH SYNOPSIS |
---|
| 7 | |
---|
| 8 | #include <roaraudio.h> |
---|
| 9 | |
---|
| 10 | ssize_t roar_vs_position(roar_vs_t * vss, int backend, int * error); |
---|
| 11 | |
---|
| 12 | roar_mus_t roar_vs_latency(roar_vs_t * vss, int backend, int * error); |
---|
| 13 | |
---|
[5082] | 14 | roar_mus_t roar_vs_latency2(roar_vs_t * vss, int backend, int wait, int * error); |
---|
| 15 | |
---|
[5058] | 16 | .SH "DESCRIPTION" |
---|
| 17 | \fBroar_vs_position()\fR returns the current server site position of the stream plus |
---|
| 18 | the current offset for the selected backend. |
---|
| 19 | |
---|
| 20 | \fBroar_vs_latency()\fR returns the latency between the client site stream position and the server |
---|
| 21 | site position plus the latency by the backend. |
---|
| 22 | |
---|
| 23 | Use of roar_vs_latency() is not recommended as it requires the codec to use a true constant bit rate. |
---|
| 24 | |
---|
[5082] | 25 | \fBroar_vs_latency2()\fR is perfectly equivalent to roar_vs_latency() expect that it takes the additional |
---|
| 26 | parameter wait. The wait parameter may have the values ROAR_VS_WAIT, ROAR_VS_NOWAIT and ROAR_VS_ASYNC. |
---|
| 27 | If it is ROAR_VS_WAIT the function does the same as roar_vs_latency(). |
---|
| 28 | If the parameter is ROAR_VS_NOWAIT roar_vs_latency2() will return interpolated data based on old data collected |
---|
| 29 | by calls to roar_vs_latency(), roar_vs_latency2() or roar_vs_position(). |
---|
| 30 | ROAR_VS_ASYNC is used to trigger asyncron updates to this internal state. Asyncron operations need to be enabled |
---|
| 31 | before they can be used. See \fBroar_vs_ctl\fR(3). |
---|
| 32 | |
---|
[5058] | 33 | Calling these functions too often will result in bad performance and incorrect data |
---|
| 34 | (pool interval smaller than server response time). Polling up to 20 times per second shoudn't be a problem. |
---|
| 35 | |
---|
| 36 | .SH "PARAMETERS" |
---|
| 37 | .TP |
---|
| 38 | \fBvss\fR |
---|
| 39 | The VS object to be used. |
---|
| 40 | |
---|
| 41 | .TP |
---|
| 42 | \fBbackend\fR |
---|
| 43 | The backend used for correction. This can be a stream ID of the stream to use as backend or one of the special values |
---|
| 44 | defined by the constants ROAR_VS_BACKEND_*. |
---|
| 45 | ROAR_VS_BACKEND_NONE is used to ask for no correction. |
---|
| 46 | ROAR_VS_BACKEND_DEFAULT is used to ask for the default correction. This should be used in all common cases. |
---|
| 47 | ROAR_VS_BACKEND_FIRST is used to ask for correction based on the first primary stream on the same mixer. |
---|
| 48 | |
---|
| 49 | .TP |
---|
[5082] | 50 | \fBwait\fR |
---|
| 51 | Tells the API if the call should wait or not. Must be ROAR_VS_WAIT, ROAR_VS_NOWAIT or ROAR_VS_ASYNC. |
---|
| 52 | |
---|
| 53 | .TP |
---|
[5058] | 54 | \fBerror\fR |
---|
| 55 | This is a pointer to a integer used to store the error value in case of error. |
---|
| 56 | This can be NULL if not used but it is very recommended to use this error value to report |
---|
| 57 | good error messages to the user. |
---|
| 58 | |
---|
| 59 | .SH "RETURN VALUE" |
---|
| 60 | roar_vs_position() returns the stream position on success and \-1 on error. |
---|
| 61 | Stream position is the current position of the stream in units of samples (not frames!). |
---|
| 62 | |
---|
| 63 | roar_vs_latency() returns the stream latency on success and zero on error. However zero is a valid |
---|
| 64 | value. In case of error \fBerror\fR is set to the error. In case of no error but zero latency |
---|
| 65 | \fBerror\fR is cleared (set to ROAR_ERROR_NONE). |
---|
| 66 | Latency is retruned in mu-seconds (1/10^-6s). |
---|
| 67 | |
---|
| 68 | .SH "EXAMPLES" |
---|
| 69 | FIXME |
---|
| 70 | |
---|
| 71 | .SH "SEE ALSO" |
---|
| 72 | \fBroarvs\fR(7), |
---|
| 73 | \fBlibroar\fR(7), |
---|
| 74 | \fBRoarAudio\fR(7). |
---|
| 75 | |
---|
| 76 | .\" ll |
---|