abb*_*ood 5 c++ xcode exception-handling objective-c core-audio
一个类似的问题已经被问过..但我想让它更具体到核心音频......因为我们中的一些人可能已经注意到核心音频几乎没有错误的余地.
正如上述问题的答案所解释的那样,__ cxa_throw是一个C++ 未处理的异常,可以忽略(这个问题似乎是Xcode 4.5.1的新问题..我之前从未见过它)
我们可以对核心音频说同样的话吗?让我感到紧张的是它与音频的格式化有关...我的很多代码都依赖于它:
我正在尝试将AAC文件转换为lPCM ..
输出格式:
// set up the PCM output format for conversion
streamer->PCMoutputFormat.mSampleRate = 44100.0;
streamer->PCMoutputFormat.mFormatID = kAudioFormatLinearPCM;
streamer->PCMoutputFormat.mFormatFlags = kAudioFormatFlagsCanonical;
streamer->PCMoutputFormat.mBytesPerPacket = 4;
streamer->PCMoutputFormat.mFramesPerPacket = 1;
streamer->PCMoutputFormat.mBytesPerFrame = 4;
streamer->PCMoutputFormat.mChannelsPerFrame = 2;
streamer->PCMoutputFormat.mBitsPerChannel = 16;
Run Code Online (Sandbox Code Playgroud)
输入格式:
mSampleRate = 44100
mFormatID = 1633772320 (AAC)
mFormatFlags = 0
mBytesPerPacket = 0
mFramesPerPacket = 1024
mBytesPerFrame = 0
mChannelsPerFrame = 2
mBitsPerChannel = 0
Run Code Online (Sandbox Code Playgroud)
实例变量:
game.h
@interface Game : NSObject <GKSessionDelegate>
{
AudioStreamer *streamer;
}
@property (nonatomic, assign) AudioStreamBasicDescription mediaItemInputFormat;
Run Code Online (Sandbox Code Playgroud)
audioStreamer.h
@interface AudioStreamer : NSObject
{
@public
AudioStreamBasicDescription PCMoutputFormat;
AudioConverterRef audioConverter;
}
Run Code Online (Sandbox Code Playgroud)
在game.m中设置转换器命令(这是抛出__cxa_throw未处理的异常的地方!)
// set up converter
OSStatus result = AudioConverterNew(&_mediaItemInputFormat,
&streamer->PCMoutputFormat,
&streamer->audioConverter);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3359 次 |
| 最近记录: |