如何在播放前知道mid,wav,3gp(mp4)这些文件已损坏 如何在播放前知道mid,wav,3gp(mp4)这些文件已损坏,就是如何通过解析这些文件的头来得到相应的文件信息,而不用再去播放它? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先研究一下各个文件得头格式吧.WAV的是'RIFF' -- 4(size) -- 4'WAVE' -- 4'fmt ' -- 4(size) -- 4WAVEFORMATEX -- 18 tag - 2 channel - 2 samplerate - 4 bytepersecond - 4 blockalign - 2 bitrate - 2 cbsize - 2'DATA' -- 4(size) -- 4Wave文件的一般格式:1.头四个字节是RIFF标识符.2.接着四个字节是Wave文件的长度-83.接着四个字节是WAVE标识符.fmt chunk.4.接着四个字节是fmt标识符.5.接着四个字节是fmt chunk的长度(不包括fmt id和它自己用的8个字节)6.接着两个字节是wformattag(1为非压缩数据).7.接着两个字节是声道数.8.接着四个字节是采样频率.9.接着四个字节是每秒播放的字节数.10.接着两个字节是sample frame的字节数.(blockalign = channel*sample/8).11.接着两个字节是采样位数.建议用DXSDK会方便得多 如何设置listctrl的列宽 OCX控件怎么调用? 对话框接收消息的问题 ? 在对话框上做许多个小窗口,每个小窗口内控件一样,请问如何实现 用MFC写程序,生成的.exe文件是不是只能在有MFC库的机器上才能运行? 编写非托管程序用VC6好还是VC7好? 如何利用CFile类在一个文件末端逐行添加数据? 求碰撞检测的例子 关于windows MFC 的一些疑问? 学习编程时,书上的例子和公司里的项目有什么不同? 【世界杯竞猜】【连载】【第一天】 UI
'RIFF' -- 4
(size) -- 4
'WAVE' -- 4
'fmt ' -- 4
(size) -- 4
WAVEFORMATEX -- 18
tag - 2
channel - 2
samplerate - 4
bytepersecond - 4
blockalign - 2
bitrate - 2
cbsize - 2
'DATA' -- 4
(size) -- 4Wave文件的一般格式:
1.头四个字节是RIFF标识符.
2.接着四个字节是Wave文件的长度-8
3.接着四个字节是WAVE标识符.fmt chunk.
4.接着四个字节是fmt标识符.
5.接着四个字节是fmt chunk的长度(不包括fmt id和它自己用的8个字节)
6.接着两个字节是wformattag(1为非压缩数据).
7.接着两个字节是声道数.
8.接着四个字节是采样频率.
9.接着四个字节是每秒播放的字节数.
10.接着两个字节是sample frame的字节数.(blockalign = channel*sample/8).
11.接着两个字节是采样位数.建议用DXSDK会方便得多