我想使用playSoundFileNamed:方法将背景声音文件作为循环播放,我像往常一样将其复制到项目中,但问题是,程序停在声音代码行...
SKAction* playSound = [SKAction playSoundFileNamed:@"backgroundMusicLoop.m4a" waitForCompletion:NO];
[self runAction: [SKAction repeatActionForever:playSound]];
它没有发生任何事情(我试过它不是在模拟器中,而是在真实的设备上)! 我试着播放一个wav文件并且没有错误,但是wavs有更大的文件大小...
希望有人知道解决方案:)
答案 0 :(得分:0)
<强>已更新强>
将waitForCompletion从NO更改为YES。
将其设置为NO表示操作将始终重复,而不等待声音播放结束。实际上它在开始时就卡住了,没有机会完成任务。
(因为我第一次看不到第一次的脑屁!)
<强> ORIGINAL 强>
m4a声音格式似乎与playSoundFileNamed:waitForCompletion:
有问题。尝试其他格式,如mp3或caf。
如果您绝对需要使用m4a,请使用AVAudioSession
播放您的声音,音乐。
如果您不知道如何使用iTunes转换格式,请参阅Apple的说明:
以新文件格式保存歌曲的副本 从压缩文件格式转换为未压缩文件格式(例如,从MP3格式转换为AIFF格式)时,您不应注意到音质的任何降低。但是,在压缩格式(例如MP3和AAC)之间进行转换时,您可能会注意到音质的降低。为获得最佳效果,如果您希望音乐以不同的文件格式编码,则应使用新的编码格式从原始源重新导入音乐。
转换歌曲的文件格式打开iTunes偏好设置。视窗: 选择编辑&gt;喜好。 Mac:选择iTunes&gt;喜好。点击 单击常规按钮,然后单击中的导入设置...按钮 窗户的下半部分。从“导入使用”弹出菜单中,选择 要将歌曲转换为的编码格式,然后单击 单击确定以保存设置。选择库中的一首或多首歌曲, 然后从文件&gt;创建新版本菜单,选择其中一个 跟随(菜单项更改以显示您的选择内容 导入首选项):创建MP3版本创建AAC版本创建 AIFF版本创建WAV版本创建Apple无损版本如果你 还没有将一些歌曲导入iTunes,你可以导入和 同时转换它们。这将创建一个转换后的副本 iTunes资料库中的文件基于您的iTunes偏好设置。至 转换文件夹或磁盘上的所有歌曲,按住选项 键(Mac)或Shift键(Windows),然后选择文件&gt;创建新版本
转换[导入首选项设置]。导入首选项设置将与您在步骤3中选择的内容相匹配.iTunes将提示您输入 要导入和转换的文件夹或磁盘的位置。一切 将转换文件夹或磁盘上的歌曲。注意:年纪大了 购买的歌曲使用受保护的AAC格式进行编码,以防止 他们被转换。如果你需要将这些转换为另一个 格式,请按照本文中的说明进行升级。
原始格式的歌曲和新转换的歌曲出现在 你的图书馆。