问题标签 [openal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2539 浏览

xcode - 使用 OpenAL 播放声音

什么是在 3.1.2 SDK 上使用 OpenAL 在 xcode 3.2.2 中播放声音的最佳方式,我现在正在绞尽脑汁。我遵循了 ben brittel 和 mike daley 在 openAL 上的教程,并实现了播放声音所需的所有东西。基本上,我在他们精彩的教程的帮助下创建了一个声音管理器类。唯一的问题是我收到 SIGABRT 错误。当我尝试初始化声音时,该应用程序甚至没有加载。我正在制作一个鼓应用程序。该应用程序运行良好,直到我尝试播放声音

所以我决定我可能需要重新开始。(因为在我使用 playsystemsound 播放声音之前,但这非常慢并且不适合游戏编程)有人可以帮助并告诉我使用 OpenAL 播放声音的最佳方式谢谢我需要 openal,这样我就可以使用音高控制之类的东西.

0 投票
0 回答
330 浏览

xcode - 如何强制 Xcode 链接到系统框架的自定义版本?

我有一个使用 OpenAL 的项目。该项目是针对 10.5 SDK 构建的,10.5 中的 OpenAL.framework 版本会导致一些问题。我想链接到位于我的源代码树中的 OpenAL.framework 的定制版本。

但是,Xcode 坚决拒绝这样做。无论我尝试什么,它都坚持链接到位于 /Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/OpenAL.framework/OpenAL 的框架。以下是我尝试过但没有成功的几件事:

  • 使用 -F 以多种方式(相对、绝对)设置框架目录的路径。
  • 将 -Z 标志传递给链接器以消除默认链接路径,然后在链接过程中进一步明确传递 /System/Library,以确保它在我的自定义库路径之后看到系统路径。
  • 使用预链接传递构建我的库,并将框架内的库显式传递给 THAT。

根据man gcc,传递 -F 参数应该足以确保在默认路径之前搜索链接路径。要么这没有正确发生,要么我误解了这个问题,而且它似乎太简单和明显而不能成为一个链接器问题:-)

0 投票
1 回答
754 浏览

iphone - 使用 setCurrentTimeFunction 播放 iPhone/iPad 声音。非 AVAudioPlayer

我最近一直在尝试加入一个强化的声音管理课程,其中声音播放精度是必须的。我正在寻找的是加载声音,设置播放开始位置(或播放头),播放一段时间,暂停声音,将“播放头”位置设置为新间隔并再次恢复播放的选项。(具有动态间隔)。我已经尝试过使用 AVAudioPlayer - 但它似乎太慢了。性能不是您所期望的,它在调用pause和时会滞后setCurrentTime:

它是最容易使用的库,也是唯一具有规定setCurrentTime:功能的库。

我来这里寻求您的帮助,推荐一个体面的开源 SoundEngine,它可以处理低延迟的间隔设置(播放头移动),或者参考说明 OpenAL 或 AudioUnit 工具可以处理播放位置设置的地方。

提前谢谢你,
~ Natanavra。

0 投票
1 回答
1335 浏览

iphone - Xcode - OpenAL - 获取播放声音的当前时间

大家好,我想知道是否有人可以指出正确的方向,在我的 openAL 单例类中创建一个返回当前声音时间的函数。

有任何想法吗?谢谢!

(当前时间“正在播放声音”)

0 投票
0 回答
265 浏览

iphone - 不获取 AudioListenerInterruptionEnd 触发器

我对 OpenAl 和 MPMoviePlayerController 的组合有疑问。

我在我的 OpenAl 设置过程中注册了 AudioInterruptionLister。当我开始播放视频时,听众会收到 AudioListenerInterruptionStarts,但是当电影结束时,我没有收到 AudioListenerInterruptionEnd 触发器。

听者

到目前为止,我的解决方案是在开始电影之前使上下文无效,并在电影结束后使其成为当前状态。这导致了问题,如果用户通过触摸屏幕非常快速地跳过电影,我将上下文设置为当前并且稍微延迟了我得到 AudioListenerInterruptionStart 触发器,它再次将我的上下文设置为空。

在 iOs 更大的 3.1 上,我可以设置 useApplicationAudioSession = NO 并且侦听器永远不会成为开始或结束触发器。但在 iOS 上低于 3.2 htis 选项不存在。

但我的主要问题是,为什么我从来没有得到 AudioListenerInterruptionEnd 触发器。

感谢您的帮助,问候乔治

0 投票
1 回答
1333 浏览

iphone - 如何转换 WAV 音频文件以播放 Core Audio?

我正在使用 Core Audio / OpenAL 播放 CAF 音频文件。从 Apple 我知道最好的文件格式是这样的:

核心音频文件格式 (CAFF),单声道,16 位 @ 44,1 kHz

所以我启动了 Soundtrack Pro 3 并将 WAV 文件保存为具有 44,1 kH、16 位整数的“核心音频文件”。

当我播放它时,它会严重失真并且质量很差。当我在 mac 上按空格键 (quicklook) 播放它时,声音非常好。

我必须怎么做才能在 Core Audio 中播放我自己的声音文件?是否有来自 Apple 的特殊工具可以将声音文件转换为可立即与 Core Audio 一起播放的方式?

0 投票
2 回答
9000 浏览

iphone - 如何在 OpenAL 中调整声音的音量?

如何在 OpenAL 声音库中调整声音的音量?

0 投票
1 回答
892 浏览

ipad - iOS OpenAL 支持定向声音还是仅支持位置声音?

对于我正在编写的 3D iPad 应用程序,我希望音频在单个虚拟听众转向/远离声源时增加/减少音量。听者总是静止的。听者只能旋转。声音总是静止的。声音充满了用户周围的方向范围。声音与听者的距离都相等。

我认为这些声音类似于 3D 图形中的光源。对于每个声音,都有一个从听者指向该声源的向量。听者有一个传出方向向量。我想通过听者向量的 dotProduct 和每个音频源向量来加权每个音频源的贡献。因此,随着听者的“头部”围绕声音贡献方向旋转。

我描述的内容中有多少可以由 OpenAL 处理,我需要自己编写多少?

谢谢,
道格

0 投票
1 回答
333 浏览

iphone - 最佳音频框架

在那个应用程序中,我录制了一个人的声音,将其存储在 NSTemporaryDirectory() 的文件中,然后播放。到目前为止,我已经使用了 AVAudioPlayer 和 AVAudioRecorder,但是当我同时录制它一段时间后,它会播放我不知道为什么的声音?还有更多关于我的应用程序在 iPhone 4 中崩溃的问题。

现在您能否建议我使用哪个框架来记录音高并可以播放,最重要的是可以在所有 iPhone 上使用。1. OpenAL 2. 核心音频 3. AudioToobox

0 投票
2 回答
1863 浏览

c++ - 使用 OpenAL 的硬件加速音频解码

使用OpenAL库时是否可以使用iPhone对mp3s和AAC的硬件加速解码?

如果可能的话,我想有两种可能的方法。
iPhone 特定的 OpenAL 扩展。
用于将音频解码为原始字节的 iPhone API。

我有两个特定的用例。

  • 完全解码一个简短的声音片段。
  • 分段解码较大的声音文件,以便将其流式传输到 OpenAL,而不是一次全部加载。

更新

男生!没有人对此有答案吗?Apple 的 NDA 是否解决了这些问题?这是怎么回事?使用 OpenAL 的其他人肯定想要更好的音频性能。