翁國(guó)川
?
即時(shí)通信系統(tǒng)中的音視頻處理技術(shù)
翁國(guó)川
極帆迅騰工作室,廣東 珠海 519088
近年來(lái),我國(guó)通信系統(tǒng)的發(fā)展越來(lái)越成熟,其中,音視頻通信技術(shù)更是發(fā)生了質(zhì)的飛躍,有著明朗的發(fā)展前景。傳統(tǒng)的音視頻通信技術(shù)要想正常運(yùn)行不僅需要客戶端程序,還需要服務(wù)器以及數(shù)據(jù)庫(kù)的幫助。目前利用服務(wù)器來(lái)處理問(wèn)題已經(jīng)不是明智的做法,它與當(dāng)前的用戶需求仍然存在一定的差距。基于此,主要闡述了當(dāng)前音視頻處理技術(shù)的發(fā)展以及它在通信系統(tǒng)中的影響。
通信系統(tǒng);音視頻;處理技術(shù)
隨著互聯(lián)網(wǎng)的不斷發(fā)展,即時(shí)通信工具從曾經(jīng)簡(jiǎn)單的聊天轉(zhuǎn)變?yōu)榫邆湟粢曨l功能的應(yīng)用程序。我國(guó)現(xiàn)在主要運(yùn)用的音視頻通信方式非常多樣化,如:視頻會(huì)議系統(tǒng)、語(yǔ)音通話等。許多通信公司都在爭(zhēng)相往這個(gè)方向發(fā)展,同時(shí)傳輸服務(wù)質(zhì)量成為了主要的評(píng)價(jià)指標(biāo)。在整個(gè)即時(shí)通信系統(tǒng)中,音視頻通信功能的實(shí)現(xiàn)離不開視音頻處理框架以及即時(shí)通信協(xié)議的存在。這兩者構(gòu)成了這項(xiàng)處理技術(shù)的核心[1]。
1.1 Gstreamer音視頻處理
目前,音視頻主要是運(yùn)用模塊化的設(shè)計(jì)理念來(lái)進(jìn)行處理,同時(shí)可以更好地構(gòu)建流媒體程序。其中,Gstreamer音視頻的處理原理是先將每一個(gè)模塊進(jìn)行封裝,然后再通過(guò)元件的方式呈現(xiàn)在用戶面前。用戶在使用的過(guò)程中,可以運(yùn)用庫(kù)中的元件來(lái)進(jìn)行編程,除此之外,還可以用這種方式來(lái)編寫元件,最后進(jìn)入調(diào)用程序。如果僅僅以元件的方式來(lái)實(shí)現(xiàn)許多功能,編寫應(yīng)用程序也會(huì)相應(yīng)簡(jiǎn)化,只要采用模塊化方式來(lái)進(jìn)行編寫即可。這種音視頻處理是通過(guò)局域網(wǎng)來(lái)進(jìn)行簡(jiǎn)單的多媒體傳送。Gstreamer在傳送視頻數(shù)據(jù)流的過(guò)程中,首先要先將采集到的數(shù)據(jù)進(jìn)行色度空間轉(zhuǎn)換,然后再依次進(jìn)行荷頭添加、視頻編碼等步驟,對(duì)數(shù)據(jù)進(jìn)行整合的過(guò)程發(fā)生在gstrtpbin中,同時(shí)要顯現(xiàn)出報(bào)告的發(fā)送時(shí)間,以便音視頻能夠同時(shí)在接收端得到同步播放, 進(jìn)而傳導(dǎo)UDP中。另外,在接收端,由UDP采集到的數(shù)據(jù)要經(jīng)過(guò)多個(gè)步驟來(lái)進(jìn)行解碼,如:數(shù)據(jù)包解析、解碼器解碼等,最終利用插件來(lái)將這些數(shù)據(jù)呈現(xiàn)在窗口。其中,會(huì)話管理的核心構(gòu)件就是指的是gstrtpbin,它能夠進(jìn)行數(shù)據(jù)包的傳輸、音視頻的分流、傳輸控制等,這些功能讓它在音視頻處理過(guò)程中起著重要的作用[2]。
1.2 Farsight視頻處理
在Gstreamer開發(fā)庫(kù)中,可以利用基礎(chǔ)元件進(jìn)行音視頻的處理過(guò)程,而且能夠在一定的局域網(wǎng)范圍內(nèi)進(jìn)行視頻通信。但是這種處理方式仍然存在一定的局限性,一般情況下,視頻會(huì)議的進(jìn)行需要多個(gè)多媒體同時(shí)進(jìn)行會(huì)話,這個(gè)過(guò)程需要各個(gè)多媒體之間要進(jìn)行相互協(xié)調(diào),彼此進(jìn)行良好的配合,實(shí)現(xiàn)會(huì)話管理,進(jìn)而為高層提供更加便捷的工作方式。而Farsight視頻處理指的是在Gstreamer的基礎(chǔ)之上提出的視頻會(huì)議理念,進(jìn)而構(gòu)建出相應(yīng)的框架,它能夠?qū)崿F(xiàn)各個(gè)多媒體相互協(xié)調(diào)、配合,有利于插件程序的編寫,另外,還能夠提供API給用戶來(lái)調(diào)用插件。當(dāng)高層運(yùn)用這種方式進(jìn)行音視頻會(huì)議的時(shí)候,存在一個(gè)顯著的優(yōu)勢(shì),能夠保證底層數(shù)據(jù)流的穩(wěn)定以及NAT穿越的問(wèn)題。為了能夠?qū)崿F(xiàn)視頻會(huì)議功能的多媒體框架,F(xiàn)arsight在對(duì)元件開發(fā)的時(shí)候要注意與Gstreamer元件的整合度,只有當(dāng)整合度越高,視屏?xí)h功能的實(shí)現(xiàn)才能更有保障。Farsight中包括多路音視頻會(huì)話流,里面存在許多會(huì)話參與者,使得音視頻會(huì)話管理的功能更加強(qiáng)大。采用模塊化設(shè)計(jì)的方式來(lái)實(shí)現(xiàn)通信軟件的音視頻服務(wù),為多媒體處理提供了更廣闊的渠道,同時(shí)使得視頻會(huì)議功能能夠?qū)崿F(xiàn)不斷地發(fā)展。就目前情況而言,大多數(shù)即時(shí)通信客戶端都是采用這種處理方式來(lái)實(shí)現(xiàn)音視頻通信。
為了創(chuàng)造出更便捷地開發(fā)方法,一些軟件開發(fā)者開始將帶有圖形的用戶界面與通信部分進(jìn)行分離,將它們的核心代碼提煉出來(lái),成為通信客戶端開發(fā)的重要組成部分,俗稱Libpurple?,F(xiàn)如今,Adium與Proteus這些客戶端都采用這個(gè)程序庫(kù)。他們先完成分離工作,再將自己的圖形程序添加進(jìn)去,形成一個(gè)新的客戶端接口。在Libpurple中,多媒體通信成為最主要的目標(biāo),所以軟件開發(fā)者要Udine整個(gè)處理框架進(jìn)行稍微地處理,繼承和封裝。并通過(guò)即時(shí)通信協(xié)議,來(lái)為用戶提供使用接口。同時(shí)用戶可以通過(guò)應(yīng)用程序接口的方式來(lái)進(jìn)行程序的編寫,從而完成網(wǎng)絡(luò)層與網(wǎng)絡(luò)層之間的銜接。除此之外,程序操作者還可以直接通過(guò)Libpurple來(lái)編寫程序的核心代碼,進(jìn)而完成整個(gè)應(yīng)用程序的建設(shè)。而且Libpurple實(shí)現(xiàn)的即時(shí)通信協(xié)議非常多樣化,如: MSN、AIM等。并且對(duì)于媒體后端流處理的協(xié)同工作也能夠順利完成。Libpurple是以實(shí)現(xiàn)具有自身特色的流媒體模式為主要目標(biāo)來(lái)進(jìn)行開發(fā),但是要想完成這個(gè)目標(biāo)需要站在Farsight的基礎(chǔ)上來(lái)進(jìn)行設(shè)計(jì)。
在Jingle協(xié)議中規(guī)定了RTP通信的許多標(biāo)準(zhǔn),同時(shí)為用戶提供了兩種不同的數(shù)據(jù)通道,RAWUDP和ICE—。注意要根據(jù)具體的視頻通信情況來(lái)選擇數(shù)據(jù)通道,程序的不同會(huì)導(dǎo)致對(duì)通道的選擇不同。為了讓音視頻通信進(jìn)行地更加順利,Libpurple需要在原有的基礎(chǔ)上構(gòu)建一個(gè)新的組件對(duì)象酬emedia,再利用這個(gè)對(duì)象來(lái)對(duì)Farsight組件中參數(shù)信息進(jìn)行提取,提煉出精簡(jiǎn)的、有用的信息,如傳送目的地址、解碼器信息等。在完成這個(gè)步驟之后,將過(guò)濾后的信息傳遞給Jingle協(xié)議,進(jìn)而不斷地在通道內(nèi)對(duì)協(xié)議進(jìn)行完善。當(dāng)出現(xiàn)新的即時(shí)通信協(xié)議時(shí),要利用Farsight完成視頻通信,此時(shí),開發(fā)者通常都是以Libpurple為前提進(jìn)行開發(fā),結(jié)束后再進(jìn)行移植,實(shí)現(xiàn)完整的視頻通信。
綜上所述,以當(dāng)前的形勢(shì)來(lái)看,即時(shí)通信系統(tǒng)的出現(xiàn)十分頻繁,如:騰訊、Skype等通信公司都具備一個(gè)完整的系統(tǒng)框架。一般情況下,開源特性較強(qiáng)的即時(shí)通信開發(fā)速度比較快,重視技術(shù)的發(fā)展,不斷更新技術(shù),進(jìn)而為用戶創(chuàng)造一個(gè)富有個(gè)性化的應(yīng)用模式。而音視頻處理在即時(shí)通信系統(tǒng)中顯得尤為重要,其中以Farsight/Gstreamer音視頻處理框架是實(shí)現(xiàn)多媒體通信的重要技術(shù)基礎(chǔ),它能夠讓音視頻通信工作變得簡(jiǎn)單化。目前我國(guó)的這項(xiàng)技術(shù)在通信系統(tǒng)中的應(yīng)用還不夠成熟,還需要一段時(shí)間進(jìn)行磨合,所以相關(guān)的研究人員必須要加大研究力度,提高兩者的整合度,相互促進(jìn),相互發(fā)展。
[1]張晨. 關(guān)于即時(shí)通信系統(tǒng)的相關(guān)研究[J]. 中國(guó)科技縱橫,2016(1):55.
[2]劉克軒. 基于FPGA和DSP的音視頻采集處理系統(tǒng)設(shè)計(jì)[J]. 電子器件,2016(3):32.
Audio and Video Processing Technology in Instant Communication System
Wengguochuan
Jifan xunteng studio, Guangdong Zhuhai 519088
In recent years, the development of communication system in our country is more and more mature, among them, the audio and video communication technology has been a qualitative leap, has a bright future. The traditional audio and video communication technology to normal operation not only needs the client program, but also need the help of the server and the database. At present, it is not wise to use the server to deal with the problem, it still has a certain gap with the current user needs. This paper mainly expounds the development of the current audio and video processing technology and its impact on the communication system.
communication system; audio and video; processing technology
TN912.3
A
1009-6434(2016)10-0089-02
翁國(guó)川(1994—),男,漢族,籍貫為廣東省潮州市,學(xué)歷本科,研究方向?yàn)檐浖粢曨l通信,圖像處理。