标题:Qt编写带频谱的音乐播放器
作者:liudianwu
日期:2018-07-20 11:47
内容:
之前有个项目需要将音频文件的频谱显示出来,想了很多办法,后面发现fmod这个好东西,还是跨平台的,就一个头文件+一个库文件就行,简单小巧功能强大,人家做的真牛逼。为了不卡住界面,采用了多线程处理。
可执行文件下载:https://pan.baidu.com/s/1JIjiCv800KPDZS9aSRPObQ
1:可获取整个声音文件采样值数据
2:可实时获取当前播放位置的采样值数据
3:可设置采样的步长和数量
4:可开始播放/暂停播放/停止播放
5:多线程处理,超流畅
6:可设置当前播放位置
7:可设置音量
头文件代码
#ifndef FMODTHREAD_H
#define FMODTHREAD_H
/**
* fmod音乐播放类 作者:feiyangqingyun(QQ:517216493) 2017-9-12
* 1:可获取整个声音文件采样值数据
* 2:可实时获取当前播放位置的采样值数据
* 3:可设置采样的步长和数量
* 4:可开始播放/暂停播放/停止播放
* 5:多线程处理,超流畅
* 6:可设置当前播放位置
* 7:可设置音量
* 参考文章:http://blog.csdn.net/fengyhack/article/details/43318575
*/
#include
class FMOD_SYSTEM;
class FMOD_SOUND;
class FMOD_CHANNEL;
class FmodThread : public QThread
{
Q_OBJECT
public:
explicit FmodThread(QObject *parent = 0);
~FmodThread();
protected:
void run();
private:
bool stopped; //停止线程标志位
bool isPlayWave; //开始播放标志位
bool isPauseWave; //暂停播放标志位
bool isStopWave; //停止播放标志位
bool isReadWave; //读取当前位置采样值标志位
int step; //采样值步长
int count;  ..
#1 [青春的年代 07-20 13:09]
又更新
#2 [往事纯白 07-20 17:06]
又更新
#3 [liuchangyin 07-21 10:17]
#4 [305750665 07-25 08:57]
#5 [核心科技 07-25 18:59]
刘总,相当6