簡單聊聊實時視頻rtmp


 背景:

由於經常接觸實時視頻, 對實時視頻略有了解. 實時視頻是將視頻流實時上傳到服務器端進行解析, 由RTMP服務器處理.

 

RTMP 服務器

自己動手搭建一個rtmp, 本文在 Linux環境中搭建

去git上clone 一個下來https://github.com/arut/nginx-rtmp-module

如何安裝本文不做過多篇幅介紹.

修改../nginx-rtmp-module/test下配置文件nginx.conf, 官網這樣的結構, 我們這里就不做改動

 

作用是指定端口號和文件目錄

作用是使瀏覽器可以訪問,便於我們調試視頻

 

詳細配置參見:

https://github.com/sergey-dryabzhinsky/nginx-rtmp-module/blob/dev/test/nginx.conf

參考文檔:

https://denji.github.io/homebrew-nginx/

 

配置完成后檢查是否正確:

[nginx-rtmp-module]# nginx -t

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

nginx: configuration file /etc/nginx/nginx.conf test is successful

配置文件修改完成后建議重啟server

nginx:nginx -s reload

 

檢查RTMP是否生效

瀏覽器中輸入:http://+服務器ip+端口+stat

瀏覽器中出現下圖,則表示rtmp服務生效了

 

推流

推流需要借助ffmpeg

linux下FFmpeg下有2個壓縮包

https://ffmpeg.org/releases/ffmpeg-4.0.2.tar.bz2

http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz

 

推流服務器地址格式如下:

rtmp://+ip+":"端口+/live/+"其他"     //其他是我們任意起的名字

例如:rtmp://10.10.10.10:8001/live/selftest

 

輸入下面命令向服務器推流:

ffmpeg -re -i +視頻路徑 -c copy -f flv +推流服務器地址

其他還有視頻剪切, 碼率控制, 視頻編碼格式轉換等 ffmpeg都能應付自如.

比如一個視頻的編碼是MPEG4,想用H264編碼,咋辦? 

ffmpeg -i input.mp4 -vcodec h264 output.mp4

 

VLC收看流

使用播放工具VLC 播放工具

rtmp://10.10.10.10:8001/live/selftest

將地址rtmp://10.10.10.10:8001/live/selftest 即可查看留情況

 

原文: https://mp.weixin.qq.com/s/W4bbdHEcAbe5JQOIFWv54g

 

今日推薦閱讀文章精選推薦

為什么要做接口測試

JMeter數據庫操作

Jmeter接口測試-正則表達式

JMeter中文返回亂碼

Jmeter接口測試-參數化

JMeter接口測試-基礎

測試-感想

 

咨詢工作加微信

掃描二維碼

 

歡迎自薦和推薦, 需要的微信推送簡歷!

請猛戳下面二維碼了解更多


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM