低音"Play"流
BASS "Play" a stream
开发者朋友们好,
我有一个问题,我正在做一款射击游戏,但我不确定如何执行爆炸发生时,因为爆炸总是相同的声音结束,可以在短时间内发生,即,声音甚至没有结束,另一个爆炸发生了。我的问题是,如何在同一个流中"玩"不止一次?
谢谢!
下面是一个非常简单的例子:
int device = -1; // Default Sounddevice
int freq = 44100; // Sample rate (Hz)
HSTREAM streamHandle; // Handle for open stream
/* Initialize output device */
BASS_Init(device, freq, 0, 0, NULL);
/* Load your soundfile and play it */
streamHandle = BASS_StreamCreateFile(FALSE, "your_file.mp3", 0, 0, 0);
BASS_ChannelPlay(streamHandle, FALSE);
/* As very last, close Bass */
BASS_Free();
虽然这个例子只播放一次声音文件,但您可以在每次需要声音时创建一个新的句柄。但是BASS_Init()
和BASS_Free()
只能运行一次。
另一个解决方案是将声音作为样本播放:
HSAMPLE streamHandle; // Handle for sample
HCHANNEL channel; // Handle for open channel of the sample
/* Initialize output device */
BASS_Init(device, freq, 0, 0, NULL);
/* Load sample and play it */
streamHandle = BASS_SampleLoad(FALSE, "your_file.mp3", 0, 0, 0);
channel = BASS_SampleGetChannel(streamHandle, FALSE);
/* Once you are done with your sample you should free it */
BASS_SampleFree(streamHandle);
/* As very last, close Bass */
BASS_Free();
假设我们正在谈论相同的低音音频API,然后导航到BASSChannelsBass_ChannelPlay()
的在线文档。调用Bass_ChannelPlay()
传递你现有的句柄为爆炸和设置restart
为true
-查看文档了解更多信息。
相关文章:
- 运行命令 "rosbag play example.bag" 时出错。找不到与插件 rosbag/NoEncryptor 对应的库
- 谷歌Play游戏服务和64位x86支持
- TAG_ID3(来自低音 2.4.4)无法正常工作
- 安卓游戏调试正常,但从Play商店下载时崩溃
- 更新功能(OpenFramework)中的Leap Motion Play声音
- 均衡器,低音增强和混响效果不起作用(使用FFmpegMediaPlayer)
- Qt上的Fedora V-Play:找不到库
- 如何将混合应用程序上传到Google Play
- Google Play Games C++API-无法通过程序访问好友
- 如何将 mciSendString("play path",0,0,0) 与 exe path 一起使用?
- Spoj :ENIGMATH - PLAY WITH MATH
- 在Qt项目中引用Google Play库
- 确保抽象低音类是shared_ptr
- 带低音库的多扬声器选项
- Google Play游戏服务可以用于PC游戏吗?(Windows/Linux/OSX)
- Google Play 游戏服务C++集成
- 如何在C/C++或Java中生成真正的低音吉他声音
- Google Play游戏服务(GPGS)实时多人游戏(RTMP)在Android上永远不会匹配(iOS适用)
- unordered_set:二进制表达式的操作数无效("const Play"和"const Play")
- 低音"Play"流