获取WAV文件的相关信息
来源:互联网 发布:php获取当前时间 编辑:程序博客网 时间:2024/05/17 12:21
主要实现代码:
HMMIO m_hmmio;
MMCKINFO m_MMCkInfoParent;
WAVEFORMATEX m_PCMWaveFmtRecord;
MMCKINFO m_MMCkInfoChild;
TCHAR bigBuff[2048] = ""; // maximum common dialog buffer size
TCHAR szFilter[] =
"Text Files (*.wav)|*.wav|All Files (*.*)|*.*||";
//TCHAR csFileName[MAX_PATH];
//CString csFileName;
CString m_strFilePath;
CString strWaveInformation;
CString szExtFile;
CFileDialog dlg(TRUE, NULL, NULL,
OFN_HIDEREADONLY | OFN_ALLOWMULTISELECT, szFilter);
// Modify OPENFILENAME members directly to point to bigBuff
dlg.m_ofn.lpstrFile = bigBuff;
dlg.m_ofn.nMaxFile = sizeof(bigBuff);
if(dlg.DoModal() == IDOK)
{
m_strFilePath = dlg.GetPathName();
}
else
return;
m_hmmio = mmioOpen((LPSTR)(LPCTSTR)m_strFilePath,NULL,MMIO_READ);
if(!m_hmmio)
{
AfxMessageBox("unable to open Sound MM File");
return ;
}
m_MMCkInfoParent.fccType = mmioFOURCC('W','A','V','E');
int errorCode = mmioDescend(m_hmmio, &m_MMCkInfoParent,NULL,MMIO_FINDRIFF);
if(errorCode)
{
AfxMessageBox("Error descending into file");
mmioClose(m_hmmio,0);
m_hmmio = NULL;
return ;
}
m_MMCkInfoChild.ckid = mmioFOURCC('f','m','t',' ');
errorCode = mmioDescend(m_hmmio,&m_MMCkInfoChild,&m_MMCkInfoParent,MMIO_FINDCHUNK);
if(errorCode)
{
AfxMessageBox("Error descending in file");
mmioClose(m_hmmio,0);
m_hmmio = NULL;
return ;
}
DWORD bytesRead = mmioRead(m_hmmio,(LPSTR)&m_PCMWaveFmtRecord,m_MMCkInfoChild.cksize);
if(bytesRead < 0)
{
AfxMessageBox("Error reading PCM wave format record");
mmioClose(m_hmmio,0);
return ;
}
strWaveInformation.Format("wFormatTag = %d , nChannels = %d, nSamplesPerSec = %d, nAvgBytesPerSec = %d, nBlockAlign = %d, wBitsPerSample = %d, cbSize = %d",
m_PCMWaveFmtRecord.wFormatTag, m_PCMWaveFmtRecord.nChannels,
m_PCMWaveFmtRecord.nSamplesPerSec ,m_PCMWaveFmtRecord.nAvgBytesPerSec ,
m_PCMWaveFmtRecord.nBlockAlign, m_PCMWaveFmtRecord.wBitsPerSample,m_PCMWaveFmtRecord.cbSize);
AfxMessageBox(strWaveInformation);
mmioClose(m_hmmio,0);
- 获取WAV文件的相关信息
- 从nand flash中读取wav文件的相关信息
- 用VC读取WAV文件的信息
- WAV文件头信息
- WAV文件头信息
- sox 获取wav文件的时长
- WAV文件的头信息(文件头格式)
- os 与 stat 在文件中获取相关的信息
- Linux下查看wav文件的头信息-sox
- Python 获取文件信息,文件相关
- java获取Wav文件的属性及Wav音频文件的合成
- C#获取WAV文件的长度和结构
- 获取网卡的相关信息
- 获取网卡的相关信息
- 获取手机的相关信息
- 获取主机的相关信息
- 获取手机的相关信息
- 获取系统的相关信息
- 测试用例标准讨论
- 场景中移动模型
- 平淡生活:一切皆有可能
- 将PHP作为Shell脚本语言使用
- LINUX下挂载WINDES分区集锦
- 获取WAV文件的相关信息
- 虚拟的大战,真实的恐惧:《世界大战》观后
- 离别与重新开始
- Collection:方便隐含问题所在
- How time fly
- 开发75条
- 20050710日记
- 歪评《西游记》:众说好员工必备的N个素质(一)-zz
- 类之女孩