📄 wavplay.h
字号:
#ifndef WAVPLAYER_H
#define WAVPLAYER_H
//****程希望****编的
#include <fcntl.h>
#include <unistd.h>
#include <sys/ioctl.h>
#include <sys/types.h>
#include <linux/soundcard.h>
#include <sys/mman.h>
#include <qobject.h>
#include <qstring.h>
#include <qfile.h>
#include <qtimer.h>
#define SND_DEV "/dev/audio"
#define MIX_DEV "/dev/mixer"
typedef struct waveHeadStruct//****程希望****编的
{
char riff_flag[4];
long file_leng;
char wave_flag[4];
char fmt_flag[4];
char no_use[4];
short format_type;
short channel;
unsigned short rate;
long tran_rate;
short block;
short bits;
char data_flag[4];
long data_leng;
} WH;
class WavePlay : public QObject//****程希望****编的
{
Q_OBJECT
public:
WavePlay(int bufSize = 1024, QString = QString(SND_DEV));
~WavePlay();
signals:
void placeChanged(int);
public slots://****程希望****编的
void openSound(QString);
void play();
void pause();
void stop();
void forward();
void backward();
void setPlace();
private://****程希望****编的
void readWaveHead();
void soundCardCtl();
void closeSound();
QString fileName;
int sndFd, wavFd;
unsigned long place;
WH *pHead;
unsigned char *buffer;
unsigned long bufferSize;
unsigned long fileSize;
int playState;
};
#endif//****程希望****编的
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -