live555原始碼學習第二節

2021-06-05 15:46:40 字數 860 閱讀 6325

live555

原始碼學習第二節

usageenvironment

類學習

usageenvironment

代表了整個系統的執行環境,主要包括錯誤的輸入和輸出。其預設實現主要針對控制台進行輸入和輸出。該類中還儲存了乙個非常重要的資料結構:

tasksecheduler

類的引用,這兩個類共同構建了整個

live555

框架的靈魂。

tasksecheduler

類是整個系統的任務除錯中心。由此可見這兩個類的重要性。它們的關係如下圖所示:

從圖中可以看到,

usageenvironment

類是抽象基類,與

tasksecheduler

是組裝關係。為了實現較高層次的抽象,其構造和析構函式均宣告為受保護的,在以後的學習中我們可以看到,構造是通過呼叫靜態成員函式

createnew

實現,而析構則是通過呼叫

reclaim

函式。從圖中可以看出,

basicusageenvironment0

類實現了對錯誤訊息的處理,是整個系統錯誤訊息處理中心。而

basicusageenvironment

類則主要實現了錯誤訊息的輸入與輸出,該類在實際應用中作用不大,我們可以根據實際需要,繼承

basicusageenvironment0

類,對錯誤訊息的輸入與輸出進行定製(比如:我們可以將其寫入日誌,或者顯示在圖形視窗中)。

live555原始碼分析 live555大致流程

今天大致分析了下live555的流程,以h264為例子進行的分析.從連線到傳送rtp rtcp資料報。首先分析呢,不能太關注細節,先整體再區域性。在分析的過程中,設計到live555自己封裝的乙個高階類 比如迭代器,雜湊表,而且這2個類在live555中運用的範圍還非常的廣,但是無不例外都是用鍊錶進...

live555原始碼初步解析(一)

最近因專案需要,要學習live555這個開源平台。live555是用c 實現的,對於該平台的介紹網上有很多文章,以下是個人在讀它原始碼時的記錄,也是乙個初步的理解,和大家一起分享一下。有錯誤,或者不足之處請大家指出。basicusageenvironment庫 a basichashtable.cp...

live555原始碼分析 PLAY命令的處理

play命令概述 play命令要求在setup命令之後進行,此命令處理過程中就開始傳送資料了,在處理play命令過程中還建立了rtcpinstance例項。對於play命令請求中的url有以下幾種情況 與pause teardown get parameter set parameter處理是一樣的...