Fix audio session interrupting other apps on launch

Previously, the audio session was initialized immediately when the app launched, causing audio from other apps (like Music) to stop even when no video was playing in Yattee.

Changes:
- Remove audio session initialization from AppDelegate launch
- Remove audio session setup from MPVClient initialization
- Update setAudioSessionActive() to configure audio session category before activation

The audio session is now lazily initialized only when playback actually starts:
- For MPV backend: triggered by FILE_LOADED, PLAYBACK_RESTART, AUDIO_RECONFIG events
- For AVPlayer backend: triggered when play() is called

This allows music from other apps to continue playing until a video is actually played in Yattee.
This commit is contained in:
Arkadiusz Fal
2025-11-19 21:45:56 +01:00
parent ea0ea427e7
commit cea296c4b7
3 changed files with 5 additions and 14 deletions

View File

@@ -135,12 +135,6 @@ final class MPVClient: ObservableObject {
checkError(mpv_initialize(mpv))
#if !os(macOS)
// Set up audio session for Now Playing support
backend?.model.setupAudioSessionForNowPlaying()
backend?.model.updateNowPlayingInfo()
#endif
let api = UnsafeMutableRawPointer(mutating: (MPV_RENDER_API_TYPE_OPENGL as NSString).utf8String)
var initParams = mpv_opengl_init_params(
get_proc_address: getProcAddress,