OBS_Classic經典版架構

來源:互聯網
上載者:User

標籤:images   faac   架構   sam   操作   簡介   ++   更新   x264   

一,簡介

OBS(open boardcast server),是一個用於直播的開源軟體。

官方網站:https://obsproject.com/

代碼託管地址:https://github.com/jp9000/OBS

git地址:https://github.com/jp9000/OBS.git

二,結構

專案檔結構如:

三,分析

最新的OBS只能在vista以上作業系統中運行,顯卡必須至少支援DX10。

OBS的編譯需要visual studio 2013(C++11重寫了部分代碼),當然你也可以switch到老版本下進行編譯,但新的特性或bug修正就無法啟用了。

OBS包括五大組件,以及一些附加功能:

video source :

a,DShow的capture filter;

b,遊戲畫面,hook部分通過minihook實現,獲得的surface分別通過D3D10共用在OBS主視窗上顯示,以及通過共用記憶體發送到OBS進程中進行encode;

c,桌面視窗畫面,通過GDI實現;

d,圖片;

audio source:

a,麥克風及案頭聲音,通過MMDevice擷取;

b,blank,無聲音;

video encoder:

a,x264;

b,nvidia cuda video encoder;

c,intel QSV video encode;

audio encoder:

a,MP3,通過lame庫實現;

b,aac,通過libfaac庫實現;

stream destination:

a,rtmp stream,通過librtmp實現;

b,file stream,可產生FLV/MP4的檔案;

附加功能:

a,音頻重採樣,通過libsamplerate庫實現;

b,音頻去噪;

c,自動更新;

四,總結:

OBS邏輯上區分的很清楚,但是代碼部分非常雜揉。因而作者正在寫一個新的跨windows/linux/mac平台的C++11適配的project。

地址:https://github.com/jp9000/obs-studio

OBS_Classic經典版架構

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.