翁國川
?
即時通信系統中的音視頻處理技術
翁國川
極帆迅騰工作室,廣東 珠海 519088
近年來,我國通信系統的發展越來越成熟,其中,音視頻通信技術更是發生了質的飛躍,有著明朗的發展前景。傳統的音視頻通信技術要想正常運行不僅需要客戶端程序,還需要服務器以及數據庫的幫助。目前利用服務器來處理問題已經不是明智的做法,它與當前的用戶需求仍然存在一定的差距。基于此,主要闡述了當前音視頻處理技術的發展以及它在通信系統中的影響。
通信系統;音視頻;處理技術
隨著互聯網的不斷發展,即時通信工具從曾經簡單的聊天轉變為具備音視頻功能的應用程序。我國現在主要運用的音視頻通信方式非常多樣化,如:視頻會議系統、語音通話等。許多通信公司都在爭相往這個方向發展,同時傳輸服務質量成為了主要的評價指標。在整個即時通信系統中,音視頻通信功能的實現離不開視音頻處理框架以及即時通信協議的存在。這兩者構成了這項處理技術的核心[1]。
1.1 Gstreamer音視頻處理
目前,音視頻主要是運用模塊化的設計理念來進行處理,同時可以更好地構建流媒體程序。其中,Gstreamer音視頻的處理原理是先將每一個模塊進行封裝,然后再通過元件的方式呈現在用戶面前。用戶在使用的過程中,可以運用庫中的元件來進行編程,除此之外,還可以用這種方式來編寫元件,最后進入調用程序。如果僅僅以元件的方式來實現許多功能,編寫應用程序也會相應簡化,只要采用模塊化方式來進行編寫即可。這種音視頻處理是通過局域網來進行簡單的多媒體傳送。Gstreamer在傳送視頻數據流的過程中,首先要先將采集到的數據進行色度空間轉換,然后再依次進行荷頭添加、視頻編碼等步驟,對數據進行整合的過程發生在gstrtpbin中,同時要顯現出報告的發送時間,以便音視頻能夠同時在接收端得到同步播放, 進而傳導UDP中。另外,在接收端,由UDP采集到的數據要經過多個步驟來進行解碼,如:數據包解析、解碼器解碼等,最終利用插件來將這些數據呈現在窗口。其中,會話管理的核心構件就是指的是gstrtpbin,它能夠進行數據包的傳輸、音視頻的分流、傳輸控制等,這些功能讓它在音視頻處理過程中起著重要的作用[2]。
1.2 Farsight視頻處理
在Gstreamer開發庫中,可以利用基礎元件進行音視頻的處理過程,而且能夠在一定的局域網范圍內進行視頻通信。但是這種處理方式仍然存在一定的局限性,一般情況下,視頻會議的進行需要多個多媒體同時進行會話,這個過程需要各個多媒體之間要進行相互協調,彼此進行良好的配合,實現會話管理,進而為高層提供更加便捷的工作方式。而Farsight視頻處理指的是在Gstreamer的基礎之上提出的視頻會議理念,進而構建出相應的框架,它能夠實現各個多媒體相互協調、配合,有利于插件程序的編寫,另外,還能夠提供API給用戶來調用插件。當高層運用這種方式進行音視頻會議的時候,存在一個顯著的優勢,能夠保證底層數據流的穩定以及NAT穿越的問題。為了能夠實現視頻會議功能的多媒體框架,Farsight在對元件開發的時候要注意與Gstreamer元件的整合度,只有當整合度越高,視屏會議功能的實現才能更有保障。Farsight中包括多路音視頻會話流,里面存在許多會話參與者,使得音視頻會話管理的功能更加強大。采用模塊化設計的方式來實現通信軟件的音視頻服務,為多媒體處理提供了更廣闊的渠道,同時使得視頻會議功能能夠實現不斷地發展。就目前情況而言,大多數即時通信客戶端都是采用這種處理方式來實現音視頻通信。
為了創造出更便捷地開發方法,一些軟件開發者開始將帶有圖形的用戶界面與通信部分進行分離,將它們的核心代碼提煉出來,成為通信客戶端開發的重要組成部分,俗稱Libpurple。現如今,Adium與Proteus這些客戶端都采用這個程序庫。他們先完成分離工作,再將自己的圖形程序添加進去,形成一個新的客戶端接口。在Libpurple中,多媒體通信成為最主要的目標,所以軟件開發者要Udine整個處理框架進行稍微地處理,繼承和封裝。并通過即時通信協議,來為用戶提供使用接口。同時用戶可以通過應用程序接口的方式來進行程序的編寫,從而完成網絡層與網絡層之間的銜接。除此之外,程序操作者還可以直接通過Libpurple來編寫程序的核心代碼,進而完成整個應用程序的建設。而且Libpurple實現的即時通信協議非常多樣化,如: MSN、AIM等。并且對于媒體后端流處理的協同工作也能夠順利完成。Libpurple是以實現具有自身特色的流媒體模式為主要目標來進行開發,但是要想完成這個目標需要站在Farsight的基礎上來進行設計。
在Jingle協議中規定了RTP通信的許多標準,同時為用戶提供了兩種不同的數據通道,RAWUDP和ICE—。注意要根據具體的視頻通信情況來選擇數據通道,程序的不同會導致對通道的選擇不同。為了讓音視頻通信進行地更加順利,Libpurple需要在原有的基礎上構建一個新的組件對象酬emedia,再利用這個對象來對Farsight組件中參數信息進行提取,提煉出精簡的、有用的信息,如傳送目的地址、解碼器信息等。在完成這個步驟之后,將過濾后的信息傳遞給Jingle協議,進而不斷地在通道內對協議進行完善。當出現新的即時通信協議時,要利用Farsight完成視頻通信,此時,開發者通常都是以Libpurple為前提進行開發,結束后再進行移植,實現完整的視頻通信。
綜上所述,以當前的形勢來看,即時通信系統的出現十分頻繁,如:騰訊、Skype等通信公司都具備一個完整的系統框架。一般情況下,開源特性較強的即時通信開發速度比較快,重視技術的發展,不斷更新技術,進而為用戶創造一個富有個性化的應用模式。而音視頻處理在即時通信系統中顯得尤為重要,其中以Farsight/Gstreamer音視頻處理框架是實現多媒體通信的重要技術基礎,它能夠讓音視頻通信工作變得簡單化。目前我國的這項技術在通信系統中的應用還不夠成熟,還需要一段時間進行磨合,所以相關的研究人員必須要加大研究力度,提高兩者的整合度,相互促進,相互發展。
[1]張晨. 關于即時通信系統的相關研究[J]. 中國科技縱橫,2016(1):55.
[2]劉克軒. 基于FPGA和DSP的音視頻采集處理系統設計[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
翁國川(1994—),男,漢族,籍貫為廣東省潮州市,學歷本科,研究方向為軟件音視頻通信,圖像處理。