⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsbuffer.h

📁 此书包含了大量的VC程序源代码,对于学习者来说是非常重要的,看后大家对VC将会有质的提高.非常经典.
💻 H
字号:
// DSBuffer.h : Definition of CDSBuffer class
//

#if !defined(AFX_DSBUFFER_H__7517D749_96E3_11D2_BBF3_9EB4940D843C__INCLUDED_)
#define AFX_DSBUFFER_H__7517D749_96E3_11D2_BBF3_9EB4940D843C__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include <mmsystem.h>
#include <dsound.h>

//设置如下两个全局变量控制音量:
extern int   m_nBkGrdVolume; //用于控制背景音乐音量大小
extern int   m_nYinXiaoVolume; //用于控制音效音量大小

//wav文件头格式
struct WaveHeader
{
	BYTE        RIFF[4];          // "RIFF"
	DWORD       dwSize;           // Size of data to follow
	BYTE        WAVE[4];          // "WAVE"
	BYTE        fmt_[4];          // "fmt "
	DWORD       dw16;             // 16
	WORD        wOne_0;           // 1
	WORD        wChnls;           // Number of Channels
	DWORD       dwSRate;          // Sample Rate
	DWORD       BytesPerSec;      // Sample Rate
	WORD        wBlkAlign;        // 1
	WORD        BitsPerSample;    // Sample size
	BYTE        DATA[4];          // "DATA"
	DWORD       dwDSize;          // Number of Samples
};

class CDSBuffer : public CObject
{
// Attribute
protected:
	LPDIRECTSOUNDBUFFER		m_lpDSBuffer;			// 声音缓冲区对象

public:
	CDSBuffer();
	CDSBuffer(const char* FileName,BOOL m_bBackGroundMusic,LPDIRECTSOUND lpDS,DWORD dwFlags = DSBCAPS_CTRLVOLUME );
	~CDSBuffer();

public:
	BOOL	PlaySound(BOOL bContinue=FALSE);     //播放声音
	BOOL	StopSound();						 //停止播放
	BOOL	CreateSoundBuffer(LPDIRECTSOUND lpDS, DWORD dwFlags, DWORD dwBufSize, DWORD dwFreq, DWORD dwBitsPerSample, DWORD dwBlkAlign, BOOL bStereo);
	BOOL	ReadData(FILE* pFile, DWORD dwSize, DWORD dwPos);
	BOOL	IsValid();
	LPDIRECTSOUNDBUFFER		GetBuffer() { return m_lpDSBuffer;}
	void SetVolume(int percent=50);   //设置音量
	void VolumeDown(int percent=10);  //音量增大(percent为百分数,范围为
	void VolumeUp(int percent=10);    //音量减小  1~100) 
	
private:
	BOOL    m_bBkGrdMusic;            //是否是背景音乐,TRUE为是
};


#endif // !defined(AFX_DSBUFFER_H__7517D749_96E3_11D2_BBF3_9EB4940D843C__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -