• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            一路走來,只有C++和香煙最實在!

            Just Dive Into!

            C++博客 首頁 新隨筆 聯系 聚合 管理
              11 Posts :: 0 Stories :: 29 Comments :: 0 Trackbacks

            Real Time Messaging Protocol(實時消息傳送協議協議)Adobe Systems公司為Flash播放器和服務器之間音頻、視頻和數據傳輸開發的私有協議。

            具體使用RTMPAS代碼大概如下:

              var videoInstance:Video = your_video_instance;

              var nc:NetConnection = new NetConnection();

              var connected:Boolean = nc.connect("rtmp://localhost/myapp");

              var ns:NetStream = new NetStream(nc);

              videoInstance.attachVideo(ns);

            ns.play("flvName");

            Adobe也在官方網站已經提供了RTMP協議的官方文檔說明,為什么要寫這個系列文章最大的原因只是對前一段工作的一個總結和回顧,最近兩個月,實現了一個RTMP Serverc++版本,把公司的流媒體服務和flash無縫對接起來。希望我的文字能給后來研究這個協議的同學有一定的幫助。

            RTMP協議是一個基于TCP的高層協議族,當然這個玩意據說還有UDP協議版本的,不過現在還沒有出來,好像Adobe下一版本的FMS會提供支持。下文將要描述的是TCP協議版本的協議。

               RTMP協議的概要理解:

            RTMP協議是為了和flash之間交換信令以及媒體數據。為了提高使用效率信令和媒體數據都是使用相同的機制。因為是相同的機制Adobe就整出來了一些比較搞人的概念,當然每個協議第一次接觸都是比較難理解的。

                    RTMP協議中信令和媒體數據都稱之為Message,在網絡中傳輸這些Message,為了區分它們肯定是要加一個Message  head的,所以RTMP協議也有一個Message head,還有一個問題因為RTMP協議是基于TCP的,由于TCP的包長度是有限制的(一般來說不超過1500個字節),而RTMPMessage長度是有可能很大的,像一個視頻幀的包可能會有幾十甚至幾千K,這個問題就必然有一個分片的問題,在RTMP協議中對應的說法就是chunk,每一個Message + head都是由一個和多個chunk組成的。到這里對RTMP協議的概要理解就算完了。

            posted on 2009-12-27 00:53 Richard Liu 閱讀(27908) 評論(8)  編輯 收藏 引用

            Feedback

            # re: RTMP協議詳解(一) 2009-12-28 12:49 2s
            Real Time Messaging Protocol(實時消息傳送協議協議)是Adobe Systems公司為Flash播放器和服務器之間音頻、視頻和數據傳輸開發的私有協議。?? 盡瞎說, 誤認子弟。  回復  更多評論
              

            # re: RTMP協議詳解(一) 2009-12-28 22:35 Richard Liu
            @2s
            呵呵 這個玩意信不信就看你了,確實是這樣的,難道公開了協議文本就不是私有協議了嗎?  回復  更多評論
              

            # re: RTMP協議詳解(一)[未登錄] 2010-02-24 10:01 max
            我最近可能有些事情和flash服務器相關,大概要實現一個能夠完成flash流媒體的客戶端,想根您請教下:

            像土豆,youku這類的網站,我抓包的結果是有http報文,請問這類的網站是不是不走RTMP協議.有些網站又是用RTMP的交互過程.針對RTMP我做客戶端的話,是不是需要實現一個類似于一個RTMP協議客戶端,對HTTP做一個假的HTTP的解析和下載的客戶端,然后后端根一個開源的媒體播放器就可以了.能夠解析flv,然后解碼媒體數據.

            可不可以給我發一個RTMP的數據包,或者指點下現在那個網站用RTMP的,我去抓個包看看.
            我郵箱max.wizard@yahoo.com.cn,多謝了.  回復  更多評論
              

            # re: RTMP協議詳解(一) 2010-07-06 21:37 fuck adobe
            公開了嗎?握手那段根本就是瞎扯,鄙視adobe@2s
              回復  更多評論
              

            # p2p的RTMFP協議破解[未登錄] 2011-03-25 16:34 jack
            本人已對奧多比的p2p協議rtmfp進行了逆向分析(C++),加密解密部分全部破解,能夠逆向得到全部數據包的解密報文。本人破解了部分報文結構。第一步的連接功能已經成功實現。希望對RTMFP協議敢興趣的朋友聯系共同研究QQ286422369  回復  更多評論
              

            # re: RTMP協議詳解(一) 2011-11-11 09:02 fanxin
            @jack
            希望能有個參考給哦!fpeter@126.com.
            謝謝!  回復  更多評論
              

            # re: RTMP協議詳解(一) 2012-05-12 21:35
            @Richard Liu
            就是啊  回復  更多評論
              

            # re: RTMP協議詳解(一) 2015-12-16 13:57 zo
            tcp包長有限制嗎?  回復  更多評論
              

            久久久综合香蕉尹人综合网| 无码人妻久久久一区二区三区| AV狠狠色丁香婷婷综合久久| 日韩乱码人妻无码中文字幕久久| 欧美喷潮久久久XXXXx| 久久青青草原国产精品免费| 久久综合精品国产一区二区三区| 2021国内久久精品| 精品综合久久久久久888蜜芽| 国产精品免费看久久久香蕉| 欧美色综合久久久久久| 久久精品国产亚洲精品2020| 久久精品国产欧美日韩| 久久久一本精品99久久精品66| 久久电影网| 99久久99久久| 伊人久久大香线蕉综合影院首页| 国产午夜精品理论片久久影视| 久久这里有精品| 久久久久国产精品麻豆AR影院 | 欧美亚洲日本久久精品| 久久精品人人做人人爽97| 色婷婷久久久SWAG精品| 久久精品成人免费观看97| av国内精品久久久久影院| 亚洲国产另类久久久精品| 欧美伊人久久大香线蕉综合| 人妻系列无码专区久久五月天| 99久久精品国产一区二区三区| 久久久久亚洲av无码专区 | 久久超乳爆乳中文字幕| 久久经典免费视频| 亚洲国产日韩欧美久久| 日本精品久久久久久久久免费| 久久精品成人| 香蕉久久夜色精品国产2020| 亚洲人成无码www久久久| 久久影视综合亚洲| 中文字幕无码久久精品青草| 无码任你躁久久久久久| 2021最新久久久视精品爱|