作者:虚坏叔叔
早餐店不会开到晚上,想吃的人早就来了!😄
一、二进制读取pcm文件流,写入到播放设备
TestQAudioOutput
项目下载地址
链接:https://pan.baidu.com/s/1b6RW2A-CeBeMZgfLX5gfXw
提取码:o5sd
打开并且生成生成项目TestQAudioOutput
可以看到最后生成到这里:
需要将out.pcm
文件拷贝到这里,便于二进制读取这个pcm
文件:
需要包含这些头文件:
#include <QAudioFormat>
#include <fstream>
#include <QAudioOutput>
修改工作目录:
// TODO: 生成PCM文件,然后使用二进制读文件的方式,读出流写入播放设备中进行播放声音
QAudioOutput* out = new QAudioOutput(fmt);
QIODevice* io = out->start(); // 操作声音设备
int size = out->periodSize();//一个播放周期的大小
//out->bytesFree
char* tmp = new char[size]; // 文件缓冲区
string src = "out.pcm";
ifstream in(src.c_str(), ios::in | ios::binary);
if (!in) // 开发是否成功
{
return -1;
}
调制可以看到读取成功了:
二、总结
- 本文完成了pcm文件的读取 。