Live555學習筆記

2021-06-18 18:50:14 字數 2058 閱讀 7933

live555原始碼:官網)

關於live555編譯

linux編譯

1.進入live555目錄:cd live

2.執行genmakefiles檔案:./genmakefiles linux

3.makefile

windows編譯

關於入口函式

標頭檔案位置:無

原始檔位置:mediaserver\live555mediaserver.cpp

// 建立事件排程物件指標

taskscheduler* scheduler = basictaskscheduler::createnew();

// 建立使用環境物件指標,與事件排程進行關聯

// usageenvironment為使用者使用環境抽象類,可擴充套件至gui環境

// basicusageenvironment為基於控制台程式使用的環境例項

usageenvironment* env = basicusageenvironment::createnew(*scheduler);

// 建立使用者許可權管理資料庫物件

userauthenticationdatabase authdb = new userauthenticationdatabase;

authdb->adduserrecord("username", "password");

// 建立rtsp伺服器物件指標,預設埠:544,若建立失敗,使用埠:8554

rtspserver* rtspserver = dynamicrtspserver::createnew(*env, rtspserverportnum, authdb);

// 建立http伺服器(rtsp-over-http),預設埠:80,若建立失敗,使用埠:8000和8080

// 進入事件排程迴圈

env->taskscheduler.doeventloop();

關於事件排程

關於使用環境

關於使用者許可權

標頭檔案位置:livemedia\include\rtspserver.hh

原始檔位置:livemedia \rtspserver.cpp

類userauthenticationdatabase,宣告如下方法:

1.      增加使用者記錄 void adduserrecord(char const* username, char const* password);

2.      移除使用者記錄 void removeuserrecord(char const* username);

3.      查詢使用者密碼 void lookuppassword(char const* username);

4.      判斷密碼是否是md5加密 boolean passwordaremd5();

如果變數passwordsaremd5是真的話,每一次密碼向資料庫中儲存,或者從資料庫中移除,實際上都需要md5加密,加密方式計算:::

單詞解釋:

realm:域

關於rtsp伺服器

關於rtsp客戶端

關於測試程式

關於makefile檔案

Live555學習筆記

前一陣子,因為專案需要,研究了一下live555開源框架,研究的不是很深入,基本上把live555當做api用了一下,但是畢竟也是本人看的第乙個開源框架,在此記錄總結一下。主要使用其中的四個目錄,分別對應live555的四個庫 usageenvironment目錄,生成的靜態庫為libusageen...

live555原始碼分析 live555大致流程

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

Live555學習之路(一)

我在windows下執行,開始用msys環境編譯,通不過,於是網上找了vs2008編譯環境,lihao nx寫的非常好,我按著步驟,一步就過去了 之後開始了解一些關於rstp與live555方面的資料,huangxinfeng的日誌讓我了解了一些其他關於live555方面的資料 於是就收集了 rts...