RTMP Handshake
生活随笔
收集整理的這篇文章主要介紹了
RTMP Handshake
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
rtmp 1.0規(guī)范中,指定了RTMP的握手協(xié)議:
- c0/s0:一個(gè)字節(jié),說(shuō)明是明文還是加密。
- c1/s1: 1536字節(jié),4字節(jié)時(shí)間,4字節(jié)0x00,1528字節(jié)隨機(jī)數(shù)
- c2/s2: 1536字節(jié),4字節(jié)時(shí)間1,4字節(jié)時(shí)間2,1528隨機(jī)數(shù)和s1相同。 這個(gè)就是srs以及其他開(kāi)源軟件所謂的simple handshake,簡(jiǎn)單握手,標(biāo)準(zhǔn)握手,FMLE也是使用這個(gè)握手協(xié)議。
Flash播放器連接服務(wù)器時(shí),若服務(wù)器只支持簡(jiǎn)單握手,則無(wú)法播放h264和aac的流,可能是adobe的限制。adobe將簡(jiǎn)單握手改為了有一系列加密算法的復(fù)雜握手(complex handshake) ,詳細(xì)協(xié)議分析參考變更的RTMP握手
下表為總結(jié):
| Simple 標(biāo)準(zhǔn)握手 簡(jiǎn)單握手 | 不依賴 | vp6+mp3/speex | 所有 | 支持 | 編碼器,譬如FMLE,FFMPEG srs-librtmp(兩種都支持,推薦用Simple) |
| Complex 復(fù)雜握手 | openssl | vp6+mp3/speex h264+aac | Flash | 支持 | 主要是Flash播放器播放H264+aac流時(shí)需要, 其他都不需要 |
播放器(Flash Player): Flash播放器支持的編碼。
備注:SRS編譯時(shí)若打開(kāi)了SSL選項(xiàng)(--with-ssl),SRS會(huì)先使用復(fù)雜握手和客戶端握手,若復(fù)雜握手失敗,則嘗試簡(jiǎn)單握手。
Winlin 2014.2
總結(jié)
以上是生活随笔為你收集整理的RTMP Handshake的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: RTMP的URL/Vhost规则
- 下一篇: Wireshark网络抓包(一)——数据