output/osx: don't restart AudioUnit at the end of Cancel()

We shouldn't restart the AudioUnit while the ring buffer is empty, or
else our render callback may emit noise.

Closes https://github.com/MusicPlayerDaemon/MPD/issues/771
This commit is contained in:
Max Kellermann 2020-07-02 15:19:01 +02:00
parent fe5b81e180
commit 8047102542
2 changed files with 3 additions and 1 deletions

1
NEWS
View File

@ -9,6 +9,7 @@ ver 0.21.25 (not yet released)
- opus: fix memory leak
* output
- osx: improve sample rate selection
- osx: fix noise while stopping
* Windows/Android:
- fix Boost detection after breaking change in Meson 0.54

View File

@ -831,7 +831,8 @@ OSXOutput::Cancel() noexcept
#ifdef ENABLE_DSD
pcm_export->Reset();
#endif
AudioOutputUnitStart(au);
/* the AudioUnit will be restarted by the next Play() call */
}
int