This commit is contained in:
@@ -413,9 +413,15 @@ pub fn build_stream(
|
||||
},
|
||||
{
|
||||
let device_lost = Arc::clone(&device_lost);
|
||||
move |err| {
|
||||
move |err: cpal::StreamError| {
|
||||
eprintln!("input stream error: {err}");
|
||||
device_lost.store(true, Ordering::Release);
|
||||
match err {
|
||||
cpal::StreamError::DeviceNotAvailable
|
||||
| cpal::StreamError::StreamInvalidated => {
|
||||
device_lost.store(true, Ordering::Release);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
},
|
||||
None,
|
||||
@@ -528,9 +534,15 @@ pub fn build_stream(
|
||||
let _ = fft_producer.try_push(mono);
|
||||
}
|
||||
},
|
||||
move |err| {
|
||||
move |err: cpal::StreamError| {
|
||||
let _ = error_tx.try_send(format!("stream error: {err}"));
|
||||
device_lost.store(true, Ordering::Release);
|
||||
match err {
|
||||
cpal::StreamError::DeviceNotAvailable
|
||||
| cpal::StreamError::StreamInvalidated => {
|
||||
device_lost.store(true, Ordering::Release);
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
},
|
||||
None,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user