0

我想在我正在开发的 cocos2d 游戏中使用 SimpleAudioEngine 来播放音乐。当我在我的游戏层中导入 SimpleAudioEngine.h 时,我在 CVPixelBuffer.h 和 CMFormatDescription.h 中出现语法错误。

我创建了一个新的干净的 cocos2d 应用程序并导入了 SimpleAudioEngine,它工作得很好,因此错误出现在我的应用程序的代码中。

您认为 SimpleAudioEngine 出现错误的原因是什么?我怎样才能解决这个问题?

编辑:

看起来问题出size_t width在创建 CVPixelBuffer 时。

在这段代码中:

CV_EXPORT CVReturn CVPixelBufferCreate(CFAllocatorRef allocator,
                                  size_t width,
                                  size_t height,
                                  OSType pixelFormatType,
                                  CFDictionaryRef pixelBufferAttributes,
                                  CVPixelBufferRef *pixelBufferOut) __OSX_AVAILABLE_STARTING(__MAC_10_4,__IPHONE_4_0);

它引发错误size_t width并说:

/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVPixelBuffer.h:183: error: expected ';', ',' or ')' before numeric constant
4

1 回答 1

0

Do you have You have the CoreFoundation framework linked to your project? How about #import <CoreFoundation/CoreFoundation.h>? My guess is it can't find the CFAllocatorRef symbol.

于 2011-10-05T20:02:09.017 回答