AVAudioEngine
和相關的AVAudioNode
對象似乎對音頻處理非常強大,但很難看出如何使用它們自動化參數更改。作爲一個粗略的例子,我確定必須有一些比手動使用Timer
來更改值更有效的方法。如何在AVMutableComposition中使用AVAudioPlayerNode
AVMutableAudioMixInputParameters
包括一個方法setVolumeRampFromStartVolume:toEndVolume:timeRange:
,但我看不出如何將它與AVAudioPlayerNode
(與AVAudioEffectNodes連接)集成並使用該方法隨着時間推移淡化音量。相反,我只看到AVMutableAudioMixInputParameters
與AVMutableComposition
實例一起使用的示例,其中沒有包含AVAudioNode
對象。
任何人都可以發佈或鏈接到結合使用AVAudioNodes與setVolumeRampFromStartVolume:toEndVolume:timeRange:
或解釋最佳實踐隨時間節點上自動參數更改一些代碼樣本?
非常感謝
鑑於,找到替代方案除了創建自己的推子音頻單元有多難,這可能是最佳答案。它看起來像AVAudioEngine API中的一個明顯的漏洞,當它幾乎支持'scheduleParameterBlock','flag_CanRamp'等作爲API的一部分時,無法使用內置單元逐步更改參數。我是唯一一個有這種感覺的人。話雖如此,我希望能有一個更好的解決方案。 –