gpt4 book ai didi

iphone - iPhone 原生音频格式

转载 作者:行者123 更新时间:2023-12-03 18:38:12 24 4
gpt4 key购买 nike

我目前在 iPhone 上的输出音频设置如下:

AudioStreamBasicDescription audioFormat;

audioFormat.mSampleRate = 48000;

audioFormat.mFormatID = kAudioFormatLinearPCM;

audioFormat.mFormatFlags = kAudioFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;

audioFormat.mFramesPerPacket = 1;

audioFormat.mChannelsPerFrame = 2;

audioFormat.mBitsPerChannel = 16;

audioFormat.mBytesPerPacket = 4;

audioFormat.mBytesPerFrame = 4;

但是,当我通过 shark 检查我的性能数据时,我看到了以下功能:SRC_Convert_table_i32_scalar_stereo

花费相当多的时间。

这让我思考 - iPhone 的理想和建议的输出格式是什么?设备只需很少的工作就可以播放的游戏。

最佳答案

Shark 可以与 iPhone 配合使用。您可以通过在菜单中选择“采样 > 网络/iPhone 分析...”来启用 iPhone 分析。

一定要尝试使用 44100 Hz 采样率。使用 48000,我看到您发布的相同函数出现在调用堆栈中 - 使用 44100 时不会显示此类函数。iPhone 上音频单元的规范音频格式是非交错 8.24 线性 PCM:

streamFormat.mFormatID         = kAudioFormatLinearPCM;
streamFormat.mFormatFlags =
kAudioFormatFlagIsSignedInteger
| kAudioFormatFlagsNativeEndian
| kLinearPCMFormatFlagIsNonInterleaved
| (24 << kLinearPCMFormatFlagsSampleFractionShift);
streamFormat.mSampleRate = mixing_rate;
streamFormat.mBitsPerChannel = 32;
streamFormat.mChannelsPerFrame = 2;
streamFormat.mFramesPerPacket = 1;
streamFormat.mBytesPerFrame = ( streamFormat.mBitsPerChannel / 8 );
streamFormat.mBytesPerPacket = streamFormat.mBytesPerFrame *
streamFormat.mFramesPerPacket;

关于iphone - iPhone 原生音频格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/632718/

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