C++读取WAV音频文件的头部数据的实现方法
C++读取WAV音频文件的头部数据的实现方法
前言:
在这里分享一下自己的心得,希望和大家一起分享技术,如果有什么不足,还请大家指正。写出这篇目的,就是希望大家一起成长,我也相信技术之间没有高低,只有互补,只有分享,才能使彼此更加成长。
实现代码:
#include#include #include usingnamespacestd; usingstd::string; usingstd::fstream; typedefstructWAV_HEADER{ charRIFF[4];//RIFFHeaderMagicheader unsignedlongChunkSize;//RIFFChunkSize charWAVE[4];//WAVEHeader charfmt[4];//FMTheader unsignedlongSubchunk1Size;//Sizeofthefmtchunk unsignedshortAudioFormat;//Audioformat1=PCM,6=mulaw,7=alaw,257=IBMMu-Law,258=IBMA-Law,259=ADPCM unsignedshortNumOfChan;//Numberofchannels1=Mono2=Sterio unsignedlongSamplesPerSec;//SamplingFrequencyinHz unsignedlongbytesPerSec;//bytespersecond unsignedshortblockAlign;//2=16-bitmono,4=16-bitstereo unsignedshortbitsPerSample;//Numberofbitspersample charSubchunk2ID[4];//"data"string unsignedlongSubchunk2Size;//Sampleddatalength }wav_hdr; //Functionprototypes intgetFileSize(FILE*inFile); intmain(intargc,char*argv[]){ wav_hdrwavHeader; FILE*wavFile; intheaderSize=sizeof(wav_hdr),filelength=0; stringanswer; do{ stringinput; stringanswer; constchar*filePath; cout<<"PickwavfilefromtheWindowsMediaFile:"; cin>>input; cin.get(); cout< >answer; //cin.get(); cout< 如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望通过本文能帮助到大家,谢谢大家对本站的支持!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。