日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

基于live555的视频直播 DM368IPNC RTSP分析

發布時間:2023/12/10 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于live555的视频直播 DM368IPNC RTSP分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

因需要,從個人的理解順序和需求角度對live555的分析與開發整理,包含RTSP Server與RTSP Client、如何直播H.264流與JPEG流等,均進行了探討,對live555的初學者有一定的指導意義。

本人習慣使用excel歸檔,所以本文均為excel的截圖,源文件可以再資源中下載。








?

?

基于live555的視頻直播 DM368IPNC RTSP分析

?

appro IPNC視頻流直播部分用的RTSP,基于live555,通過改寫wis-streamer實現的,在live555官網上有wis-streamer的代碼下載,appro將其修改,在framedsource中加入了GetAVData接口,這樣ipnc就可以直播了。

感慨:C++ 真的太好用了

現在懶了,文字部分就直接復制出來,源文檔使用的是excel,

文檔下載地址:http://www.kuaipan.cn/file/id_48923272389066806.html


基于live555的視頻直播 DM368IPNC RTSP分析

一、描述


appro利用live555實現了三種視頻流以及一種音頻流的直播
1、MJPEG Video
2、H264 Video
3、MPEG4 Video
4、PCM Audio

live555是一個開源的RTSP C++類庫,默認實現音視頻文件的點播,但是可以通過繼承相關類,重寫相關方法實現視頻直播

live555提供的實現直播的通用步驟是:

截圖來自之前的《live555分析與開發.xlsx》

appro也是按照此種方法實現

二、Appro的添加的live555源文件

之所以文件復雜,是由于實現了多種音視頻流,如果只留其一,源文件將非常簡潔

下圖是appro源碼的UML類圖

APPROInput類 類似于設計模式中的簡單工廠模式,用于創建具體的FramedSource,對于WISServerMediaSubsession類來說,處理FramedSource的接口是相同的,
但是對于FramedSource來說,VideoSource與AudioSource的具體的幀獲取是不同的,
這樣,就需要利用APPROInput來分別創建VideoSource和AudioSource。


類APPROInput的videoSource()方法 返回VideoOpenFileSource類的實例
類APPROInput的audioSource()方法 返回AudioOpenFileSource類的實例

三、重要的FramedSource

FramedSource類的doGetNextFrame()方法用于獲得音視頻的幀數據,子類需要實現這個方法

OpenFileSource中的incomingDataHandler1,調用了虛函數readFromFile,這個函數與底層相關,
所有由OpenFileSource的子類 VideoOpenFIleSource和AudioOpenFileSource類實現

在appro的ipnc中,不管是視頻還是音頻數據,均是通過GetAVData()函數來獲得,
所以VideoOpenFileSource類和AudioOpenFIleSource類的readFromFile方法中封裝了GetAVData()這個函數。

具體獲得哪種類型的數據是由類OpenFileSource中的屬性APPROInput &fInput來傳遞的

在main函數中有關FramedSource操作的所有代碼如下圖,以H264為例
啟示:在移植appro的live555到高清相機中,我認為最好的方法就是按照IPNC的GetAVData()函數結構,
封裝高清相機的GetAVData()函數,高層的live555RTSP部分可不做任何改動

四、RTSP直播 main主程序

這與普通的live555 rtsp service結構并無太多區別,只是由于要傳輸的視頻類型較多,所以多了很多if else,這部分比較簡單,不作分析。

appro也是按照此種方法實現

?

?

?

?

轉載于:https://www.cnblogs.com/jiangu66/p/3249113.html

總結

以上是生活随笔為你收集整理的基于live555的视频直播 DM368IPNC RTSP分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。