mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-12-18 08:56:45 -05:00
alsa: refuse quantum/rate changes when driving irq based
This commit is contained in:
parent
4e1c64df19
commit
6bf42e9bcd
1 changed files with 9 additions and 2 deletions
|
|
@ -2205,8 +2205,15 @@ static inline int check_position_config(struct state *state)
|
||||||
if (SPA_UNLIKELY(state->position == NULL))
|
if (SPA_UNLIKELY(state->position == NULL))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
target_duration = state->position->clock.target_duration;
|
if (state->disable_tsched && state->started && !state->following) {
|
||||||
target_rate = state->position->clock.target_rate;
|
target_duration = state->period_frames;
|
||||||
|
target_rate = SPA_FRACTION(1, state->rate);
|
||||||
|
state->position->clock.target_duration = target_duration;
|
||||||
|
state->position->clock.target_rate = target_rate;
|
||||||
|
} else {
|
||||||
|
target_duration = state->position->clock.target_duration;
|
||||||
|
target_rate = state->position->clock.target_rate;
|
||||||
|
}
|
||||||
|
|
||||||
if (SPA_UNLIKELY((state->duration != target_duration) ||
|
if (SPA_UNLIKELY((state->duration != target_duration) ||
|
||||||
(state->rate_denom != target_rate.denom))) {
|
(state->rate_denom != target_rate.denom))) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue