我正在使用SimpleAudioEngine,我试图在继续之前检测声音效果是否完成播放.
我正在寻找任何方法,但我试图实现的方法不起作用!
CDSoundEngine *engine = [CDAudioManager sharedManager].soundEngine;
ALuint soundId = [[SimpleAudioEngine sharedEngine] playEffect:soundId];
float seconds = [engine bufferDurationInSeconds:soundId];
Run Code Online (Sandbox Code Playgroud)
每次我使用bufferDurationInSeconds时,它都会将float值-1返回到变量秒.我检查了实现,当id无效时返回-1,但我100%ID有效!
任何人都可以帮我解决这个问题,或者建议我另一种方法来检测声音效果的结束?
我想检测[SimpleAudioEngine sharedEngine]当前是否正在播放任何效果.对于背景音乐,有一种方法可以为您提供背景音乐是否正在播放的信息:
[[SimpleAudioEngine sharedEngine] isBackgroundMusicPlaying];
Run Code Online (Sandbox Code Playgroud)
音效有类似之处吗?如果不是,我怎么能检测到我是否已经在效果?
我正在制作音乐游戏,当用户按下音符时,它会发出声音.当用户按下时,声音自然需要立即播放,因此他们可以判断它们是否与音乐同步.然而,感觉好像声音滞后,特别是当音符按下变得更快时.
我的背景.m4a音乐文件是用AVAudioPlayer播放的.我选择在Cocos Denshion上使用它,因为我可以访问currentTime属性.我可能错了,但我不认为我可以使用CocosDenshion访问它.
我制作了一个非常短(不到一秒钟)的.wav文件.我在init上预加载我的声音效果:
[[SimpleAudioEngine sharedEngine] preloadEffect:@"Assist.wav"];
Run Code Online (Sandbox Code Playgroud)
然后播放音效,在CCTouchesBegan我打电话:
[[SimpleAudioEngine sharedEngine] playEffect:@"Assist.wav"];
Run Code Online (Sandbox Code Playgroud)
之后,它调用我的代码来确定用户的时间和奖励积分.知道为什么它可能会滞后,或者更好的方式与音乐一起播放音效?
编辑:我最近尝试了一些没有结果的事情.首先,我尝试在歌曲中适当的时间自动播放声音.仍然有滞后,所以我不认为触摸事件是缓慢的.我还尝试了3种不同的声音库.
但是,当我在模拟器中跑步时,似乎并不是很迟钝.有没有人有想法?我一无所知,这是我无法真正拿出来的一大特色......
我正在尝试使用C++开发一个应用程序,它将从麦克风录制音频数据并播放数据.但在尝试音频捕获时,我收到以下错误消息.
cannot open /dev/dsp
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我这个吗?
最近我在使用CocosDenshion播放我的声音效果时遇到了问题.声音在iPhone模拟器上播放,但不在我自己的设备上播放.我不确定我做错了什么.当然我检查了我的扬声器是否仍在工作,但他们在使用其他应用程序或iPod库时也是如此.
我只是使用这个简单的代码:
[[SimpleAudioEngine sharedEngine] playEffect:@"button.wav"];
Run Code Online (Sandbox Code Playgroud)
我仔细检查了文件的名称,它确实是button.wav.
我希望有人可以帮助我.
我正在尝试使用 Conda 安装 SimpleAudio,尽管遇到了错误。然后我尝试 Pip 并得到一个不同的错误。我在 Raspberry Pi 4 上运行 Raspbian Buster,Python 版本为 3.6.6。康达版本 4.5.1。点子版本 18.0。处理器是ARM Cortex-A72。
我使用以下命令来安装 SimpleAudio:
conda install -c skmad simpleaudio
Run Code Online (Sandbox Code Playgroud)
然后我收到以下错误:
Solving environment: failed
PackagesNotFoundError: The following packages are not available from current channels:
- simpleaudio
Current channels:
- https://conda.anaconda.org/skmad/linux-armv7l
- https://conda.anaconda.org/skmad/noarch
- https://conda.anaconda.org/rpi/linux-armv7l
- https://conda.anaconda.org/rpi/noarch
- https://repo.anaconda.com/pkgs/main/linux-armv7l
- https://repo.anaconda.com/pkgs/main/noarch
- https://repo.anaconda.com/pkgs/free/linux-armv7l
- https://repo.anaconda.com/pkgs/free/noarch
- https://repo.anaconda.com/pkgs/r/linux-armv7l
- https://repo.anaconda.com/pkgs/r/noarch
- https://repo.anaconda.com/pkgs/pro/linux-armv7l
- https://repo.anaconda.com/pkgs/pro/noarch
To search for alternate channels that may provide the conda package you're
looking for, …Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,我正在使用以下代码播放音乐.但我想减少背景音乐的音量.如何做到这一点.
谢谢,阿尼什
所以使用Cocos2D-X,在AppDelegate.cpp文件中,我取消注释该行:
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
Run Code Online (Sandbox Code Playgroud)
以便在退出应用程序时暂停我的音频.但是,当我这样做时,我会收到标题中所述的错误.我怎样才能解决这个问题?
如何按顺序在cocos2d中播放声音,任何身体都有任何想法,例如我有三个声音
[[SimpleAudioEngine sharedEngine] playEffect:[CommanMethods GetCompleteSoundPath:objplate.OrderOneSound]];
[[SimpleAudioEngine sharedEngine] playEffect:[CommanMethods GetCompleteSoundPath:objplate.WithSound]];
[[SimpleAudioEngine sharedEngine] playEffect:[CommanMethods GetCompleteSoundPath:objplate.OrderTwoSound]];
Run Code Online (Sandbox Code Playgroud)
这是声音效果播放的代码,当一个人停下来然后再播放之后我怎么玩
我试图让背景音乐一次又一次地播放和循环以及一次性声音,例如升级等.
我发现很多关于这个使用SimpleAudioEngine的教程,但是当我导入SimpleAudioEngine.h时,编译器声明"未找到SimpleAudioEngine.h文件"
我正在使用SpriteBuilder和cocos2d v3.
有谁知道我可以从哪里获得这门课程?
谢谢
audio ×4
ios ×3
iphone ×3
objective-c ×3
appdelegate ×1
c++ ×1
centos ×1
cocos2d-x ×1
conda ×1
pip ×1
soundeffect ×1
xcode4.2 ×1