考试考完后决定把智能播放器重新写一遍,要能支持更多格式(包括wav、MP3、wma、flac、ape等常见的格式),用新的智能算法。于是就不能用MCI接口来做简单的编程了,就必须用到第三方解码器,这个过程是曲折的,花了我一周的时间才写出能够解码播放上述格式的音乐播放器,而智能算法现在还没有实现。。在此把这方面编程的入门知识写下来,希望能帮助某些像我当初一样的人。万事开头难,真的是这样子的,因此我也把开头的那部分写下来,很多技术实现都被我隐藏了,本文只是做一个基本的扫盲,有任何问题都可以留言相问。
音频播放的流程:如果是无压缩的波形文件,直接将其读入声卡就可以自动的播放了(如果有的声卡能够支持硬件解码,或许也能直接播放某些格式的音乐,但这一点我不太了解^_^),如果是经过编码的文件格式,比如MP3、flac等格式的文件,就必须先软解码成波形数据,然后再送入声卡播放。以你此,要编一个windows、linux等操作系统下的音频播放器,一般有以下两个流程:解码à播放。(刚开始编播放器的时候这一点都不知道,囧,于是面对那些解码库无从下手浪费了很多时间)。如果有开源的解码库,要做解码工作应该不难,比如