• <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 閱讀(27852) 評論(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包長有限制嗎?  回復  更多評論
              

            久久精品国产精品亚洲艾草网美妙 | 51久久夜色精品国产| 久久久久亚洲AV无码观看| 国色天香久久久久久久小说| 亚洲中文字幕无码久久2017| 久久精品国产亚洲av麻豆色欲| 久久66热人妻偷产精品9| 一本大道加勒比久久综合| 久久亚洲欧洲国产综合| 亚洲成色WWW久久网站| 久久综合九色综合久99| 色婷婷狠狠久久综合五月| 色诱久久久久综合网ywww| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久综合狠狠综合久久| 久久国产影院| 午夜精品久久久久久中宇| 国产免费久久久久久无码| 欧美一区二区久久精品| 久久久久久亚洲AV无码专区| 久久99久久成人免费播放| 久久精品国产久精国产果冻传媒| 国产精品久久国产精品99盘| 伊人久久亚洲综合影院| 国产一区二区三精品久久久无广告| 精品国产乱码久久久久软件| 国产日韩欧美久久| 97久久久久人妻精品专区| 午夜精品久久久内射近拍高清| 波多野结衣久久| 久久青青草原综合伊人| 亚洲香蕉网久久综合影视 | 成人久久精品一区二区三区| 欧美黑人激情性久久| 91久久精品国产成人久久| 久久久久久午夜成人影院| 久久99热这里只有精品国产| 久久亚洲高清综合| 久久99精品久久久久久9蜜桃| 国内精品久久久久久野外| 一本一道久久综合狠狠老|