Skip to content

Commit

Permalink
fix(audio): Fix audio watcher busy looping
Browse files Browse the repository at this point in the history
  • Loading branch information
The-personified-devil committed Sep 2, 2024
1 parent 707b41a commit 1e252ed
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions alvr/audio/src/linux.rs
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ use pipewire::{
},
stream::{StreamFlags, StreamListener, StreamState},
};
use std::{cmp, collections::VecDeque, sync::Arc, thread};
use std::{cmp, collections::VecDeque, sync::Arc, thread, time::Duration};
struct Terminate;

pub fn play_microphone_loop_pipewire(
Expand Down Expand Up @@ -218,7 +218,9 @@ pub fn record_audio_blocking_pipewire(
let is_running_clone_for_pw_terminate: Arc<dyn Fn() -> bool + Send + Sync> =
Arc::clone(&is_running);
thread::spawn(move || {
while is_running_clone_for_pw_terminate() {}
while is_running_clone_for_pw_terminate() {
thread::sleep(Duration::from_millis(500));
}
if pw_sender.send(Terminate).is_err() {
error!(
"Couldn't send pipewire termination signal, deinitializing forcefully.
Expand Down

0 comments on commit 1e252ed

Please sign in to comment.