- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
开发者 friend 们好,
我有一个问题,我正在做一个射击游戏,但是我不确定发生爆炸时如何实现,因为爆炸总是相同的声音并且可以在很短的时间内发生,即声音甚至还没有结束,又发生了一次爆炸。我的问题是,如何在同一流中多次“播放”?
谢谢!
最佳答案
这是一个非常简单的例子:
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();
关于c++ - BASS "Play"流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7180920/
我正在使用一个pushStream,其中充满了音频数据。 将所有数据推送到流后,我正在使用Bass.BASS_ChannelPlay(playPushStream,false)进行播放,效果很好,但只
我正在尝试让我的代码从控制台获取输入并将其输入到此函数中,这样我就不必为我想要的每首歌曲都硬编码 1 mp3。 HSAMPLE sample = BASS_SampleLoad(FALSE, "D:
进程文件: bass or bass.exe 进程名称: N/A 进程类别:存在安全风险的进程 英文描述: Computer game 中文参考: 对不起,暂时没有中文参考! 出品者:
我想分析我的默认播放设备并检测节拍。我一直在使用 BASS WASAPI 来获取所选设备的 FFT 数据: int ret = BassWasapi.BASS_WASAPI_GetData(_fft,
如何使用 Bass library 绘制给定音频文件的频谱? ? 我的意思是类似于 Audacity 生成的图表: 我知道我可以获得给定时间 t(当我播放音频时)的 FFT 数据: float fft
如果我有一个带有派生类的基类,是否可以根据传入单个构造函数的参数将实例创建为 bass 类或派生类? 示例代码: //Base Class class MyClass { public: //Al
如何静音和取消静音 BASS 播放(平台独立)?到目前为止,我在静音前保存当前音量,将音量设置为 0,如果取消静音则将其设置回来。 示例: 我的 C++ 类(class)的一部分 volume_t l
在 Java 中,我一直在努力寻找一种方法: 以可以访问的方式对枚举进行分组,例如:MainGroup.FirstEnumGroup.GREEN。 对于分组的枚举,有一个可以引用枚举组的基本枚举(有点
开发者 friend 们好, 我有一个问题,我正在做一个射击游戏,但是我不确定发生爆炸时如何实现,因为爆炸总是相同的声音并且可以在很短的时间内发生,即声音甚至还没有结束,又发生了一次爆炸。我的问题是,
我正在尝试为 Windows 编写一个简单的 Babymonitor(个人使用)。婴儿监视器应该只检测麦克风的 dB 级别并在一定音量下触发。 经过一番研究,我找到了 Bass.dll 库,并发现了它
我发现此代码here创建了给定文件的频谱图,但它在播放和绘制频谱图时一直让我等待。 我需要修改此代码以立即创建频谱图,而无需播放文件。 提前致谢。 public partial class Form1
我正在尝试为我的 Linux Ubuntu Hardy Heron make BASS 2.4.4 库,但是当我运行 make 时,我遇到了很多错误,请参阅: [ubuntu@eeepc:~/Desk
我正在使用 BASS.dll 库,我想做的就是使用 BASS_StreamCreateFile 等将正在播放的 MP3 部分“重定向”到另一个文件(可能是 MP3 或 WAVe)。我不知道如何开始?我
我已经查看了 BASS 引用以寻找解决方案,但我没有找到。我的音频只是不想播放,是的,我检查了我的扬声器是否正常工作。这是“代码”: #include "stdafx.h" #include "D:\
我在 Windows 上使用 CPP 和 BASS 编写了一个应用程序,现在我必须让它在 Linux (UBUNTU) 上运行。 I am using gcc version 4.5.2. 我的目录中
我正在使用 OpenCV 和 Visual Studio 2010 开发一个项目。我在 VS 2010 上安装 BASS 音频库时遇到问题。我下载了 these win32 libraries 我将
我正在编写一个媒体播放器,该播放器将 Bass.Net 包装器用于 Un4Seen 的 Bass 原生音频 API。该库对非商业用途都是免费的,我有免费许可证,但在文档中它说除非你告诉 Bass 使用
我在为我的 child 做的项目中有一个奇怪的行为。我想用 rapidXml 解析一个 xml 并在我的 RasPi1B 上播放带低音的 mp3。如果我只是在一个主要功能中按下它,一切都会正常。但是一
这个问题在这里已经有了答案: What is a spectrogram and how do I set its parameters? (1 个回答) 6年前关闭。 我将一个音频文件分成三个片段,
我无法使用 the 64-bit version of bass.dll 运行我的 64 位 Delphi 应用程序。我正在使用 Delphi XE3 来构建我的应用程序。 应用程序崩溃并以 0xc0
我是一名优秀的程序员,十分优秀!