【开源项目】QT播放PCM音频实例详细
生活随笔
收集整理的這篇文章主要介紹了
【开源项目】QT播放PCM音频实例详细
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
#include<QtCore/QCoreApplication>
#include<QAudioFormat>
#include<QAudioOutput>
#include<QThread>
#include<iostream>
using namespace std;
//準備好PCM數據
//ffmpeg -i PP.mp4 -f s16le out.pcm
int main(int argc, char *argv[])
{QCoreApplication a(argc, argv);QAudioFormat fmt;fmt.setSampleRate(16000);//樣本率fmt.setSampleSize(16);//樣本大小fmt.setChannelCount(2);//通道大小fmt.setCodec("audio/pcm");fmt.setByteOrder(QAudioFormat::LittleEndian);//小端模式fmt.setSampleType(QAudioFormat::UnSignedInt);QAudioOutput *out = new QAudioOutput(fmt);QIODevice *io = out->start();//開始播放int size = out->periodSize();char *buf = new char[size];FILE *fp = fopen("16k.pcm", "rb");if (!fp){cout << "文件打開失敗" << endl;}while (!feof(fp)){if (out->bytesFree() < size){QThread::msleep(1);continue;}int len = fread(buf, 1, size, fp);if (len < 0)break;io->write(buf, len);}fclose(fp);delete[]buf;return a.exec();
}
本文相關開源項目下載
總結
以上是生活随笔為你收集整理的【开源项目】QT播放PCM音频实例详细的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 消防备案咨询电话(消防备案咨询)
- 下一篇: 【开源项目】QT OPENGL 与 sh