使用Everyplay与OpenAL进行寄生虫记录

时间:2013-06-19 12:26:45

标签: openal everyplay

我遇到与OpenAL一起使用的Everyplay v1.4.2的问题。行为正常,但每次播放声音时,我都会得到一条日志说:“Everyplay OpenAL缺少实现:alGetSourcef 2401,AL_SEC_OFFSET,* value”。

我也尝试过从Everyplay.h中找到的代码中取消OpenAL:

@interface EveryplayFeatures : NSObject
/*
 * To disable Everyplay OpenAL implementation, override this class
 * method to return NO.
 */
+ (BOOL) supportsOpenAL;

/*
 * CocosDenshion background music support currently lacks hardware
 * decoder support. To disable recording support for background music,
 * override this class method to return NO.
 */
+ (BOOL) supportsCocosDenshion;
@end

我不知道怎么做它说的话。我尝试在名为“EveryplayFeatures.mm”的文件中创建此接口的实现:

@implementation EveryplayFeatures

+ (BOOL) supportsOpenAL
{
    return NO;
}

+ (BOOL) supportsCocosDenshion
{
    return YES;
}

@end

这不会改变事情。

有谁知道第一条错误消息的含义以及如何修复它?另外,我如何才能有效地禁用Everyplay的OpenAL支持?

1 个答案:

答案 0 :(得分:1)

似乎Everyplay还不支持您的音频代码正在使用的AL_SEC_OFFSET。要使EveryplayFeatures工作,请改变它:

EveryplayFeatures.h

#import <Foundation/Foundation.h>

@interface EveryplayFeatures : NSObject

@end

EveryplayFeatures.m

@implementation EveryplayFeatures (Private)

+ (BOOL) supportsOpenAL {
    return NO;
}

+ (BOOL) supportsCocosDenshion {
    return YES;
}

@end