2

我想用 .ogg 音频文件制作声音循环(在 iPhone ios6.1 的 Objective-C 中)。它们具有非常重复的音乐,就像游戏音乐一样,所以另外,我想通过随机化它们使它们更有趣(即避免音频疲劳)。首先,我想在某个随机点开始播放它们。

我按照说明(iPhone sdk 中的 OGG Vorbis)构建了一个 vorbis 库(libvorbis.a)并播放 ogg 文件。这有效:

[PASoundMgr sharedSoundManager];
[[[PASoundMgr sharedSoundManager] listener] setPosition:CGPointMake(0, 0)];
self.audioSource = [[PASoundMgr sharedSoundManager] addSound:@"test_sound_file" withExtension:@"ogg" position:CGPointMake(0, 0) looped:YES];
[self.audioSource setGain:0.5f];
[self.audioSource playAtListenerPosition];

使用界面中的@property,以及.m文件中对应的@synthesize:

@property (nonatomic, strong) PASoundSource *audioSource;

但是如何从与 ogg 开始不同的点开始呢?

方法 playAtPosition(CGPoint) 是可用的,所以我首先尝试了,而不是 playAtListenerPosition:

[self.audioSource playAtPosition:(CGPointMake(15.0, 50.0))];

和其他值而不是 (15, 50),以防它们映射到相似的位置。然而,在任何情况下,声音文件都是从头开始的。

我还尝试更改包含 CGPointMake 的两个初始化语句中的值,但这也没有什么区别。(另外,这两个数值是什么意思?我只能找到指向图形文件的解释 - 所以我猜是二维的 - 没有声音文件。)

任何帮助或想法将不胜感激!

4

0 回答 0