視頻監控中對RTP和mpeg-4及H.264的應用

來源:互聯網
上載者:User

by chuckGao 09

(序)

對於視頻監控產品的開發我還只是在入門階段。在此過程中,開始進一步瞭解RTP協議(包括RTCP)和mpeg-4編解碼(基於xvid)以及H.264(基於x264)的開發及應用。整個項目建立在Davinci DM6446及web伺服器上,這裡是我的筆記。會在項目進行中加以刪減修正。

 

一、關於RTP你不得不瞭解的幾個問題

      在此之前,筆者已簡單的接觸過基於jrtplib庫的應用,不過因為本次項目關係,捨棄了jrtplib的C++風格,轉而從RTP協議開始研究,以期望能用C寫出適於項目的RTP應用。在開始行動之前,下載了RTP的協議規範RFC-3550,基於mpeg-4負載的RTP負載協議RFC-3016和基於mpeg-4負載的RTP負載協議RFC-3984以及開源的rtplib作為參考。

 

(1)關於mpeg-4與h.264負載類型

   在深入理解RTP協議前,我先從其負載類型開始,對我關心的資料格式進行了研究。對於現有的RFC協議規範,並沒有確定mpeg-4與h.264這兩種負載類型的有效載荷碼。也就是說,我們必須通過SDP自訂其承載碼。關於承載碼的說明,也有MIME形式的定義,不過這裡僅就SDP方式進行說明。

1.承載碼用在對RTP包RTP header的定義中。其長度為7 bits

2.現有的承載碼在RFC-3551中定義,所支援的格式列表在這裡給出。

3.對於mpeg-4和h.264的載荷碼,我們用下面的方式自訂。我們可以從2中給出的列表中發現,對於有效載荷碼96-127這個範圍,都是通過SDP動態建立

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.