您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

04 facebook身份未驗證怎么解決(由WebRTC談起)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-04-30 07:57:03【】3人已围观

简介aller(主叫方)     |     Callee(被叫方)  |+----

aller(主叫方)          |          Callee(被叫方)    |

+----------------------------+-------------------------+

開始撥出電話:`handleOutgoingCall`...

                        --[SS.CallOffer]-->

…并開始生成iceCandidate候選,先保存在本地。iceCandidate里面包含了SDP、公網地址、用來標識當前ice中流媒體的id(sdpMid),這個公網地址是由STUN、TURN Server發過來的。

當生成iceCandidate候選后,將會調用方法`handleLocalAddedIceCandidate` ,并把這些iceCandidate保存起來。

                                                    被叫方收到來電,通過 `handleReceivedOffer` 發送呼叫應答

                                                    <--[SS.CallAnswer]--

                                                    1. 開始生成iceCandidate候選。

                                                    2. 立即通過`handleLocalAddedIceCandidate` 將它們發送給主叫方。

                                                    <--[SS.ICEUpdate]-- (多次發送)

主叫方收到應答后調用方法: `handleReceivedAnswer`,接著發送所有前面保存的iceCandidate候選 (在此之后生成的iceCandidate候選會立即發送)

--[SS.ICEUpdates]--> (多次發送)

完成交換iceCandidate候選后…(此時表示雙方身份已確認,接下來會通過P2P通道建立音視頻會話,這里會涉及NAT技術,有可能失失敗。如果失敗,主叫方會一直顯示呼叫中,被叫方不會顯示任何界面)雙方都調用方法: `handleIceConnected`

顯示遠程鈴聲用戶界面

1.連接到提供的數據通道

2.顯示來電界面

3.如果被叫人接聽電話

4.發送連接消息

                                                    <--[DC.ConnectedMesage]--

接收到的連接消息后顯示呼叫已連接。

主叫方掛斷(被叫方同樣可以掛斷)調用方法:

--[DC.Hangup]-->

--[SS.Hangup]-->

結束

上面的消息交換可以整理為如下的簡化版的WebRTC建立連接過程:

1)主叫方通過 createOffer 生成 SDP 描述

2)主叫方通過 setLocalDescription,設置本地的描述信息

3)主叫方將 offer SDP 發送給被叫方

4)被叫方通過 setRemoteDescription,設置遠端的描述信息

5)被叫方通過 createAnswer 創建出自己的 SDP 描述

6)被叫方通過 setLocalDescription,設置本地的描述信息

7)被叫方將 anwser SDP 發送給主叫方

8)主叫方通過 setRemoteDescription,設置遠端的描述信息。

只有通過 SDP握手 ,雙方才知道對方的信息,這是建立p2p通道的基礎。 通過SDP握手后,客戶端之間就會建立起一個點對點的直接通訊通道。但是由于我們所處的網絡環境錯綜復雜,用戶可能處在私有內網內,使用p2p傳輸時,將會遇到 NAT (網絡地址轉換)以及防火墻等阻礙。這個時候我們就需要在SDP握手時,通過STUN/TURN/ICE相關 NAT穿透技術 (也有稱為 打洞 或 穿墻 技術)來保障p2p鏈接的建立。

WebRTC的視頻部分 ,包含采集、編解碼(I420/VP8)、加密、媒體文件、圖像處理、顯示、網絡傳輸與流控(RTP/RTCP)等功能。

    視頻采集支持多種媒體類型,比如I420、YUY2、RGB、UYUY等,并可以進行幀大小和幀率控制。

    WebRTC采用I420/VP8編解碼技術。VP8是Google收購ON2后的開源實現,并且也用在WebM項目中。VP8能以更少的數據提供更高質量的視頻,特別適合視頻會議這樣的需求。

    視頻加密是WebRTC的買粉絲_engine一部分,相當于視頻應用層面的功能,給點對點的視頻雙方提供了數據上的安全保證,可以防止在Web上視頻數據的泄漏。

    視頻加密在發送端和接收端進行加解密視頻數據,密鑰由視頻雙方協商,代價是會影響視頻數據處理的性能;也可以不使用視頻加密功能,這樣在性能上會好些。

視頻加密的數據源可能是原始的數據流,也可能是編碼后的數據流。估計是編碼后的數據流,這樣加密代價會小一些,需要進一步研究。

WebRTC的音頻部分 ,包含設備、編解碼(iLIBC/iSAC/G722/PCM16/RED/AVT、NetEQ)、加密、聲音文件、聲音處理、聲音輸出、音量控制、音視頻同步、網絡傳輸與流控(RTP/RTCP)等功能。

    WebRTC采用iLIBC/iSAC/G722/PCM16/RED/AVT編解碼技術。

    WebRTC還提供NetEQ功能---抖動緩沖器及丟包補償模塊,能夠提高音質,并把延遲減至最小。

    另外一個核心功能是基于語音會議的混音處理。

    聲音處理針對音頻數據進行處理,包括回聲消除(AEC)、AECM(AEC Mobile)、自動增益(AGC)、降噪(NS)、靜音檢測(VAD)處理等功能,用來提升聲

很赞哦!(5795)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:四川资阳乐至县

工作室:小组

Email:[email protected]