From f364019cb6933306c433489ba7cb333314072aa8 Mon Sep 17 00:00:00 2001 From: Josip Cavar Date: Mon, 16 Jun 2025 12:10:06 +0200 Subject: [PATCH 1/2] Return early if render resources already deallocated This fixes the crash in macOS and iOS 26. --- Sources/AudioKitEX/AudioKitAU.swift | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Sources/AudioKitEX/AudioKitAU.swift b/Sources/AudioKitEX/AudioKitAU.swift index d20fcf9..eec6eca 100644 --- a/Sources/AudioKitEX/AudioKitAU.swift +++ b/Sources/AudioKitEX/AudioKitAU.swift @@ -45,7 +45,9 @@ open class AudioKitAU: AUAudioUnit { /// Delllocate Render Resources override public func deallocateRenderResources() { + let allocated = renderResourcesAllocated super.deallocateRenderResources() + guard allocated else { return } deallocateRenderResourcesDSP(dsp) internalBuffers = [] } From 3b529f6febd10954f0c8d0aa75b72e377fcb0643 Mon Sep 17 00:00:00 2001 From: Josip Cavar Date: Tue, 17 Jun 2025 08:54:22 +0200 Subject: [PATCH 2/2] Fix sample rate for tests to 44100 These md5's were recorded at 44100, but Settings default sample rate changed to 48000 --- Tests/AudioKitEXTests/DryWetMixerTests.swift | 5 +++++ Tests/AudioKitEXTests/FaderTests.swift | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/Tests/AudioKitEXTests/DryWetMixerTests.swift b/Tests/AudioKitEXTests/DryWetMixerTests.swift index d4651e1..ba31b1a 100644 --- a/Tests/AudioKitEXTests/DryWetMixerTests.swift +++ b/Tests/AudioKitEXTests/DryWetMixerTests.swift @@ -9,6 +9,11 @@ class DryWetMixerTests: XCTestCase { let input1 = PlaygroundOscillator(waveform: Table(.triangle)) let input2 = PlaygroundOscillator(waveform: Table(.triangle), frequency: 1280) + override func setUp() { + super.setUp() + Settings.sampleRate = 44100 + } + func testDefault() { let engine = AudioEngine() let mixer = DryWetMixer(dry: input1, wet: input2) diff --git a/Tests/AudioKitEXTests/FaderTests.swift b/Tests/AudioKitEXTests/FaderTests.swift index c39c2d3..d9a5e75 100644 --- a/Tests/AudioKitEXTests/FaderTests.swift +++ b/Tests/AudioKitEXTests/FaderTests.swift @@ -6,6 +6,11 @@ import XCTest class FaderTests: XCTestCase { + override func setUp() { + super.setUp() + Settings.sampleRate = 44100 + } + func testDefault() { let engine = AudioEngine() let url = Bundle.module.url(forResource: "12345", withExtension: "wav", subdirectory: "TestResources")!