nginx搭建流媒體伺服器

来源:https://www.cnblogs.com/zhylioooo/archive/2018/01/04/8193947.html
-Advertisement-
Play Games

1、安裝PCRE庫 到www.pcre.org 下載pcre-8.37.tar.gz tar -zxvf pcre-8.37.tar.gz cd pcre-8.37 ./configure make make install 2、安裝zlib庫 到www.zlib.net 下載zlib-1.2.8. ...


1、安裝PCRE庫
到www.pcre.org 下載pcre-8.37.tar.gz
tar -zxvf pcre-8.37.tar.gz
cd pcre-8.37
./configure
make
make install

2、安裝zlib庫
到www.zlib.net 下載zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8
./configure
make
make install

3、安裝SSL
到www.openssl.org下載openssl-1.0.2g.tar.gz
tar -zxvf openssl-1.0.2g.tar.gz
./config
make
make install

4、到nginx.org 下載nginx
到https://github.com/arut/nginx-rtmp-module 下載:nginx-rtmp-module
解壓縮
進入解壓後的nginx
依次執行以下命令運行:
./configure --prefix=“安裝目錄” --add-module=“nginx-rtmp-module解壓後的路徑” --with-http_ssl_module
make -f objs/Makefile
make -f objs/Makefile install

5、配置
#推流配置,與http配置同級
rtmp {
server {
listen 2017;
publish_time_fix on;
application live {
live on;
allow publish all;
allow play all;
}
#用於HLS拉流
application vod {
live on;
hls on;
hls_path “推流目錄”;
hls_fragment 5s;
}
#用於RTMP拉流
application app {

live on;

#record all;

#record_path /alidata/server/nginx/www;

}
}

#拉流配置,與http下server同級
server{
listen 8080;
location / {
types{
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root “推流目錄”;
add_header Cache-Control no-cache;
}
}

6、html拉流關鍵代碼
//HLS拉流
<video controls autoplay>
<source src="http://192.168.1.104:8080/qq.m3u8" type="application/vnd.apple.mpegurl" />
<p class="warning">Your browser does not support HTML5 video.</p>
</video>

//RTMP拉流和推流網址一致
rtmp://192.168.1.104:2017/app/qq

7、ffmpeg模擬推流工具的安裝
到http://ffmpeg.org/ 官網下載壓縮包並解壓縮
tar -xjvf ffmpeg-3.3.1.tar.bz2
到http://yasm.tortall.net/Download.html下載yasm並解壓縮
tar -xvzf yasm-1.3.0.tar.gz
cd yasm-1.3.0/
./configure
make
make install
進入解壓縮後的ffmpeg
./configure --enable-shared --prefix=/monchickey/ffmpeg
make
make install

vim /etc/ld.so.conf.d/ffmpeg.conf
添加一行內容: /monchickey/ffmpeg/lib 之後保存並退出,然後執行 ldconfig 使配置生效
然後cd /monchickey/ffmpeg/查看版本./ffmpeg -version正常
為了方便可以在/etc/profile文件中將ffmpeg命令添加進PATH中
sudo vim /etc/profile
找到export行,在下麵一行添加
export PATH=/usr/local/ffmpeg/bin/:$PATH
保存後執行
source /etc/profile
8、模擬推流
ffmpeg -re -i aaa.mp4 -c copy -f flv rtmp://192.168.1.104:2017/vod/qq

9、參考網址

https://www.cnblogs.com/qazwsxwtc/p/5384967.html

https://www.cnblogs.com/freeweb/p/6897907.html

http://blog.csdn.net/enweitech/article/details/52485535

https://github.com/arut/nginx-rtmp-module

http://blog.csdn.net/redstarofsleep/article/details/45092147

http://www.360doc.com/content/15/0618/10/597197_478933808.shtml


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • ASP.NET Core 學習指導 "工欲善其事必先利其器"。我們在做事情之前,總應該做好充分的準備,熟悉自己的工具。就像玩游戲有一些最低配置一樣,學習一個新的框架,也需要有一些基本要求。ASP.NET Core是.NET Core平臺的Web開發框架,.NET Core是對於.NET的全新構築。C ...
  • vsftpd 是“very secure FTP daemon”的縮寫,安全性是它的一個最大的特點。 vsftpd 是一個 UNIX 類操作系統上運行的伺服器的名字,它可以運行在諸如 Linux、BSD、Solaris、 HP-UNIX等系統上面,是一個完全免費的、開放源代碼的ftp伺服器軟體,支持 ...
  • VirtualBox安裝CentOS後,再安裝增強功能就可以共用文件夾、粘貼板以及滑鼠無縫移動,主要步驟如下: 1、yum -y update 2、yum -y install g++ gcc gcc-c++ make kernel-* # 主要是在安裝增強工具提示沒有安裝這些軟體 3、yum -y ...
  • 安裝與配置 1.安裝nginx yum intsall nginx 2.配置 在 /etc/nginx/conf.d 目錄中新建一個my.conf文件,在此之前先將nginx.conf 配置文件中的server節點註釋掉 server { listen 80; #映射埠 location / { ...
  • :setWindowFlags(Qt::CustomizeWindowHint);//設置視窗標題欄自定義 setWindowFlags(Qt::WindowMinimizeButtonHint);//設置視窗的標題欄只有最小化的按鈕 setWindowFlags( Qt::WindowCloseB ...
  • 在日常的運維工作中,經常會用到nginx服務,也時常會碰到nginx因高併發導致的性能瓶頸問題。今天這裡簡單梳理下nginx性能優化的配置(如有不妥,敬請指出~) 一、這裡的優化主要是指對nginx的配置優化,一般來說nginx配置文件中對優化比較有作用的主要有以下幾項:1)nginx進程數,建議按 ...
  • 1,ls 查看當前文件夾下的文件 2,ls -a 查看當前文件夾下的隱藏文件 3,ls -l 查看當前文件夾下的文件,以列表的形式 4,ls -h 查看當前文件夾下的文件,換算大小格式 5,支持寫法:ls -ahl、ls -lha 補充:ls /bin 查看/bin目錄下的內容,此命令無需在bin目 ...
  • 1、在官網下載JDk http://www.oracle.com/technetwork/cn/java/javase/downloads/index.html 如果是64位的操作系統,可以下載64位或者32位的jdk,但是32位的系統不能運行64位的jdk。 2、解壓jdk-x.x.x.tar.g ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...