天天看點

ffmpeg rtmp 不清晰_實時視訊RTMP

ffmpeg rtmp 不清晰_實時視訊RTMP

實時視訊rtmp

背景:

由于經常接觸實時視訊, 對實時視訊略有了解. 實時視訊是将視訊流實時上傳到伺服器端進行解析, 由RTMP伺服器處理.

安裝RTMP 伺服器

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

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

解壓後安裝即可, 如何安裝本文不做過多篇幅介紹.

修改配置檔案

修改../nginx-rtmp-module/test下配置檔案nginx.conf, GitHub上就是這個結構, 我們這裡不做改動.

ffmpeg rtmp 不清晰_實時視訊RTMP

作用是指定端口号和檔案目錄

ffmpeg rtmp 不清晰_實時視訊RTMP

作用是使浏覽器可以通路,便于我們調試視訊

 以上配置基本可以通路了, 如有其它需求可以參見詳細配置:

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

配置完成後檢查是否正确:

[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 rtmp 不清晰_實時視訊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/test

輸入下面指令向伺服器推流:

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

将位址放在VLC network中rtmp://10.10.10.10:8001/live/test 即可檢視推流視訊

ffmpeg rtmp 不清晰_實時視訊RTMP

了解了以上資訊有助于我們部署和測試視訊流, 排查測試工程中出現的問題, 協助開發定位問題.  

ffmpeg rtmp 不清晰_實時視訊RTMP

Story:

無論你天資如何,無論你有多大的缺陷,決定你輸赢的都不是這些,而是你是否能永遠清醒地認識自己,是否能做到戒驕戒躁。在跑步時,跑得快的不一定赢;在打架時,實力弱的不一定輸。沒到最後一刻,都無法定輸赢。隻有笑到最後的人,才是真正的赢家。是以,不懈地努力吧!

微信長按二維碼添加作者友善拉您進群交流

ffmpeg rtmp 不清晰_實時視訊RTMP

      擷取更多精彩内容

ffmpeg rtmp 不清晰_實時視訊RTMP
ffmpeg rtmp 不清晰_實時視訊RTMP
ffmpeg rtmp 不清晰_實時視訊RTMP

測試-感想

JMeter資料庫連接配接操作

JMeter接口測試-參數化

JMeter接口測試基礎

Jmeter接口測試-正規表達式提取器

ffmpeg rtmp 不清晰_實時視訊RTMP