SDL/C++没有音频
No audio with SDL/C++
void LoadMusic(string path);
Mix_Music* gMusic = NULL;
LoadMusic("Music/bubble-bobble.mp3");
if(Mix_PlayingMusic() == 0)
{
Mix_PlayMusic(gMusic, -1);
}
if(Mix_OpenAudio(44100, MIX_DEFAULT_FORMAT, 2, 2048) < 0)
{
cout << "Mixer could not initialise. error: " << Mix_GetError();
return false;
}
Mix_FreeMusic(gMusic);
gMusic = NULL;
void LoadMusic(string path)
{
gMusic = Mix_LoadMUS(path.c_str());
if(gMusic == NULL)
{
cout << "Failed to load background music! Error: " << Mix_GetError() << endl;
}
}
我一直在学习如何让音频与我的游戏配合使用的教程,我觉得有些地方出了问题,因为它根本没有播放任何声音。这不是100%的问题,但有人知道我做错了什么以及如何解决吗?
您不指定操作系统和其他重要上下文,但。。。
如果您在Windows下运行构建,您可能会遇到与我相同的问题:
令人惊讶的是,SDL库需要一个环境变量才能播放音频。
尝试将SDL_AUDIODRIVER=waveout
(或者SDL_AUDIODRIVER=dsound
(添加到您的环境中(在Windows下(。
我也遇到了类似的问题,当时我正在按照教程创建自己的C++简单音频播放器,但它不起作用。我让它显示可用播放设备的名称,但它们似乎都不起作用,直到我添加了环境变量。
在我的系统中添加了一个名为SDL_AUDIODRIVER=directsound
的环境变量后,它在Windows10中运行良好。
相关文章:
- 用c++阅读音频
- 为什么这个音频包络不能通过开关的情况?
- FFMpeg库:如何在音频文件中精确查找
- 需要反转音频步进公式
- 如何在音频处理中使用超能力时间拉伸类
- C++新手,想知道如何使用VS code 2019播放音频文件
- 如何暂停插孔音频客户端
- 如何以编程方式将音频从任何录制设备路由到任何播放设备
- 将音频从浏览器流式传输到WebRTC本机C++应用程序
- 使用IMFSourceReader(Microsoft媒体基金会)进行音频流传输
- 大声音频无法播放
- 让 iaxClient 将音频发送到缓冲区而不是音频设备/从缓冲区获取音频
- 适用于 macOS 的 Xcode 应用程序。这就是我设置从USB麦克风输入获取音频的方式。一年前工作,现在没有了。为什么
- 波形音频 - waveOutWrite 发出断断续续的声音
- WASAPI 共享模式:音频引擎预期的振幅是多少?
- 在Win7上,在默认端点上轮询音频会话有时会崩溃
- 媒体基金会:WavSink以比实时消耗率更快的速度处理音频-是否可以实时限制后台处理
- PJSUA在两个或多个不同的音频声卡之间切换
- 当直接渲染到WASAPI时,两个流中的一个流没有音频输出
- FFmpeg av_read_frame从音频流返回数据包