PlaySound 播放内存中的音频数据
原创文章,作者:StubbornHuang,如若转载,请注明出处:《PlaySound 播放内存中的音频数据》https://www.stubbornhuang.com/132/
PlaySound直接播放本地音频文件,速度有点滞后,可以采用先将音频文件读取到内存中,然后在播放音频的时候直接从内存中读取音频数据进行播放,播放速度会有提示。
#include <iostream>
#include <algorithm>
#include <string>
#include <windows.h>
#include "Mmsystem.h"
#include <Digitalv.h>
#pragma comment(lib, "Winmm.lib")
using namespace std;
int main()
{
char* m_AlertMusicBuffer = nullptr;
FILE* alertMusicFile;
alertMusicFile = fopen(".//alert.wav", "rb");
if (alertMusicFile != nullptr)
{
fseek(alertMusicFile, 0, SEEK_END);
long fileSize = ftell(alertMusicFile);
rewind(alertMusicFile);
int num = fileSize / sizeof(char);
m_AlertMusicBuffer = (char*)malloc(sizeof(char)*num);
if (m_AlertMusicBuffer == NULL)
{
return 0;
}
fread(m_AlertMusicBuffer, sizeof(char), num, alertMusicFile);
}
PlaySound((LPCSTR)m_AlertMusicBuffer, NULL, SND_MEMORY | SND_LOOP | SND_ASYNC);
free(m_AlertMusicBuffer);
getchar();
return 0;
}
当前分类随机文章推荐
- WPF - 代码动态更换按钮的背景图片
- Windows平台录音类封装:AudioRecordWindows
- 用MFC写一个简易的恶作剧QQ好友的聊天轰炸机
- Windows - 虚拟按键Virtual-Key Codes大全
- PlaySound 播放内存中的音频数据
- mciSendCommand在Win10上奔溃的问题解决/循环播放音乐
- Windows 批处理文件bat执行完自动退出cmd黑窗口
- Visual Studio - 将程序的日志输出到Visual Studio即时窗口
全站随机文章推荐
- Python:UnicodeEncodeError: 'gbk' codec can't encode character '\xbb' in position 12305,以及中文乱码的解决方案
- 资源分享 - OpenGL编程指南(原书第7版)- OpenGL红宝书高清扫描版PDF下载
- Python3爬虫 - requests库
- 资源分享 - 动手学深度学习(李沐 2020年05月08日)PDF下载
- Duilib - 使Duilib主窗口前置,但是又不是一直作为最顶层窗口
- Modern OpenGL从零开始 - 在Visual Studio中配置OpenGL开发环境
- UnrealEngine4 - 将TextureRenderTarget2D保存为图片
- C++11 - std::bind简要介绍以及可绑定函数的几种形式总结
- 三维点云重建(曲面重建)的经典算法
- 资源分享 - Computer Graphics Principles and Practice (3rd edition) 英文高清PDF下载