首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iPhone sdk中的OGG Vorbis

iPhone sdk中的OGG Vorbis
EN

Stack Overflow用户
提问于 2011-01-20 17:52:14
回答 2查看 6.8K关注 0票数 5

我想知道是否可以使用iPhone SDK播放Ogg Vorbis音频文件,或者是否存在允许这样做的库或框架。

我读过一些关于OpenAL的东西,但我没有找到任何教程...有谁可以帮我??

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-16 23:17:41

迟做总比不做好;)

我在这里找到了答案,Use cocos2d for playing ogg file in my project?

PASoundMgr是一个不同的声音引擎,支持ogg文件播放。然而,自从iOS 2.x以来,它就没有更新过,而且从那时起就出现了许多问题,但它没有解决。

为什么你需要播放ogg文件?如果您将它们转换为aac,您将能够使用硬件解码来播放它们,从cpu使用率的角度来看,这要高效得多。

他们提到了PASoundMgr。这对我很管用。我刚刚从cocos2d框架复制了SoundEngineTest所基于的所有文件->库。去掉了不必要的代码。

这是我的demoProject,它展示了如何在ios上玩ogg。

小心使用iOS 5.*模拟器,他们有一些带声音库的problems。我的演示可以在4.3模拟器和设备上运行。

下面是我创建demo的步骤:

  1. 首先你需要cocos2d-iphone框架。我已经有了它,但是你可以在这里找到它,你可以注意到SoundEngineTest依赖于libvorbis.a。这是一个由external/Tremor组的文件组成的库。它还依赖于OpenAl和AudioToolbox框架。
  2. 我将所有文件从tremor组复制到我的项目中。Crearted "vorbis“可可触摸静态库,没有ARC。并将所有源文件和头文件添加到构建阶段选项卡中的"vorbis“目标中。
  3. 在OggPlayDemo的构建阶段中将库(libvorbis、OpenAl、AudioToolbox)添加到”将二进制文件与库链接“框中。
  4. 将PA类添加到项目中。并将OggPlayDemo选为目标。为了避免ARC出现问题,我禁用了这3个PA文件的ARC编译。(请参见disable ARC for single file)
  5. Removed all cocos2d references。有一些代码与纠正听者的位置依赖于方向…我对它进行了评论。我不需要这个功能来播放audio.
  6. Copied音频文件。
  7. 并最终将此代码添加到ViewController:
  • (void)viewDidLoad {
  • ;//init PASoundMgr sharedSoundManager;[[PASoundMgr sharedSoundManager listener] setPosition:CGPointMake(0,0)];self.audioSource = [PASoundMgr sharedSoundManager addSound:@"trance-loop“withExtension:@"ogg”position:CGPointMake(0,0) looped:YES];//降低音乐音量播放setGain:0.5f;}-(IBAction) play:(Id) self.audioSource { self.audioSource playAtListenerPosition;}
票数 10
EN

Stack Overflow用户

发布于 2014-01-31 01:43:55

Cricket Audio可以播放ogg文件和其他文件,可以在iOS/Android/WP8上运行。

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

https://stackoverflow.com/questions/4745618

复制
相关文章

相似问题

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