mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-04 13:30:12 -05:00
stream: fix writable size when no timing info received
Always report that we can write a buffer, even when we have not yet received timing info. Fixes stalled spotify. Fixes #238
This commit is contained in:
parent
653ae96b20
commit
df8ad59e37
1 changed files with 7 additions and 6 deletions
|
|
@ -1335,14 +1335,15 @@ size_t pa_stream_writable_size(PA_CONST pa_stream *s)
|
|||
PA_CHECK_VALIDITY_RETURN_ANY(s->context, s->direction != PA_STREAM_RECORD,
|
||||
PA_ERR_BADSTATE, (size_t) -1);
|
||||
|
||||
if (!s->have_time)
|
||||
return 0;
|
||||
|
||||
i = &s->timing_info;
|
||||
|
||||
if (s->have_time) {
|
||||
clock_gettime(CLOCK_MONOTONIC, &ts);
|
||||
now = SPA_TIMESPEC_TO_USEC(&ts);
|
||||
elapsed = pa_usec_to_bytes(now - SPA_TIMEVAL_TO_USEC(&i->timestamp), &s->sample_spec);
|
||||
} else {
|
||||
elapsed = 0;
|
||||
}
|
||||
|
||||
queued = i->write_index - SPA_MIN(i->read_index, i->write_index);
|
||||
queued -= SPA_MIN(queued, elapsed);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue