首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AudioKit停止并开始发出奇怪的声音

AudioKit停止并开始发出奇怪的声音
EN

Stack Overflow用户
提问于 2018-05-14 13:25:29
回答 2查看 582关注 0票数 2

我有两个关于声音中奇怪的声音的问题。让我解释给你听。

我的应用程序有一个使用音频权限的框架。已经开始播放和录音了。

我试了三种方法。第一步。我已经添加了一个新的功能使用音频工具包。当我第一次启动音频工具包的时候,它就完美地工作了。但是当我进入另一个屏幕并允许其他框架运行时,另一个框架可以正常工作,但是当我回到音频工具包时,音量太低了。它似乎被削减了50%,我不能把它提高到100%。

为了绕过这一点,我认为我必须停止音频工具包,并重新启动它,当我必须使用它。但奇怪的事情发生了。

第二步。如果我在使用其他框架之前停止音频工具包,然后返回到音频工具包并重新启动它,它会在播放声音和停止声音时产生奇怪的嗡嗡声。

第三步。我使用了"MetronomeSamplerSync“中的示例代码。我为节拍器应用程序使用了一个示例代码。在播放时,我启动音频工具包,在停止时我停止音频工具包。如果发出同样的奇怪声音。

这是示例代码。

代码语言:javascript
复制
func startStopAction(met: AKSamplerMetronome, otherMet: AKSamplerMetronome) -> (AKButton) -> Void {
        return { button in
            // Stop if playing, Start if not playing.
            if met.isPlaying {

                met.stop()

                do {
                    try AudioKit.stop()
                } catch {
                    AKLog("AudioKit did not stop!")
                }
            } else {
                //If other metronome is playing, sync to it, else just play.
                if otherMet.isPlaying {
                    let now = AVAudioTime(hostTime: mach_absolute_time())
                    let beatAtNow = otherMet.beatTime(at: now)
                    met.setBeatTime(beatAtNow, at: now)
                } else {
                    do {
                        try AudioKit.start()
                    } catch {
                        AKLog("AudioKit did not start!")
                    }
                    met.play()
                }
            }
            button.title = met.isPlaying ? "Stop" : "Play"
        }
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-05 10:04:04

我有个奇怪的声音问题。我又把音频文件分配给了节拍器,解决了这个问题。不再有奇怪的声音,也不再减少音量。希望它对所有人都有帮助。

票数 1
EN

Stack Overflow用户

发布于 2018-05-16 10:14:28

我也有过同样的问题(声音音量减少了50%)。我必须删除其他代码中的下列行:

代码语言:javascript
复制
    let session = AVAudioSession.sharedInstance()
    do {
        // Configure the audio session for movie playback
        try session.setCategory(AVAudioSessionCategoryPlayback,
                                mode: AVAudioSessionModeMeasurement,
                                options: [])

我的猜测是,会话类别必须非常小心地设置,最好是如果您的其他框架和AudioKit只使用一次相同的AVAudioSession设置。希望这能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50331467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档