1. 程式人生 > >開原始碼Window下搭建rtmp流媒體伺服器

開原始碼Window下搭建rtmp流媒體伺服器

有這樣需求,將攝像頭視屏釋出出去,並且需要在web網頁上通過Flash播放器播放。首先Flash被我所知道的所有瀏覽器所支援。如果是Activex控制元件。還需要被使用者額外安裝,而且一不小心還會出問題。但是Flash player預設是被安裝的。而且是比較穩定的。雖然開源的VLC播放器所提供的OCX相當不錯。可是個人還是覺得沒有Flash直接播放方便。flash支援的視訊格式有限,像mp4等格式都不會被flash player直接支援。所以就有了選擇RTMP協議的視訊流。支援點播和時間查詢播放。那麼下面我們就在Windows下搭建一個RTMP視訊流釋出程式。我選擇的都是開原始碼編譯出的程式去搭建。免費,可定製。:)ffmpeg+ CRtmpserver

準備

             下載ffmpeg. 這個支援很多很多的格式視訊http://ffmpeg.org/download.html。進入下載,可以下載原始碼和Windows 平臺下的Release版。然後下載crtmpserver.http://www.rtmpd.com/  這是官網。,但是官網不提供Windows下的編譯好的程式。http://www.rtmpd.com/resources/裡面能看到原始碼下載地址,

需要我們自己下載原始碼編譯。可以看到是SVN進行管理的。進入Wiki。可以看到詳細的說明文件。它是在linux下編寫完成(很多好的開原始碼都是在linux下編寫完成,所以我們還是非常有必要學習學習linux)。我們只能搭建交叉編譯環境,編譯出Windows下可執行程式。我喜歡Ubuntu下編譯。交叉編譯環境如何搭建。直接百度。很多資料可以參考。這樣兩個重要的開源工具下載準備完成。當然我們需要一個好的flash播放器。當然流媒體釋出伺服器開源工具還有比較好的。比如Red5.這是java寫的,感興趣的可以進去看看。

開始釋出視訊

首先我們可以直接將視訊檔案釋出到media目錄中


可以看到media目錄中我放入了幾個視訊檔案:

這樣我們就可以以rtmp流的形式訪問視訊了;首先得啟動服務。直接用批處理啟動。run.bat.

這樣就實現了rtmp靜態視訊釋出rtmp流給flash player播放。注意我們這裡視訊放在media資料夾中這個是由crtmpserver的配置檔案中配置的。它的配置檔案是lua指令碼寫的。

我的就是配置在media中的。

現在我通過ffmpeg將流釋出給crtmpserver對外發布。

我寫了一個批處理直接執行。批處理內容是:

我將2.mp4視訊釋出成編碼成H264以rtmp格式釋出出去。

這樣這個2.mp4就被髮布出去了。


後記:

          雖然都是以視訊檔案釋出rtmp流釋出的。但是這只是簡單的搭建例項。我們可以將他用到很多地方。我後面打算通過它直接將攝像頭的視訊流編碼成H264釋出出去rtmp流供flash player播放。然後遠端檢視。同時我打算利用Drectshow操作電腦攝像頭實現視訊即時一對一或者一對多聊天。並且儲存伺服器視訊檔案供歷史聊天視訊查詢。這也是我選擇開原始碼搭建的原因之一。

參考閱讀

相關推薦

原始碼Window搭建rtmp媒體伺服器

有這樣需求,將攝像頭視屏釋出出去,並且需要在web網頁上通過Flash播放器播放。首先Flash被我所知道的所有瀏覽器所支援。如果是Activex控制元件。還需要被使用者額外安裝,而且一不小心還會出問題。但是Flash player預設是被安裝的。而且是比較穩定的。雖然開源

用nginx-rtmp-module搭建rtmp媒體伺服器

前言 利用開源的nginx-rtmp-module和Nginx搭建流媒體伺服器。Nginx是一個非常出色的http伺服器,nginx-rtmp-module是一個開源的Nginx擴充套件模組,擁有很多功能特性,像接收rtmp推流拉流,hls直播等: 1.RTMP/HLS/MPEG

Nginx搭建rtmp媒體伺服器

Nginx搭建rtmp流媒體伺服器 康林(2013年10月20日星期日) 1        功能: 1.1         視訊、音訊直播流(Live streaming of video/audio) 1.2         Flv、mp4

nginx 搭建rtmp媒體伺服器

本文是搭建nginx流媒體伺服器過程的筆記,方便自己或者有相關需求的人員參考。 註明: 主機系統:ubuntu16.04 測試主機IP:192.168.0.5 1. 下載PCRE 並安裝.       主頁地址: ftp://ftp.csx.cam.ac.uk/

如何在Linux操作系統搭建配置媒體服務器系統

Linux 流媒體系統 鑒於服務器端的安全性因素,更多的網絡管理員更願意在Linux操作系統下搭建流媒體服務器系統進行互聯網的實時直播和點播。那麽如何在Linux操作系統下安裝和配置流媒體服務器系統呢?下面是詳細的安裝配置說明。(以八百裏流媒體服務器系統的Linux的安裝和配置為例說明)

Ubuntu16.04配置nginx HTTPS + RTMP媒體伺服器

Ubuntu16.04下配置HTTPS + rtmp伺服器 1.   在/usr目錄下建立資料夾nginx-install: cd /usr mkdir nginx-install cd nginx-install 2.  &nbs

(九) nginx rtmp媒體伺服器搭建

nginx 反向代理伺服器搭建(Ubuntu中):(除了nginx搭建流媒體伺服器(模組化配置),常用的還有red5(java配置)) nginx官網:http://nginx.org/ nginx中有很多模組,rtmp-module ffplay "rt

視訊演示-Ubuntu 14搭建Nginx-RTMP媒體伺服器

(草稿版) 視訊演示地址:PART1-https://www.bilibili.com/video/av18139213/ 第一步、準備工作 (1)設定遠端連線Ubuntu root賬戶 apt-get install -y openssh-server 編輯vim /et

搭建nginx rtmp媒體伺服器(超詳細)

阿里雲搭建rtmp流媒體伺服器,中間踩過一些坑,過程一步步紀錄的很詳細,以及碰到的一些問題。 一.工具下載 下載 OpenSl 下載解壓後目錄情況如下: 二. 編譯 1)編譯openssl 1.進入openssl目錄新建bin目錄,單

Windows環境搭建EasyDarwin媒體伺服器及測試指南

相關網站: https://github.com/EasyDarwin/EasyDarwin/tree/master/EasyDarwin 一、準備工作,需要先下載我們需要的程式 1、EasyDarwin  下載地址:https://github.com/EasyDarwi

CentOS7安裝配置媒體伺服器Red5

背景:因工作需要,要研究一些流媒體伺服器相關的技術,主要是為了搭建直播所用的伺服器,本文是基於CentOS7搭建Red5流媒體伺服器,利用OBS推流工具可實現簡單的直播、觀看功能。 本文主要介紹流媒體伺服器red5的搭建,主要就是修改配置和新增到服務。 下載 我們

使用nginx搭建windows媒體伺服器

準備工具: nginx ffmpeg ffmpeg只需要下載static版本。 下載nginx後,解壓nginx,然後修改conf/nginx-win.conf的內容為自己需要的配置,具體如下: #user nobody; # multiple work

使用ffmpeg迴圈推(迴圈讀取視訊檔案)推送EasyDSS RTMP媒體伺服器的方法

需求 在做EasyDSS開發時,總是在測試推流效果。 有時候,我們想使用OBS進行推流測試,也可以,這很好。 以及其他RTMP推流工具。 但是,別忘了,還有ffmpeg這個神器。ffmpeg可以獲取各種視訊流,並推送給EasyDSS RTMP流媒體伺

搭建srs媒體伺服器

方案: 搭建流媒體伺服器之後,採用ffmpeg推流(也可以使用obs推流),VLC拉流觀看 1、下載SRS原始碼 git clone https://github.com/ossrs/srs 2、安裝SRS cd srs/trunk ./configure

mac ox 搭建red5媒體伺服器(含Demo)--學習記錄

1、下載最新版本的 red5 伺服器 下載頁面地址: 開啟找到最新的 釋出版本並下載 如下圖: 2、安裝 下載完,直接解壓檔案,將解壓後的目錄放個感覺合適的地方 設定環境變數 在 檔案 ~/.ba

javaCV開發詳解之4:轉器實現(也可作為本地收器、推器,新增新增圖片及文字水印,視訊影象幀儲存),實現rtsp/rtmp/本地檔案轉發到rtmp媒體伺服器(基於javaCV-FFMPEG)

javaCV系列文章: 補充篇: 歡迎大家積極開心的加入討論群 javacpp-ffmpeg: 前言: 本章基於javaCV實現轉流器和收流器功能,測試採用監控rtsp地址轉發至rtmp伺服器地址 新增openCV儲存圖片功能。 補充:

Ubuntu16.04 安裝搭建RED5媒體伺服器

    在網上看了不少安裝red5-server的方法,在我電腦上都好像安裝不成功,本來是很簡單的事,因為剛接觸,結果費了不少時間。這裡整理出ubuntu16.04 成功安裝的方法,以便給搭建一個參考。    (一)安裝JDK    1. 終端輸入:apt-cache sea

用vlc搭建簡單媒體伺服器(UDP和TCP方式)

這段時間用到了流媒體資料傳輸的TCP和UDP方式,感覺vlc可以做這方面的demo,這裡總結下,也方便我以後查閱。 簡介 VLC不僅僅是個播放器,也可以作為流媒體伺服器使用。這個網上有相關的資料,我就不多說了。 宣告下本文用的VLC版本:2.0.3 用VLC搭建基於UDP的流媒體伺服器 流媒體伺服器大

EasyDSS RTMP媒體伺服器開發直播同時HLS錄影功能實現時移回放

EasyDSS商用流媒體伺服器解決方案是由EasyDarwin開源團隊原班人馬開發的一套集流媒體點播、轉碼與管理、直播、錄影、檢索、時移回看於一體的一套完整的商用流媒體伺服器解決方案,支援RTMP推流,RTMP/HLS分發。 EasyDarwin如何支援點播和

用vlc搭建簡單媒體伺服器(UDP和TCP方式)-轉 rtsp很慢才能顯示

這段時間用到了流媒體資料傳輸的TCP和UDP方式,感覺vlc可以做這方面的demo,這裡總結下,也方便我以後查閱。 簡介 VLC不僅僅是個播放器,也可以作為流媒體伺服器使用。這個網上有相關的資料,我就不多說了。 宣告下本文用的VLC版本:2.0.3 用VLC搭建基於UDP的流媒體伺服器 流媒體伺服