gpt4 book ai didi

cocoa - 类似于 NSSound 的框架,可以工作,但不需要处理陡峭的学习曲线

转载 作者:行者123 更新时间:2023-12-03 16:55:58 25 4
gpt4 key购买 nike

我已经基本完成了我的一个应用程序的白噪声功能工作,使用 NSSound 循环播放 10 秒 AAC 编码的预录白噪声。

[sound setLoops: YES]

应该就是所需要的,对吧?

它的工作原理就像一个魅力,但我注意到声音文件完成和重新启动之间有一个可听得见的停顿……一种“扑通”的声音。循环原始声音文件时不存在这种情况,经过一个小时左右的尝试解决这个问题后,我得出的结论是 NSSound 很糟糕,并且声音暂停是私有(private)后台线程同步的人为因素播放声音。它似乎以某种方式依赖于主运行循环,这会导致声音结束和重新启动之间的可听间隙。

我对声音的东西知之甚少,这是一个非常小的功能,所以我不想进入 CoreAudio 的深处只是为了播放循环的 10 秒声音片段..所以我去寻找一个不错的替代方案,但似乎没有什么很合适:

  • 核心音频:完全矫枉过正,但至少是一个标准框架
  • AudioQueue:复杂,带有 C++ 示例代码!?
  • MusicKit/SndKit:学习曲线也很长,基于大量开源内容等。

我发现 iOS 4 上的 AVFoundation 是播放声音的好方法,但这仅计划用于 Mac OS X 10.7..

是否有任何易于使用的方法可以在 Mac OS X 10.5+ 上可靠地循环声音?

是否有 AudioQueue 或 Core Audio 的示例代码可以减轻在 Objective-C 应用程序中使用它们的痛苦?

任何帮助将非常感激..

最诚挚的问候,

弗兰克

最佳答案

使用QTKit。为声音创建一个 QTMovie,将其设置为循环,然后让它继续播放。

关于cocoa - 类似于 NSSound 的框架,可以工作,但不需要处理陡峭的学习曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3556886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com