mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-02 09:01:50 -05:00
alsa-seq: reset buffers
This commit is contained in:
parent
e04d58ee3a
commit
93a2defbb8
1 changed files with 12 additions and 0 deletions
|
|
@ -762,6 +762,15 @@ static void reset_buffers(struct seq_state *this, struct seq_port *port)
|
|||
}
|
||||
}
|
||||
}
|
||||
static void reset_stream(struct seq_state *this, struct seq_stream *stream)
|
||||
{
|
||||
uint32_t i;
|
||||
for (i = 0; i < MAX_PORTS; i++) {
|
||||
struct seq_port *port = &stream->ports[i];
|
||||
if (port->valid)
|
||||
reset_buffers(this, port);
|
||||
}
|
||||
}
|
||||
|
||||
static int set_timers(struct seq_state *state)
|
||||
{
|
||||
|
|
@ -797,6 +806,9 @@ int spa_alsa_seq_start(struct seq_state *state)
|
|||
if ((res = seq_start(state, &state->event)) < 0)
|
||||
return res;
|
||||
|
||||
reset_stream(state, &state->streams[SPA_DIRECTION_INPUT]);
|
||||
reset_stream(state, &state->streams[SPA_DIRECTION_OUTPUT]);
|
||||
|
||||
state->source.func = alsa_on_timeout_event;
|
||||
state->source.data = state;
|
||||
state->source.fd = state->timerfd;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue