語音卡平臺也基于Linux
張官勇 2002/01/21
隨著計(jì)算機(jī)技術(shù)和語音相關(guān)技術(shù)的發(fā)展,語音卡的應(yīng)用得到了進(jìn)一步的深入,也開始介入一些新的領(lǐng)域。但是在語音卡應(yīng)用不斷深入的同時,對系統(tǒng)開發(fā)的要求也隨之提高。尤其在某些領(lǐng)域,它們通常采用Linux/Unix系統(tǒng),要求開發(fā)的應(yīng)用系統(tǒng)必須能安全、穩(wěn)定、高效的運(yùn)行。鑒于這種現(xiàn)狀,三匯公司推出了Linux操作系統(tǒng)的語音卡驅(qū)動程序。
用戶需要Linux平臺
Linux是一個誕生于網(wǎng)絡(luò)、成長于網(wǎng)絡(luò)且成熟于網(wǎng)絡(luò)的操作系統(tǒng)。Linux的發(fā)展凝聚了世界各地?zé)o數(shù)開發(fā)人員的大量心血,體現(xiàn)了一種信息世界的共建、共享和共榮的精神,F(xiàn)在,Linux憑借其設(shè)計(jì)和性能,加上IBM、Intel、CA、Core、Oracle等企業(yè)的大力支持,市場份額逐步擴(kuò)大,逐漸成為主流的操作系統(tǒng)之一。
基于Windows 98/NT/2000系統(tǒng)的開發(fā)得到大力發(fā)展之時,推出Linux驅(qū)動程序,推出基于Linux系統(tǒng)的開發(fā)平臺,是否必要?答案是肯定的。用戶的需求是最好的例證。Linux的普及,以及其對PC硬件良好的支持,友好的開發(fā)環(huán)境,更是鑒于Linux系統(tǒng)本身的技術(shù)優(yōu)勢,部分用戶轉(zhuǎn)而開發(fā)基于Linux的應(yīng)用系統(tǒng)。針對用戶的需求,有必要將對應(yīng)的開發(fā)平臺推薦給用戶。
基于Linux的語音卡平臺結(jié)構(gòu)
如果不考慮應(yīng)用系統(tǒng)本身的多樣性和復(fù)雜性,那么語音卡系統(tǒng)的結(jié)構(gòu)通常如圖所示。
應(yīng)用層(應(yīng)用系統(tǒng))因需求及目標(biāo)實(shí)現(xiàn)的不同而呈現(xiàn)多樣化,但它們都通過API接口來調(diào)用系統(tǒng)服務(wù)層。系統(tǒng)服務(wù)層具有與硬件(語音卡)無關(guān)的特性,從而使用戶可以調(diào)用統(tǒng)一的API接口,以便于應(yīng)用系統(tǒng)的開發(fā)。硬件驅(qū)動層通過可加載內(nèi)核模塊來實(shí)現(xiàn)具體的功能調(diào)用,語音卡的類型不同,其實(shí)現(xiàn)方式也不同。
語音卡系統(tǒng)結(jié)構(gòu)圖
可加載內(nèi)核模塊(簡稱為LKM)用來控制硬件層(應(yīng)用系統(tǒng)中使用的各種語音卡)。LKM是比較關(guān)鍵的,它提供中斷服務(wù)、端口操作和設(shè)備文件操作服務(wù)等等,所以也就會因具體處理方式的不同,比較大地影響到整個系統(tǒng)的效率。好的LKM應(yīng)該盡量地減少用戶空間和內(nèi)核的切換操作。為此,這種平臺采用了在內(nèi)核對端口操作進(jìn)行集中處理的方式,例如錄放音,由于其端口操作比較頻繁,就采用了這種處理方式,而不是每做一次端口操作,都做一次從用戶空間到內(nèi)核的切換,從而大大提高了效率。
基于Linux系統(tǒng)的語音開發(fā)平臺對各語音卡提供了統(tǒng)一的API接口,以便于應(yīng)用系統(tǒng)的開發(fā);在可加載內(nèi)核里對端口操作采用了集中處理的方式,從而大大提高了效率。這種效率上的差異,在系統(tǒng)繁忙的時候,尤其表現(xiàn)得比較突出。
給用戶的建議
語音卡系統(tǒng)主要應(yīng)用于交互式語音應(yīng)答、呼叫中心、統(tǒng)一消息處理、小型辦公/家庭辦公、IP電話等等。
語音卡系統(tǒng)與一般的系統(tǒng)開發(fā)基本上類似,但是也有一些特殊性。由于語音卡是專用卡,所以廠商除提供完善的API接口之外,還會提供詳盡的用戶手冊、配置文件,以便于根據(jù)系統(tǒng)所需,進(jìn)行設(shè)計(jì)和配置語音卡參數(shù)。關(guān)于可加載內(nèi)核模塊,可以手動(或系統(tǒng)自動)裝載和卸載,它能提供中斷服務(wù)和端口處理,其常見插口有ISA和PCI的。如果是ISA語音卡的話,中斷號和端口地址要設(shè)置正確,并確信沒有沖突。如果是PCI語音卡的話,那么操作系統(tǒng)會承擔(dān)這部分工作。語音卡應(yīng)用系統(tǒng)開發(fā)最好的切入點(diǎn)是演示(demo)程序,結(jié)合用戶手冊讀演示程序源代碼,不僅可以熟悉常用API函數(shù),而且還可以掌握系統(tǒng)設(shè)計(jì)流程。
如果你正計(jì)劃開發(fā)語音卡應(yīng)用系統(tǒng),而又想擁有好性能,還想免費(fèi)的話,那么選擇Linux是明智之舉。如果你想使系統(tǒng)開發(fā)順利進(jìn)行,除保證語音卡性能之外,服務(wù)是否完善、用戶手冊是否詳盡也同等重要。最后也要提醒用戶,Linux基本上是不提供售后服務(wù)的,但發(fā)展至今,網(wǎng)上已有豐富的資料可查,也有許多成功的解決方案可以參考和借鑒。
中國計(jì)算機(jī)報(bào) 2002/01/21
ADI Blackfin推出適合三匯的VoIP電話和呼叫中心方案 2009-05-11 |
杭州三匯榮獲CIPCA 2008中國IP通信大獎 2008-10-08 |
三匯成功開發(fā)高性能真人接聽檢測算法助推外撥應(yīng)用 2008-08-26 |
三匯新一代C型傳真卡撼市登場 2008-05-15 |
三匯ATP-24A新型模擬錄音產(chǎn)品問世 2008-05-05 |