Hi there.. According to the Pulse documentation, there are 3 types of streams: http://freedesktop.org/software/pulseaudio/doxygen/streams.html Playback streams - Data flows from the client to the server. Record streams - Data flows from the server to the client. Upload streams - Similar to playback streams, but the data is stored in the sample cache. See Sample Cache for more information about controlling the sample cache. In the documentation for pa_stream_get_latency, one can read: http://freedesktop.org/software/pulseaudio/doxygen/stream_8h.html#aa521efcc16fe2abf0f8461462432ac16 "In case the stream is a monitoring stream the result can be negative, i.e. the captured samples are not yet played. In this case *negative is set to 1." So... What is a monitoring stream in this context? In a typical user application playing audio via pulse, (e.g. a playback streams) can pa_stream_get_latency ever return a negative latency ? Thanks JY