簡體   English   中英

AudioKit 5 振幅包絡沒有聲音

[英]AudioKit 5 Amplitude Envelope no sound

我是新來的,剛接觸音樂應用程序(以及一般的編程)。

我正在嘗試使用AudioKit 5為我的最終項目構建一個合成器應用程序。 我制作了一個振盪器並嘗試添加振幅包絡,但沒有發出聲音。 (如果我將振盪器放在輸出中 - 會有聲音。)

我在互聯網上多次看到不同類型的這個問題,但沒有任何解決方案。

有誰知道是什么問題? 如果沒有 - 你有其他信封解決方案嗎?

代碼:

import AudioKit
import SoundpipeAudioKit
import UIKit

class TryingViewController: UIViewController {
    
    var osc = Oscillator(waveform: Table(.sine), frequency: 440, amplitude: 0.8)
    var engine = AudioEngine()
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    
    @IBAction func onBtn(_ sender: UIButton) {
        
        let envelope = AmplitudeEnvelope(osc)
        envelope.attackDuration = 0.1
        envelope.decayDuration = 0.01
        envelope.sustainLevel = 0.5
        envelope.releaseDuration = 0.3
        
        osc.start()
        do {
            try engine.start()
        } catch {
            print(error, "Field")
        }
        engine.output = envelope
        
        envelope.start()
    }
    
    @IBAction func offBtn(_ sender: UIButton) {
        
        osc.stop()
    }
    
}

編輯:

感謝 Aurelius Prochazk,我添加了這段代碼,現在它可以工作了!

var isGateOpend = false 
.
.
. 
if isGateOpend{ 
    envelope.closeGate() 
    isGateOpend = false 
   } else { 
    envelope.openGate() 
    isGateOpend = true 
   }

我仍然有一個點擊,但如果我不明白,我會打開另一個關於它的問題。

提前致謝!

AmplitudeEnvelope 是一個“門控”節點,這意味着它響應 openGate 和 closeGate,應該使用它們而不是開始停止,因為它們處於節點級別而不是控制級別。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM