首先了解RTSP/RTP/RTCP相關概念,尤其是了解RTP協議:RTP與RTCP協議介紹(轉載)。 vlc使用模塊加載機制調用live555,調用live555的文件是live555.cpp。 一、幾個重要的類 以下向左箭頭(“<-”)為繼承關系。 1. ...
最近五一回家,終於有機會能安靜的看一下流媒體這方面相關的知識,准備分析live 的源碼,接下來會把我讀源碼的過程記錄成博客,以供其他的同路人參考。 因為再讀源碼的過程中,並不是一路順着讀下來,往往是讀到后面,才能反過來明白之前讀的內容,所以有的時候會寫的有點穿越感。 在這個過程中,參考了其他大牛的博客,所以一些基本概念,就不再重復,也感謝前輩們的貢獻。 五一在家條件不便,源碼只好用截圖方式給出。 ...
2016-05-04 16:37 0 4982 推薦指數:
首先了解RTSP/RTP/RTCP相關概念,尤其是了解RTP協議:RTP與RTCP協議介紹(轉載)。 vlc使用模塊加載機制調用live555,調用live555的文件是live555.cpp。 一、幾個重要的類 以下向左箭頭(“<-”)為繼承關系。 1. ...
上一篇博客說道,live555服務端main函數做的最后一件事就是調用如下代碼陷入死循環: 那么這個doEventLoop是什么樣的呢?如下: 就是不停地調用SingleStep()這個函數,SingleStep函數中代碼比較多,我下面僅截取關鍵 ...
從程序的結構來看,live項目包括了四個基本庫、程序入口類(在mediaServer中)和一些測試代碼(在testProgs中)。 四個基本靜態庫是UsageEnvironment、BasicUsageEnvironment、groupsock和liveMedia ...
live555的客服端流程:建立任務計划對象--建立環境對象--處理用戶輸入的參數(RTSP地址)--創建RTSPClient實例--發出DESCRIBE--發出SETUP--發出PLAY--進入Loop循環接收數據--發出TEARDOWN結束連接。 可以抽成3個函數接口:rtspOpen ...
live555支持單播和組播,我們先分析單播的流媒體服務端,后面分析組播的流媒體服務端。 一、單播的流媒體服務端: // Begin the LIVE555 event loop: env->taskScheduler().doEventLoop ...
如何讓Android支持C++異常機制 Android不支持C++異常機制,如果需要用到的話,則需要在編譯的時候加入比較完整的C++庫. Android支持的C++庫可以在Android NDK中找 ...
前文傳送門: Spring源碼分析之預啟動流程 Spring源碼分析之BeanFactory體系結構 Spring源碼分析之BeanFactoryPostProcessor調用過程詳解 本文內容: 在IOC中,是如何通過beanDefition創建出一個bean ...
Lettuce是一個高級的Redis客戶端,下面通過對其創建連接過程的源碼進行走讀 下面看看RedisClient是如何創建單機模式的異步連接的, 首先從RedisClient中的connectAsync看起,在該方法中並沒有什么特別的地方,在對RedisURI進行非空校驗后就直接 ...