0

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 サポートを効果的に無効にするにはどうすればよいですか?

4

1 に答える 1

1

It seems Everyplay does not yet support AL_SEC_OFFSET which your audio code is using. To make the EveryplayFeatures work change it like this:

EveryplayFeatures.h

#import <Foundation/Foundation.h>

@interface EveryplayFeatures : NSObject

@end

EveryplayFeatures.m

@implementation EveryplayFeatures (Private)

+ (BOOL) supportsOpenAL {
    return NO;
}

+ (BOOL) supportsCocosDenshion {
    return YES;
}

@end
于 2013-06-24T06:26:16.133 に答える