多屏互動(dòng)/無線投屏的標(biāo)準(zhǔn)協(xié)議之一的Miracast/WIDI(Wi-Fi?Display?Technical?Specification)在2017/4/21發(fā)布了2.0版本(Release 2?final?version),?在2017/7/31發(fā)布了2.1版本
此次修改,增加了不少內(nèi)容,本文將對(duì)此梳理一下.
改動(dòng)1:增加了新的發(fā)現(xiàn)方式.
原來的接收端要尋找接收端是通過WIFI-P2P進(jìn)行發(fā)現(xiàn)的,?Version 2版本增加了mDNS發(fā)現(xiàn)方式,?mDNS底層需要BSS(AP)/IP網(wǎng)支持.?mDNS在很多領(lǐng)域都有應(yīng)用,其中Airplay的發(fā)現(xiàn)過程就是使用的mDNS.
mDNS的機(jī)制我們不在這里詳述,有興趣的同學(xué)可以訪問//blog.csdn.net/wirelessdisplay/article/details/78088992
改動(dòng)2:連接建立過程
在版本1中,?RTSP?TCP的建立是由SINK端建立的,?而版本2中,如果走mDNS/IP方式,?則TCP的建立是Source端發(fā)起,并發(fā)送TCP?SYN包至SINK,?通過協(xié)商,?再確定RTSP?TCP的鏈接方式,?再由SINK端發(fā)起RTSP?TCP鏈接
改動(dòng)3:媒體傳輸方式
在版本2中,承載音頻和視頻的RTP可以通過TCP和UDP進(jìn)行傳輸,而且可以隨時(shí)切換,?并且為了音視頻的傳輸質(zhì)量,?特意增加了幾個(gè)RTSP信令,用于調(diào)節(jié)buffer緩存,?分別是:
wfd2-transport-switch/wfd2-buffer-length/wfd2-audio-playback-status/wfd2-video-playback-status
改動(dòng)3:媒體協(xié)商
版本2中,增加了很多媒體格式,所有協(xié)商過程變動(dòng)更加復(fù)雜
改動(dòng)4:增加視頻格式
版本1中,視頻大小支持1080P/H264,?版本2中,支持最高到4Kp60,?格式增加H265
改動(dòng)5:增加輔流
版本1中是沒有輔流選項(xiàng)的,?輔流格式主要有PNG/JPEG/H264
改動(dòng)6:增加音頻格式
增加CTA?Audio/AAC-ELDv2格式
改動(dòng)7:增加音頻格式
增加了不少命令,?其中有一個(gè)wfd2-direct-streaming-mode比較有意思,?他是從source發(fā)往sink的,用于表示主流是否在激活狀態(tài).?此命令還沒有實(shí)測(cè),實(shí)際效果不知如何
總體來講,?Miracast/WIDI新版本的修改主要目的就是增加音視頻傳輸?shù)馁|(zhì)量,?其中mDNS和TCP的增加,主要借鑒Airplay, P2P的性能太依賴網(wǎng)卡質(zhì)量導(dǎo)致有些場(chǎng)景P2P傳輸質(zhì)量較差的問題.
也增加了流量控制方面命令,用于再網(wǎng)絡(luò)情況較差的情況下,調(diào)整傳輸碼流
當(dāng)然更重要的是支持了H265,?在當(dāng)前,在同等質(zhì)量下, H265是能夠顯著的降低碼流的唯一手段
更多多屏互動(dòng)/無線投屏的軟件解決方案,可訪問//www.rtwedding.com/wirelessdisplay-sdk/