diff options
| author | Carl Hetherington <cth@carlh.net> | 2024-07-25 16:25:52 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2024-07-26 11:39:59 +0200 |
| commit | 85ddc6ae876810b618e632365c89d06ad60f8b3b (patch) | |
| tree | 56674ff0c4cd28895a262015fb193ef4076906e8 | |
| parent | 32474a0dcd9b039026d91e07386193f9a3ea4588 (diff) | |
Add AudioBackend::abort_stream_if_running().
| -rw-r--r-- | src/wx/audio_backend.cc | 9 | ||||
| -rw-r--r-- | src/wx/audio_backend.h | 1 | ||||
| -rw-r--r-- | src/wx/film_viewer.cc | 13 |
3 files changed, 12 insertions, 11 deletions
diff --git a/src/wx/audio_backend.cc b/src/wx/audio_backend.cc index b77d2cdcd..ae37ab851 100644 --- a/src/wx/audio_backend.cc +++ b/src/wx/audio_backend.cc @@ -75,3 +75,12 @@ AudioBackend::instance() } +void +AudioBackend::abort_stream_if_running() +{ + if (_rtaudio.isStreamRunning()) { + _rtaudio.abortStream(); + } +} + + diff --git a/src/wx/audio_backend.h b/src/wx/audio_backend.h index cf1bbad05..10646ebae 100644 --- a/src/wx/audio_backend.h +++ b/src/wx/audio_backend.h @@ -38,6 +38,7 @@ public: return _rtaudio; } + void abort_stream_if_running(); #if (RTAUDIO_VERSION_MAJOR >= 6) std::string last_rtaudio_error() const; #endif diff --git a/src/wx/film_viewer.cc b/src/wx/film_viewer.cc index f83e83c68..65e2afb56 100644 --- a/src/wx/film_viewer.cc +++ b/src/wx/film_viewer.cc @@ -342,11 +342,7 @@ void FilmViewer::suspend () { ++_suspended; - - auto& audio = AudioBackend::instance()->rtaudio(); - if (audio.isStreamRunning()) { - audio.abortStream(); - } + AudioBackend::instance()->abort_stream_if_running(); } @@ -430,12 +426,7 @@ FilmViewer::start () bool FilmViewer::stop () { - auto& audio = AudioBackend::instance()->rtaudio(); - - if (audio.isStreamRunning()) { - /* stop stream and discard any remaining queued samples */ - audio.abortStream(); - } + AudioBackend::instance()->abort_stream_if_running(); if (!_playing) { return false; |
