用Modem at指令播放声音文件
2011-11-28 16:00:24
分类: LINUX echo " 127.0.0.1 localhost.localdomain bogon localhost localhost4 " >> /etc/hosts sudo chown 500 /var/lock/lockdev 进minicom后。。 atz at+fclass=8 atdt[phone number] or ata at+vls=1 at+vrx => start recv voice at+vtx => start send voice 发完那个命令就自己ReadFile(从文件读),WriteFile(向Modem写)啊 1。语音数据需要透明化,即,消除与modem控制命令向抵触的数据,加上转义符 2。语音的数据格式有要求,一般是A率(a-law)单声道的数据,播放速度不能控制,除非你做混音或合成,即先调好速度再播放。格式不对听不到声音或声音变形。你可以用CoolEdit2000修改文件格式。除非自己做一些编码解码器(网上有源代码),否则不是随便指定什么文件都能播放。MP3肯定不能直接,除非Modem内置了MP3解码芯片(那是天方夜谭,呵呵) 3。Modem跟声卡连接的问题本人没做过,发完at+vtx就在向外播放声卡解码的声音了。 4。跟控制面板无关,只要Modem安装正常。 5。用文件API向Modem发送和从Modem接收语音,即使使用TAPI也需要这一组函数。先GetLineID()(好象是这个函数吧?)再ReadFile()或者WriteFile() 6。一般是使用硬件流控方式,通过DCB设置给modem。主叫方要 atz at+flcass=8(不支持该指令的Modem不能用) at+vls=1 at+vrx/vtx modem作为被叫可能也需要at+fclass=8,再ata 7。一般的modem只支持语音半双工,做电脑自动语音功能还可以,不能指望用它来通话,除非自己特制的modem |
|