虽然AVI的文件格式很熟悉了,根据RIFF file refence里面的说明生成的AVI拿mpc一类的播放器可以正常播放,但是windows media player却死活也播放不了。用偶的程序生成的AVI文件在目录里面也没有预览,也读不出文件里面的信息,搞得偶好郁闷。有时候甚至想把自己写的这个上千行的avibuilder删了,换成系统自带的avi相关的API来实现,不过看着那么多的API自己感觉很复杂,也没有办法支持压缩的格式,所以只好放弃。
今天无聊了,又拿起了visual dub来看avi的格式,突然我发现我生成的avi文件和正常的avi文件的文件头的差别了(左边是错误的,右边是正确的,黄颜色背景的那个):
一个极小的失误,费了好长的工夫。只怪当时看文档的时候没有多想想,怎么可能会把header的标识放到了stream上面。
修改完了后,偶的avibuidler生成的AVI终于和正常的一样了。