本發(fā)明涉及智能交通技術(shù)領(lǐng)域,特別是涉及一種車載語音對(duì)講方法、V2X車載發(fā)送終端、V2X車載接收終端以及車載語音對(duì)講系統(tǒng)。
背景技術(shù):
隨著經(jīng)濟(jì)技術(shù)的高速發(fā)展,汽車己走進(jìn)千家萬戶。人作為交通獲得的主動(dòng)參與者、車輛控制者,在整個(gè)交通參與過程中如果能夠進(jìn)行直接的溝通交流是非常有必要的?,F(xiàn)有技術(shù)中,車輛駕駛者可以通過交通電臺(tái)、移動(dòng)電話、手機(jī)APP、車載對(duì)講機(jī)進(jìn)行信息溝通,但是由于不同車輛的硬件配置不同,另外各個(gè)駕駛員的喜好也不盡相同,使得以上交流平臺(tái)的受眾相對(duì)有限,車輛駕駛者不能通過實(shí)時(shí)語音分享路況信息,影響了車輛駕駛者的交通參與感以及駕駛體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種車載語音對(duì)講方法、V2X車載發(fā)送終端、V2X車載接收終端以及車載語音對(duì)講系統(tǒng),以解決現(xiàn)有車載語音對(duì)講交流平臺(tái)受眾有限,影響車輛駕駛員的交通參與感以及駕駛體驗(yàn)的問題。
為解決上述技術(shù)問題,本發(fā)明提供一種車載語音對(duì)講方法,包括:
車載發(fā)送終端接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送至車載無線局域網(wǎng)絡(luò)中;
車載接收終端通過DSRC技術(shù)接收來自所述車載無線局域網(wǎng)絡(luò)中的所述語音消息;將所述語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與終端自身的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的所述語音消息進(jìn)行播放。
可選地,所述將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送到車載無線局域網(wǎng)絡(luò)中包括:
將錄入的所述音頻數(shù)據(jù)依次存儲(chǔ)至發(fā)送緩沖隊(duì)列中;
從所述發(fā)送緩沖隊(duì)列中提取預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,采用語音傳輸協(xié)議對(duì)所述音頻數(shù)據(jù)以及所述設(shè)備ID進(jìn)行組幀;
將組幀后的語音信息通過DSRC技術(shù)發(fā)送到所述車載無線局域網(wǎng)絡(luò)中。
可選地,所述接收來自所述車載無線局域網(wǎng)絡(luò)中的語音消息包括:
通過DSRC技術(shù)接收來自車載無線局域網(wǎng)絡(luò)中的語音消息;
采用所述語音傳輸協(xié)議對(duì)接收到的所述語音消息進(jìn)行解析,得到音頻數(shù)據(jù)以及對(duì)應(yīng)的設(shè)備ID;
將解析得到的所述音頻數(shù)據(jù)以及所述設(shè)備ID存入接收緩沖隊(duì)列中;
所述對(duì)接收到的所述語音消息進(jìn)行播放包括:
從所述接收緩沖隊(duì)列中獲取所述音頻數(shù)據(jù)對(duì)應(yīng)的發(fā)送終端的設(shè)備ID;
查詢是否存在與所述發(fā)送終端的設(shè)備ID對(duì)應(yīng)的播放句柄,如果是,則將所述音頻數(shù)據(jù)與對(duì)應(yīng)的播放句柄存入播放緩沖隊(duì)列中;如果否,則新建播放句柄后,將所述音頻數(shù)據(jù)與新建的播放句柄存入播放緩沖隊(duì)列中;
對(duì)所述播放緩沖隊(duì)列中的音頻數(shù)據(jù)進(jìn)行播放。
可選地,所述發(fā)送緩沖隊(duì)列、所述接收緩沖隊(duì)列和/或所述播放緩沖隊(duì)列采用環(huán)形緩沖隊(duì)列讀寫算法:
當(dāng)從所述環(huán)形緩沖隊(duì)列寫入或讀出數(shù)據(jù)時(shí),根據(jù)R-mK+nK計(jì)算所述環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值,其中R為所述環(huán)形緩沖隊(duì)列的空間大小,其中R=iK,K為單次寫入或讀出的長(zhǎng)度大小,mK為累計(jì)寫入數(shù)據(jù)的大小,nK為累計(jì)讀出數(shù)據(jù)的大小,且n<=m,qK為當(dāng)次讀取數(shù)據(jù)的大小,pK為當(dāng)次寫入數(shù)據(jù)的大小,其中qK<=R-(R-mK+nK),pk<=R-mK+nK;
若R-mK+nK=0,則所述環(huán)形緩沖隊(duì)列的空閑已寫滿,寫入線程不再寫入數(shù)據(jù);
若R-mK+nK=R,則所述環(huán)形緩沖隊(duì)列的空間全為空閑,讀取線程不再讀取數(shù)據(jù);
若0<R-mK+nK<R,則所述環(huán)形緩沖隊(duì)列的空閑空間存在且不全為空閑;
當(dāng)讀線程從所述環(huán)形緩沖隊(duì)列中讀取數(shù)據(jù)時(shí),判斷nK+qK是否大于R;
如果是,則分別從區(qū)間[nK,R-1]和區(qū)間[0,[(n+q)%i]K-1]進(jìn)行讀?。蝗绻?,則從區(qū)間[nK,nK+qK-1]進(jìn)行讀??;
當(dāng)寫線程從所述環(huán)形緩沖隊(duì)列中寫入數(shù)據(jù)時(shí),判斷mK+pK是否大于R;
如果是,則分別從區(qū)間[mK,R-1]和區(qū)間[0,[(m+p)%i]K-1]進(jìn)行寫入;如果否,則從區(qū)間[mK,mK+pK-1]進(jìn)行寫入,其中,%為求余運(yùn)算。
本發(fā)明還提供了一種V2X車載發(fā)送終端,包括:
語音錄入模塊,用于接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);
發(fā)送模塊,用于將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送至車載無線局域網(wǎng)絡(luò)中,以使所述車載無線局域網(wǎng)絡(luò)中的接收終端通過DSRC技術(shù)進(jìn)行接收。
可選地,所述發(fā)送模塊包括:
發(fā)送緩沖單元,用于將錄入的所述音頻數(shù)據(jù)依次存儲(chǔ)至發(fā)送緩沖隊(duì)列中;
組幀單元,用于從所述發(fā)送緩沖隊(duì)列中提取預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,采用語音傳輸協(xié)議對(duì)所述音頻數(shù)據(jù)以及所述設(shè)備ID進(jìn)行組幀;
發(fā)送單元,用于將組幀后的語音信息通過DSRC技術(shù)發(fā)送到所述車載無線局域網(wǎng)絡(luò)中。
本發(fā)明還提供了一種V2X車載接收終端,包括:
接收模塊,用于通過DSRC技術(shù)接收車載無線局域網(wǎng)絡(luò)中發(fā)送終端發(fā)送的語音消息;
語音播放模塊,用于將所述語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與終端自身的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的所述語音消息進(jìn)行播放。
可選地,所述接收模塊包括:
接收單元,用于通過DSRC技術(shù)接收車載無線局域網(wǎng)絡(luò)中發(fā)送終端發(fā)送的語音消息;
解析單元,用于采用語音傳輸協(xié)議對(duì)接收到的所述語音消息進(jìn)行解析,得到音頻數(shù)據(jù)以及對(duì)應(yīng)的設(shè)備ID;
接收緩沖單元,用于將解析得到的所述音頻數(shù)據(jù)以及所述設(shè)備ID存入接收緩沖隊(duì)列中。
可選地,所述語音播放模塊包括:
獲取單元,用于從所述接收緩沖隊(duì)列中獲取所述音頻數(shù)據(jù)對(duì)應(yīng)的發(fā)送終端的設(shè)備ID;
查詢單元,用于查詢是否存在與所述設(shè)備ID對(duì)應(yīng)的播放句柄,如果是,則將所述音頻數(shù)據(jù)與對(duì)應(yīng)的播放句柄存入播放緩沖隊(duì)列中;如果否,則新建播放句柄后,將所述音頻數(shù)據(jù)與新建的播放句柄存入播放緩沖隊(duì)列中;
播放單元,用于對(duì)所述播放緩沖隊(duì)列中的音頻數(shù)據(jù)進(jìn)行播放。
本發(fā)明還提供了一種車載語音對(duì)講系統(tǒng),包括:至少一個(gè)上述任一種所述V2X車載發(fā)送終端以及至少一個(gè)上述任一種所述V2X車載接收終端。
本發(fā)明所提供的車載語音對(duì)講方法,車載發(fā)送終端接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);將錄入的音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送至車載無線局域網(wǎng)絡(luò)中;車載接收終端通過DSRC技術(shù)接收來自車載無線局域網(wǎng)絡(luò)中的語音消息;將語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與終端自身的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的語音消息進(jìn)行播放。本申請(qǐng)利用DSRC技術(shù)以及V2X技術(shù)實(shí)現(xiàn)車車語音實(shí)時(shí)對(duì)講,為車輛駕駛者之間、車輛駕駛者與智能路側(cè)設(shè)施之間、車輛駕駛者與交通指揮者之間提供統(tǒng)一的語音實(shí)時(shí)對(duì)講平臺(tái),使得駕駛者能夠通過實(shí)時(shí)語音相互分享路況信息,及時(shí)獲知交通指揮口令,提升車輛駕駛者的交通參與感和駕駛體驗(yàn)。此外,本申請(qǐng)還提供了一種V2X車載發(fā)送終端、V2X車載接收終端以及車載語音對(duì)講系統(tǒng)。
附圖說明
為了更清楚的說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明所提供的車載語音對(duì)講方法的一種具體實(shí)施方式的流程圖;
圖2為本發(fā)明所提供的車載語音對(duì)講方法的另一種具體實(shí)施方式的流程圖;
圖3為本發(fā)明實(shí)施例所提供的消抖鍵值識(shí)別算法的流程示意圖;
圖4為本發(fā)明實(shí)施例所提供的消抖鍵值識(shí)別算法的時(shí)序示意圖;
圖5為本發(fā)明實(shí)施例所提供的語音消息組成字段的結(jié)構(gòu)示意圖;
圖6為本發(fā)明實(shí)施例所提供的環(huán)形緩沖隊(duì)列示意圖;
圖7為本發(fā)明實(shí)施例所提供的環(huán)形緩沖隊(duì)列讀寫算法流程示意圖;
圖8為本發(fā)明實(shí)施例所提供的V2X車載發(fā)送終端的結(jié)構(gòu)框圖;
圖9為本發(fā)明實(shí)施例所提供的V2X車載接收終端的結(jié)構(gòu)框圖;
圖10為本發(fā)明實(shí)施例提供的V2X車載終端的架構(gòu)示意圖;
圖11為車載語音對(duì)講系統(tǒng)的一種具體實(shí)施方式中語音信息錄入流程示意圖;
圖12為車載語音對(duì)講系統(tǒng)的一種具體實(shí)施方式中語音信息接收播放流程示意圖。
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實(shí)施方式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
本發(fā)明所提供的車載語音對(duì)講方法的一種具體實(shí)施方式的流程圖如圖1所示,具體的,該方法應(yīng)用于車載無線局域網(wǎng)絡(luò),該網(wǎng)絡(luò)包括信號(hào)相連的至少一個(gè)V2X車載發(fā)送終端以及至少一個(gè)V2X車載接收終端。該方法包括:
步驟S101:車載發(fā)送終端接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送至車載無線局域網(wǎng)絡(luò)中;
步驟S102:車載接收終端通過DSRC技術(shù)接收來自所述車載無線局域網(wǎng)絡(luò)中的所述語音消息;將所述語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與終端自身的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的所述語音消息進(jìn)行播放。
基于DSRC的V2X技術(shù)是在無線局域網(wǎng)IEEE802.11p標(biāo)準(zhǔn)的基礎(chǔ)上發(fā)展而來的車載自組織網(wǎng)絡(luò)通信技術(shù)。該技術(shù)被廣泛運(yùn)用于車與外界的信息交互,尤其在美國(guó)的WAVE和歐洲的CAR2CAR項(xiàng)目中被用于相鄰車輛之間行車安全數(shù)據(jù)的相互通信和數(shù)據(jù)交換,以期望實(shí)現(xiàn)車輛主動(dòng)式安全預(yù)警以及重要交通信息傳播。目前基于DSRC的V2X車載裝置的應(yīng)用軟件開發(fā)主要集中在車輛安全預(yù)警、交通信號(hào)控制、路況信息提示等功能應(yīng)用方面,忽略了人作為交通主動(dòng)參與者、車輛控制者在整個(gè)交通參與過程中直接溝通交流的作用。
本申請(qǐng)利用DSRC的V2X技術(shù)實(shí)現(xiàn)車車語音實(shí)時(shí)對(duì)講,為車輛駕駛者之間、車輛駕駛者與智能路側(cè)設(shè)施之間、車輛駕駛者與交通指揮者之間提供統(tǒng)一的語音實(shí)時(shí)對(duì)講平臺(tái),使得駕駛者能夠通過實(shí)時(shí)語音相互分享路況信息,及時(shí)獲知交通指揮口令,提升車輛駕駛者的交通參與感和駕駛體驗(yàn)。
在上述實(shí)施例的基礎(chǔ)上,在發(fā)送端將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送到車載無線局域網(wǎng)絡(luò)中的步驟可以具體為:將錄入的所述音頻數(shù)據(jù)依次存儲(chǔ)至發(fā)送緩沖隊(duì)列中,從所述發(fā)送緩沖隊(duì)列中提取預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,采用語音傳輸協(xié)議對(duì)所述音頻數(shù)據(jù)以及所述設(shè)備ID進(jìn)行組幀,將組幀后的語音信息通過DSRC技術(shù)發(fā)送到所述車載無線局域網(wǎng)絡(luò)中;
在接收端接收來自所述車載無線局域網(wǎng)絡(luò)中的語音消息的步驟可以具體為:
通過DSRC技術(shù)接收來自車載無線局域網(wǎng)絡(luò)中的語音消息;采用語音傳輸協(xié)議對(duì)接收到的所述語音消息進(jìn)行解析,得到音頻數(shù)據(jù)以及對(duì)應(yīng)的設(shè)備ID,將解析得到的所述音頻數(shù)據(jù)以及所述設(shè)備ID存入接收緩沖隊(duì)列中。
進(jìn)行播放的步驟具體為:從所述接收緩沖隊(duì)列中獲取所述音頻數(shù)據(jù)對(duì)應(yīng)的發(fā)送終端的設(shè)備ID;查詢是否存在與所述發(fā)送終端的設(shè)備ID對(duì)應(yīng)的播放句柄,如果是,則將所述音頻數(shù)據(jù)與對(duì)應(yīng)的播放句柄存入播放緩沖隊(duì)列中;如果否,則新建播放句柄后,將所述音頻數(shù)據(jù)與新建的播放句柄存入播放緩沖隊(duì)列中;對(duì)所述播放緩沖隊(duì)列中的音頻數(shù)據(jù)進(jìn)行播放。
如圖2本發(fā)明所提供的車載語音對(duì)講方法的另一種具體實(shí)施方式的流程圖所示,該方法包括:
步驟S201:車載發(fā)送終端接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);
在本實(shí)施例中,可以在車載發(fā)送終端上設(shè)置手咪按鍵。在該車載發(fā)送終端對(duì)外發(fā)送語音消息時(shí),手咪按鍵檢測(cè)到當(dāng)前按鍵信號(hào),在檢測(cè)到當(dāng)前按鍵信號(hào)為按下時(shí),啟動(dòng)開始錄音。
語音對(duì)講時(shí),需要一直保持手咪按鍵為按下狀態(tài),語音對(duì)講完畢后,需要松開手咪按鍵。語音對(duì)講需要實(shí)時(shí)根據(jù)手咪按鍵狀態(tài)做出響應(yīng),因此精確的按鍵檢測(cè)顯得尤為必要。手咪按鍵檢測(cè)可采用中斷或查詢的方式實(shí)現(xiàn),在機(jī)械按鍵過程中不可避免會(huì)產(chǎn)生抖動(dòng),因此需要進(jìn)行消抖確認(rèn)按鍵狀態(tài)。按鍵消抖可分為硬件消抖和軟件消抖,本申請(qǐng)采用了軟件消抖鍵值識(shí)別算法,即在按鍵抖動(dòng)和按鍵穩(wěn)定的時(shí)間段內(nèi)周期采樣鍵值,其中按鍵穩(wěn)定采樣時(shí)間應(yīng)至少大于等于按鍵抖動(dòng)時(shí)間的2倍,并分別統(tǒng)計(jì)整個(gè)采樣時(shí)間段內(nèi)各鍵值的計(jì)數(shù)值,最后比較各鍵值計(jì)數(shù)值的大小,鍵值計(jì)數(shù)值較大的就認(rèn)為是當(dāng)前按鍵的狀態(tài)。
假如機(jī)械按鍵的抖動(dòng)時(shí)間為5-10ms,當(dāng)軟件檢測(cè)到按鍵變化時(shí),每隔5ms讀取一次鍵值并計(jì)數(shù),在50ms內(nèi)分別統(tǒng)計(jì)鍵值0和1的采樣計(jì)數(shù)值,由于抖動(dòng)時(shí)間最高為10ms,40ms內(nèi)均能穩(wěn)定讀取到鍵值數(shù)據(jù),所以其中計(jì)數(shù)值較大的就表示此時(shí)的按鍵狀態(tài)。該算法流程示意圖以及時(shí)序示意圖如圖3、4所示。
該過程可以具體包括:
在預(yù)設(shè)周期內(nèi)統(tǒng)計(jì)手咪按鍵的鍵值分別為1和0的采樣計(jì)數(shù)值;
比較鍵值為1以及鍵值為0的采樣計(jì)數(shù)值,根據(jù)采樣計(jì)數(shù)值大的鍵值的狀態(tài),確定手咪按鍵的當(dāng)前狀態(tài);
在手咪按鍵的當(dāng)前狀態(tài)為按下狀態(tài)時(shí),生成對(duì)外發(fā)送語音消息的指令。
步驟S202:將錄入的音頻數(shù)據(jù)依次存儲(chǔ)至發(fā)送緩沖隊(duì)列中;
錄音初始化過程中,對(duì)錄音模式,配置聲道、數(shù)據(jù)格式、編碼率等進(jìn)行配置。然后根據(jù)接收到的對(duì)外發(fā)送語音消息的指令判斷是否調(diào)用語音錄入函數(shù),語音錄入函數(shù)是由操作系統(tǒng)(linux、winCE、android、ios等)直接提供的API調(diào)用接口。本實(shí)施例中在手咪按鍵狀態(tài)為按下時(shí),啟動(dòng)錄音并依次讀取到錄入的音頻數(shù)據(jù),將其存入發(fā)送緩沖隊(duì)列中。
步驟S203:從發(fā)送緩沖隊(duì)列中提取預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,采用語音傳輸協(xié)議對(duì)音頻數(shù)據(jù)以及設(shè)備ID進(jìn)行組幀;
語音傳輸協(xié)議約定消息幀的組成,為數(shù)據(jù)封裝和解析提供依據(jù)。語音消息由設(shè)備節(jié)點(diǎn)名、消息流標(biāo)號(hào)、消息標(biāo)識(shí)、數(shù)據(jù)長(zhǎng)度、音頻數(shù)據(jù)組成,其組成字段結(jié)構(gòu)如圖5所示。
設(shè)備節(jié)點(diǎn)名和消息流標(biāo)號(hào)字段的長(zhǎng)度可能因設(shè)備的不同而不同,在協(xié)議解析時(shí)需要準(zhǔn)確辨別設(shè)備節(jié)點(diǎn)名、消息流標(biāo)號(hào)的起止,才能獲得正確的消息標(biāo)識(shí)和音頻數(shù)據(jù),在協(xié)議設(shè)計(jì)中對(duì)這兩字段添加起始符和截止符以便辨別,程序在解析消息的過程中可以通過字段起始符和截止符提取變長(zhǎng)度的節(jié)點(diǎn)名和消息流標(biāo)號(hào)。
判斷發(fā)送緩沖隊(duì)列中是否有數(shù)據(jù),當(dāng)數(shù)據(jù)存在時(shí)依次從中取出固定預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,并根據(jù)語音消息協(xié)議將設(shè)備節(jié)點(diǎn)名、語音消息標(biāo)志、數(shù)據(jù)長(zhǎng)度和音頻數(shù)據(jù)組幀。
步驟S204:將組幀后的語音信息通過DSRC技術(shù)發(fā)送到車載無線局域網(wǎng)絡(luò)中;
調(diào)用由V2X協(xié)議棧提供的V2X消息發(fā)送函數(shù)將語音消息發(fā)送到車載無線局域網(wǎng)絡(luò)中,V2X消息發(fā)送函數(shù)可以具體通過多播或單播的方式將組幀后的數(shù)據(jù)發(fā)送至車載無線局域網(wǎng)絡(luò)中。
步驟S205:車載接收終端通過DSRC技術(shù)接收來自車載無線局域網(wǎng)絡(luò)中的語音消息;
步驟S206:采用語音傳輸協(xié)議對(duì)接收到的語音消息進(jìn)行解析,得到音頻數(shù)據(jù)以及對(duì)應(yīng)的設(shè)備ID;
步驟S207:將解析得到的音頻數(shù)據(jù)以及設(shè)備ID存入接收緩沖隊(duì)列中;
步驟S208:將所述語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與自身終端的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的所述語音消息進(jìn)行播放。
由V2X協(xié)議棧提供的V2X消息接收函數(shù)獲取車載無線網(wǎng)絡(luò)中的語音消息,根據(jù)語音消息協(xié)議過濾無線網(wǎng)絡(luò)中的其它消息,并解析出發(fā)送方的設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù),然后存入接收緩沖隊(duì)列中。
首先從接收緩沖隊(duì)列中讀取一組包含設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù)的數(shù)據(jù)信息,然后查詢判斷該設(shè)備節(jié)點(diǎn)名是否已有播放句柄,若有則將找到的播放句柄和音頻數(shù)據(jù)存入到播放緩沖隊(duì)列中,否則為其新建一個(gè)播放句柄,并將播放句柄和音頻數(shù)據(jù)存放到播放緩沖隊(duì)列中。同時(shí)查找并清除已經(jīng)超時(shí)未通信的節(jié)點(diǎn)播放句柄,維護(hù)播放句柄資源。本實(shí)施例通過對(duì)播放句柄資源的新建和回收管理,保證不同設(shè)備節(jié)點(diǎn)名的播放句柄和音頻數(shù)據(jù)的一一對(duì)應(yīng),從而保證多人混音播放的實(shí)現(xiàn)。
查詢播放緩沖隊(duì)列中是否存在數(shù)據(jù),當(dāng)數(shù)據(jù)存在時(shí)依次從中取出一組包含播放句柄和音頻數(shù)據(jù)的數(shù)據(jù)信息,并將其傳入操作系統(tǒng)提供的語音播放API接口函數(shù)中實(shí)現(xiàn)語音播放。
在本實(shí)施例中,手咪按鍵檢測(cè)、語音錄入、V2X消息發(fā)送、V2X消息接收、多人混音、語音播放均采用獨(dú)立的線程,這樣的設(shè)計(jì)方式有利于提高程序處理效率,增強(qiáng)語音對(duì)講的實(shí)時(shí)性。
其中,手咪按鍵檢測(cè)線程實(shí)時(shí)監(jiān)控按鍵狀態(tài),并將獲得的按鍵變化信號(hào)發(fā)送給語音錄入線程;語音錄入線程根據(jù)獲得的按鍵變化信號(hào)決定是否啟動(dòng)錄音并將獲得的音頻數(shù)據(jù)放入發(fā)送緩沖隊(duì)列;V2X消息發(fā)送線程循環(huán)從發(fā)送緩沖隊(duì)列中讀取固定長(zhǎng)度的音頻數(shù)據(jù),按照語音消息協(xié)議將設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù)組幀,然后調(diào)用V2X消息發(fā)送函數(shù)將語音消息發(fā)送到車載無線局域網(wǎng)絡(luò)中;V2X消息接收線程調(diào)用V2X消息接收函數(shù)獲取車載無線局域網(wǎng)絡(luò)中的語音消息,根據(jù)語音消息協(xié)議解析出發(fā)送方的設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù),并存入接收緩沖隊(duì)列中;多人混音線程依次從接收緩沖隊(duì)列中讀取數(shù)據(jù),分別為每一個(gè)不同設(shè)備節(jié)點(diǎn)名新建并初始化一個(gè)唯一的播放句柄,再將該播放句柄和音頻數(shù)據(jù)存入播放緩沖隊(duì)列中,同時(shí)多人混音線程根據(jù)超時(shí)時(shí)間清除不再通信的設(shè)備節(jié)點(diǎn)名所對(duì)應(yīng)的播放句柄,維護(hù)播放句柄列表;語音播放線程依次從播放緩沖隊(duì)列中讀取播放句柄和音頻數(shù)據(jù),調(diào)用語音播放函數(shù)實(shí)現(xiàn)語音的播放。
進(jìn)一步地,在上述多線程對(duì)同一緩沖隊(duì)列進(jìn)行寫入和讀出操作時(shí),如果沒有適當(dāng)?shù)臋C(jī)制,緩沖隊(duì)列中的數(shù)據(jù)可能有被破壞的風(fēng)險(xiǎn)。例如當(dāng)緩沖隊(duì)列中的數(shù)據(jù)還未被B線程讀取時(shí),就已經(jīng)被A線程新寫入的數(shù)據(jù)覆蓋而造成數(shù)據(jù)丟失。因此需要恰當(dāng)?shù)淖x寫算法,協(xié)調(diào)各線程之間的讀寫操作,避免不同線程的讀寫操作對(duì)緩沖隊(duì)列中的數(shù)據(jù)造成破壞。多線程對(duì)共享資源的操作通常采用臨界保護(hù)的辦法,即一個(gè)資源對(duì)應(yīng)一個(gè)唯一的操作權(quán)限。例如當(dāng)讀取線程獲得資源的操作權(quán)后,寫入線程必須等待讀取線程釋放操作權(quán)后才能獲得對(duì)資源的操作權(quán),讀取和寫入線程之間形成對(duì)資源操作的互斥關(guān)系,從而保護(hù)共享資源的數(shù)據(jù)不被破壞。但是當(dāng)寫入線程獲得資源操作權(quán)的頻率大于讀取線程時(shí),將影響讀取線程的效率,甚至破壞未讀取的數(shù)據(jù);當(dāng)多線程分別對(duì)共享資源的操作不產(chǎn)生沖突時(shí),也會(huì)分別降低各線程的效率。
鑒于此,本發(fā)明實(shí)施例提供了一種環(huán)形緩沖隊(duì)列讀寫算法,利用環(huán)形緩沖隊(duì)列的頭、尾標(biāo)號(hào)值和環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值來協(xié)調(diào)各線程對(duì)環(huán)形緩沖隊(duì)列的讀寫,實(shí)現(xiàn)數(shù)據(jù)的環(huán)形寫入和讀取,緩沖隊(duì)列空間的循環(huán)重復(fù)利用,讀取和寫入線程對(duì)共享資源的并行操作,保護(hù)共享資源的數(shù)據(jù)不被破壞,提升線程效率。環(huán)形緩沖隊(duì)列示意圖如圖6所示,環(huán)形緩沖隊(duì)列讀寫算法流程示意圖如圖7所示。
設(shè)環(huán)形緩沖隊(duì)列的空間大小為R,R=iK,且K>0,i>0,單次從該環(huán)形緩沖隊(duì)列寫入或讀出的長(zhǎng)度大小為K的倍數(shù)。初始環(huán)形緩沖隊(duì)列中無數(shù)據(jù)時(shí),環(huán)形緩沖隊(duì)列的頭和尾標(biāo)號(hào)值均相等為0,環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值為R。若向環(huán)形緩沖隊(duì)列累計(jì)寫入大小為mK的數(shù)據(jù),且mK<R,此時(shí)環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值為0,環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值為mK,環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值為R-mK;若再?gòu)沫h(huán)形緩沖隊(duì)列累計(jì)讀出大小為nK的數(shù)據(jù),且n<=m,此時(shí)環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值為nK,環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值為mK,環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值為R-mK+nK。
各線程分別從環(huán)形緩沖隊(duì)列寫入或讀出數(shù)據(jù)時(shí),首先應(yīng)判斷環(huán)形緩沖隊(duì)列的空閑空間計(jì)數(shù)值R-mK+nK。
(1)R-mK+nK=0
若R-mK+nK=0,表明環(huán)形緩沖隊(duì)列的空閑空間為0,隊(duì)列中已寫滿數(shù)據(jù)。寫入線程發(fā)現(xiàn)環(huán)形緩沖隊(duì)列的空間已寫滿數(shù)據(jù),將不再繼續(xù)向該環(huán)形緩沖隊(duì)列寫入數(shù)據(jù);讀取線程發(fā)現(xiàn)環(huán)形緩沖隊(duì)列的空間還不全為空閑,可以繼續(xù)從該環(huán)形緩沖隊(duì)列讀取數(shù)據(jù)。
(2)R-mK+nK=R
若R-mK+nK=R,表明環(huán)形緩沖隊(duì)列的空閑空間為R,隊(duì)列中已無數(shù)據(jù)。寫入線程發(fā)現(xiàn)環(huán)形緩沖隊(duì)列的空閑空間存在,可以繼續(xù)向該環(huán)形緩沖隊(duì)列寫入數(shù)據(jù);讀取線程發(fā)現(xiàn)環(huán)形緩沖隊(duì)列的空間已全為空閑,將不再繼續(xù)從該環(huán)形緩沖隊(duì)列讀取數(shù)據(jù)。
(3)0<R-mK+nK<R
若0<R-mK+nK<R,表明環(huán)形緩沖隊(duì)列的空閑空間為R-mK+nK。寫入線程發(fā)現(xiàn)環(huán)形緩沖隊(duì)列的空閑空間存在,可以繼續(xù)向該環(huán)形緩沖隊(duì)列寫入數(shù)據(jù);讀取線程判斷環(huán)形緩沖隊(duì)列的空間不全為空閑,可以繼續(xù)從該環(huán)形緩沖隊(duì)列讀取數(shù)據(jù)。
然后,各線程從環(huán)形緩沖隊(duì)列寫入或讀出數(shù)據(jù)時(shí),應(yīng)再判斷環(huán)形緩沖隊(duì)列的頭、尾標(biāo)號(hào)值是否超越計(jì)數(shù)上限值R。
(1)mK+pK>R
若mK+pK>R,表明環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值已超越計(jì)數(shù)上限值R。按照環(huán)形存儲(chǔ)算法計(jì)算可得寫入K長(zhǎng)度后環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值為[(m+p)%i]K,數(shù)據(jù)將分別被寫入到區(qū)間為[mK,R-1]和[0,[(m+p)%i]K-1]的環(huán)形緩沖隊(duì)列中。其中,區(qū)間[0,[(m+p)%i]K-1]的左邊端點(diǎn)值為0,右邊端點(diǎn)值為:m與p的相加值,對(duì)i取余后乘以K,再減去1后的數(shù)值。
(2)mK+pK<=R
若mK+pK<=R,表明環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值未超越計(jì)數(shù)上限值R。按照環(huán)形存儲(chǔ)算法計(jì)算可得寫入K長(zhǎng)度后環(huán)形緩沖隊(duì)列的尾標(biāo)號(hào)值為mK+pK,數(shù)據(jù)將被寫入到區(qū)間為[mK,mK+pK-1]的環(huán)形緩沖隊(duì)列中。
(3)nK+qK>R
若nK+qK>R,表明環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值已超越計(jì)數(shù)上限值R。按照環(huán)形存儲(chǔ)算法計(jì)算可得讀取K長(zhǎng)度后環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值為[(n+q)%i]K,數(shù)據(jù)將分別從區(qū)間為[nK,R-1]和[0,[(n+q)%i]K-1]的環(huán)形緩沖隊(duì)列中被讀出。其中,區(qū)間[0,[(n+q)%i]K-1]的左邊端點(diǎn)值為0,右邊端點(diǎn)值為:n與q的相加值,對(duì)i取余后與K相乘,再減去1后的數(shù)值。
(4)nK+qK<=R
若nK+qK<=R,表明環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值未超越計(jì)數(shù)上限值R。按照環(huán)形存儲(chǔ)算法計(jì)算可得讀取K長(zhǎng)度后環(huán)形緩沖隊(duì)列的頭標(biāo)號(hào)值為nK+qK,數(shù)據(jù)將從區(qū)間為[nK,nK+qK-1]的環(huán)形緩沖隊(duì)列中被讀出;其中qK為當(dāng)次讀取數(shù)據(jù)的大小,pK當(dāng)次為寫入數(shù)據(jù)的大小,qK<=R-(R-mK+nK),pk<=R-mK+nK。
本發(fā)明實(shí)施例基于DSRC的V2X技術(shù)上實(shí)現(xiàn)的語音實(shí)時(shí)對(duì)講軟件,填補(bǔ)了V2X通信在語音實(shí)時(shí)對(duì)講應(yīng)用的空白。V2X語音實(shí)時(shí)對(duì)講將為車輛駕駛者之間、車輛駕駛者與智能路側(cè)設(shè)施之間、車輛駕駛者與交通指揮者之間提供統(tǒng)一的語音實(shí)時(shí)對(duì)講平臺(tái),使得駕駛者能夠通過實(shí)時(shí)語音相互分享路況信息,及時(shí)獲知交通指揮口令。同時(shí)還可以根據(jù)單播、組播、廣播等不同的消息類型實(shí)現(xiàn)與特定車輛通話、車隊(duì)組內(nèi)通話以及廣播通話等不同應(yīng)用場(chǎng)景,提升車輛駕駛體驗(yàn)和交通效率。
此外,本發(fā)明還提供了一種V2X車載發(fā)送終端1,如圖8V2X車載發(fā)送終端的結(jié)構(gòu)框圖所示,該終端包括:
語音錄入模塊11,用于接收用戶輸入的對(duì)外發(fā)送語音消息的指令,對(duì)聲音信息進(jìn)行錄入,生成音頻數(shù)據(jù);
發(fā)送模塊12,用于將錄入的所述音頻數(shù)據(jù)以及目的接收終端的設(shè)備ID組裝成語音信息,并通過DSRC技術(shù)發(fā)送至車載無線局域網(wǎng)絡(luò)中,以使所述車載無線局域網(wǎng)絡(luò)中的接收終端通過DSRC技術(shù)進(jìn)行接收。
作為一種具體實(shí)施方式,發(fā)送模塊12可以進(jìn)一步包括:
發(fā)送緩沖單元,用于將錄入的所述音頻數(shù)據(jù)依次存儲(chǔ)至發(fā)送緩沖隊(duì)列中;
組幀單元,用于從所述發(fā)送緩沖隊(duì)列中提取預(yù)設(shè)長(zhǎng)度的音頻數(shù)據(jù)流,采用語音傳輸協(xié)議對(duì)所述音頻數(shù)據(jù)以及所述設(shè)備ID進(jìn)行組幀;
發(fā)送單元,用于將組幀后的語音信息通過DSRC技術(shù)發(fā)送到所述車載無線局域網(wǎng)絡(luò)中。
本發(fā)明還提供了一種V2X車載接收終端2,如圖9所示,該終端包括:
接收模塊21,用于通過DSRC技術(shù)接收車載無線局域網(wǎng)絡(luò)中發(fā)送終端發(fā)送的語音消息;
語音播放模塊22,用于將所述語音消息對(duì)應(yīng)的目的接收終端的設(shè)備ID與終端自身的設(shè)備ID進(jìn)行對(duì)比,在對(duì)比一致的情況下,對(duì)接收到的所述語音消息進(jìn)行播放。
其中,接收模塊21可以具體包括:
接收單元,用于通過DSRC技術(shù)接收車載無線局域網(wǎng)絡(luò)中發(fā)送終端發(fā)送的語音消息;
解析單元,用于采用語音傳輸協(xié)議對(duì)接收到的所述語音消息進(jìn)行解析,得到音頻數(shù)據(jù)以及對(duì)應(yīng)的設(shè)備ID;
接收緩沖單元,用于將解析得到的所述音頻數(shù)據(jù)以及所述設(shè)備ID存入接收緩沖隊(duì)列中。
語音播放模塊22可以具體包括:
獲取單元,用于從所述接收緩沖隊(duì)列中獲取所述音頻數(shù)據(jù)對(duì)應(yīng)的發(fā)送終端的設(shè)備ID;
查詢單元,用于查詢是否存在與所述設(shè)備ID對(duì)應(yīng)的播放句柄,如果是,則將所述音頻數(shù)據(jù)與對(duì)應(yīng)的播放句柄存入播放緩沖隊(duì)列中;如果否,則新建播放句柄后,將所述音頻數(shù)據(jù)與新建的播放句柄存入播放緩沖隊(duì)列中;
播放單元,用于對(duì)所述播放緩沖隊(duì)列中的音頻數(shù)據(jù)進(jìn)行播放。
容易理解的,V2X車載發(fā)送終端和V2X車載接收終端可以是不同的終端,但是在多數(shù)實(shí)施例中,V2X車載發(fā)送終端和V2X車載接收終端可以集成為一個(gè)V2X車載終端,即V2X車載終端同時(shí)包括發(fā)送和接收的功能,在一個(gè)系統(tǒng)中,既是語音信息采集和發(fā)送端,也可以從車載無線局域網(wǎng)絡(luò)中獲取其它V2X車載終端發(fā)送的語音信息并播放,從而實(shí)現(xiàn)不同安裝車輛之間的對(duì)講功能。
下面對(duì)本發(fā)明實(shí)施例提供的車載語音對(duì)講系統(tǒng)進(jìn)行介紹,下文描述的車載語音對(duì)講系統(tǒng)與上文描述的車載語音對(duì)講方法可相互對(duì)應(yīng)參照。
本發(fā)明實(shí)施例所提供的車載語音對(duì)講系統(tǒng)具體包括:至少一個(gè)上述V2X車載發(fā)送終端以及至少一個(gè)上述V2X車載接收終端。
容易理解的,車載語音對(duì)講系統(tǒng)也可以是至少兩個(gè)相互信號(hào)連接的如上一實(shí)施例所述V2X車載終端。
其中所述V2X終端包括:錄入指令檢測(cè)裝置、揚(yáng)聲器、V2X天線、至少一個(gè)上述V2X車載發(fā)送終端以及至少一個(gè)上述V2X車載接收終端,如圖10本發(fā)明實(shí)施例提供的V2X車載終端的架構(gòu)示意圖所示,其中:
錄入指令檢測(cè)裝置可以具體為手咪按鍵,其具體包括:
統(tǒng)計(jì)單元,用于在預(yù)設(shè)周期內(nèi)統(tǒng)計(jì)手咪按鍵的鍵值分別為1和0的采樣計(jì)數(shù)值;
檢測(cè)單元,用于比較鍵值為1以及鍵值為0的采樣計(jì)數(shù)值,根據(jù)所述采樣計(jì)數(shù)值大的鍵值的狀態(tài),確定所述手咪按鍵的當(dāng)前狀態(tài);
指令生成單元,用于在所述手咪按鍵的當(dāng)前狀態(tài)為按下狀態(tài)時(shí),生成對(duì)外發(fā)送語音消息的指令。
參照?qǐng)D11車載語音對(duì)講系統(tǒng)的一種具體實(shí)施方式中語音信息錄入流程示意圖,車載發(fā)送終端的手咪按鍵實(shí)時(shí)監(jiān)控按鍵狀態(tài),并將獲得的按鍵變化信號(hào)發(fā)送給V2X發(fā)送終端;V2X發(fā)送終端中的語音錄入線程根據(jù)獲得的按鍵變化信號(hào)決定是否啟動(dòng)錄音并將獲得的音頻數(shù)據(jù)放入發(fā)送緩沖隊(duì)列;V2X消息發(fā)送線程循環(huán)從發(fā)送緩沖隊(duì)列中讀取固定長(zhǎng)度的音頻數(shù)據(jù),按照語音消息協(xié)議將設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù)組幀,然后調(diào)用V2X消息發(fā)送函數(shù)將語音消息發(fā)送到車載無線局域網(wǎng)絡(luò)中。
如圖12車載語音對(duì)講系統(tǒng)的一種具體實(shí)施方式中語音信息接收播放流程示意圖所示,接收終端中的V2X消息接收線程調(diào)用V2X消息接收函數(shù)獲取車載無線局域網(wǎng)絡(luò)中的語音消息,根據(jù)語音消息協(xié)議解析出發(fā)送方的設(shè)備節(jié)點(diǎn)名和音頻數(shù)據(jù),并存入接收緩沖隊(duì)列中;多人混音線程依次從接收緩沖隊(duì)列中讀取數(shù)據(jù),分別為每一個(gè)不同設(shè)備節(jié)點(diǎn)名新建并初始化一個(gè)唯一的播放句柄,再將該播放句柄和音頻數(shù)據(jù)存入播放緩沖隊(duì)列中,同時(shí)多人混音線程根據(jù)超時(shí)時(shí)間清除不再通信的設(shè)備節(jié)點(diǎn)名所對(duì)應(yīng)的播放句柄,維護(hù)播放句柄列表;語音播放線程依次從播放緩沖隊(duì)列中讀取播放句柄和音頻數(shù)據(jù),調(diào)用語音播放函數(shù)實(shí)現(xiàn)語音的播放。
本實(shí)施例的車載語音對(duì)講系統(tǒng)用于實(shí)現(xiàn)前述的車載語音對(duì)講方法,因此車載語音對(duì)講系統(tǒng)中的具體實(shí)施方式可見前文中的車載語音對(duì)講方法的實(shí)施例部分,其具體實(shí)施方式可以參照相應(yīng)的各個(gè)部分實(shí)施例的描述,在此不再贅述。
本說明書中各個(gè)實(shí)施例采用遞進(jìn)的方式描述,每個(gè)實(shí)施例重點(diǎn)說明的都是與其它實(shí)施例的不同之處,各個(gè)實(shí)施例之間相同或相似部分互相參見即可。對(duì)于實(shí)施例公開的裝置而言,由于其與實(shí)施例公開的方法相對(duì)應(yīng),所以描述的比較簡(jiǎn)單,相關(guān)之處參見方法部分說明即可。
專業(yè)人員還可以進(jìn)一步意識(shí)到,結(jié)合本文中所公開的實(shí)施例描述的各示例的單元及算法步驟,能夠以電子硬件、計(jì)算機(jī)軟件或者二者的結(jié)合來實(shí)現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計(jì)約束條件。專業(yè)技術(shù)人員可以對(duì)每個(gè)特定的應(yīng)用來使用不同方法來實(shí)現(xiàn)所描述的功能,但是這種實(shí)現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實(shí)施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實(shí)施。軟件模塊可以置于隨機(jī)存儲(chǔ)器(RAM)、內(nèi)存、只讀存儲(chǔ)器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動(dòng)磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲(chǔ)介質(zhì)中。
以上對(duì)本發(fā)明所提供的車載語音對(duì)講方法、V2X車載發(fā)送終端、V2X車載接收終端以及車載語音對(duì)講系統(tǒng)進(jìn)行了詳細(xì)介紹。本文中應(yīng)用了具體個(gè)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想。應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對(duì)本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。