Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 具有WAV音频文件的Spritekit性能_Ios_Objective C_Performance_Audio_Sprite Kit - Fatal编程技术网

Ios 具有WAV音频文件的Spritekit性能

Ios 具有WAV音频文件的Spritekit性能,ios,objective-c,performance,audio,sprite-kit,Ios,Objective C,Performance,Audio,Sprite Kit,在我的Spritekit游戏中,我目前有十几个左右的音效(我计划再增加几个)和一些背景音乐循环。它们都是当前的WAV文件。我想知道,如果将音频转换为mp3(或其他压缩音频类型),是否会提高性能。显然,这将减少应用程序的总体文件大小,这是很好的,但我想知道较小的文件大小是否会增加性能优势,或者音频文件大小是否与iPad/Sprietkit的性能无关。此外,我担心将音乐循环转换为mp3会导致它们无法完美循环,因为mp3的曲目开头有标题元数据,增加了一小部分静音。谢谢 您可以使用预加载修复性能问题 S

在我的Spritekit游戏中,我目前有十几个左右的音效(我计划再增加几个)和一些背景音乐循环。它们都是当前的WAV文件。我想知道,如果将音频转换为mp3(或其他压缩音频类型),是否会提高性能。显然,这将减少应用程序的总体文件大小,这是很好的,但我想知道较小的文件大小是否会增加性能优势,或者音频文件大小是否与iPad/Sprietkit的性能无关。此外,我担心将音乐循环转换为mp3会导致它们无法完美循环,因为mp3的曲目开头有标题元数据,增加了一小部分静音。谢谢

您可以使用预加载修复性能问题

SKAction *soundAction;

- (void)didMoveToView: (SKView *) yourView
{
    _soundAction = [SKAction playSoundFileNamed:@"yourSoundFile" waitForCompletion:NO];
}

[self runAction:_soundAction];//Play your sound where you want.

谢谢我要补充一点。但这并不能完全回答我的问题。我想我可以重新措辞。更小的音频文件会占用更少的内存吗?建议在wav文件的游戏中使用MP3吗?谢谢Valar!一旦我添加了太多的音效,这就变得很有必要了。mp3是压缩的。音频在播放前在内存中解压缩。您的文件大小将更小,加载速度更快,但一旦解压缩(在播放之前),您的内存占用将与未压缩格式相同。当您在播放之前解压缩时,解压缩会带来性能损失-因此暂停。文件越大,暂停越明显。大多数使用未压缩的声音来播放较短的声音,而使用压缩的音乐。Apple docs有“最佳实践”-而且只有一个mp3可以在硬件上解码,任何额外的解码都会占用cpu时间mp3=长时间运行的音频,wav/caf=短音效,以节省内存减少采样率感谢回复。这太棒了。我通读了整个多媒体节目指南。我假设在应用程序的生命周期内,1个MP3可以用硬件解码?还是一次一个?理想情况下,背景音乐将立即播放并无缝循环,因此听起来像是MP3已退出,因为循环MP3可能会由于标题而导致循环之间的间隙。我的游戏循环大约30秒,主屏幕和记分板音乐循环非常短,大约10秒。我将把所有的东西都转换成caf,看看和Wave相比,内存使用是否有什么不同。我的测试表明,背景音乐的WAV、caf、vs MP3和声音效果的WAV、vs caf在XCode的调试会话中使用的内存量是相同的。我看不出音频性能有什么不同。我还惊讶地发现MP3循环很好。MP3听上去肯定不如其他2个好。我将继续使用WAVs,直到我需要减小应用程序的大小(只有72MB)。在这一点上,我可能会去咖啡馆。我的游戏音乐WAV是28 MB,而CAF文件只有9.3 MB。我不喜欢MP3的声音。CAF和MP3都比WAV安静。