2013-06-19 22 views
0

我在使用OpenAL的Everyplay v1.4.2時遇到問題。行爲正常,但每次播放聲音時,我都會看到一條日誌:「Everyplay OpenAL缺少實現:alGetSourcef 2401,AL_SEC_OFFSET,* value」。使用Everyplay與OpenAL進行寄生蟲記錄

我自己也嘗試從這段代碼我在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支持?

+0

作爲Everyplay SDK 1.6.2,查詢AL_SEC_OFFSET通過alGetSourcef現在支持 –

回答

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 
+0

BTW 。您可以將supportsCocosDenshion離開,因爲YES是默認值 –