上篇文章我們談到使用 EasyDarwin 推流後 前端HTML播放器 播放無畫面的情況,找了各種播放器都服務正常解決,但使用VLC卻能正常播放的問題,我們嘗試了很久最後另闢蹊徑,找到 nginx安裝rtmp模組後 使用FFmpeg往 nginx推流 的解決方案
帶有 rtmp 模組的 nginx 下載地址 https://github.com/illuspas/nginx-rtmp-win32
下載後將兩個工具放在同一個目錄下,如下圖
1:開啟 FFmpeg 目錄 雙擊 ffmpeg.exe 先執行(注意啟動先後順序)
2:開啟 nginx-rtmp-win32-master 雙擊 nginx.exe 執行
3:開啟 nginx 目錄下的 conf 資料夾下面的 nginx.conf 檔案 我們看到 http server在監聽 8089 埠 rtmp 播放埠為 1935
4:我們再瀏覽器裡面輸入 http://localhost:8089/ 訪問出現如下介面(注意這裡使用360瀏覽器預設有flash外掛)
這個是 nginx-rtmp-win32-master 自帶的rtmp測試工具,有直播測試器、安卓端和IOS端的 sdk
5:我們需要先使用命令列工具,讓 FFmpeg 拉取海康攝像頭視訊流往 nginx 推,這樣才可以在此 rtmp測試器裡面播放,首先開啟cmd命令列視窗,進入 ffmpeg的根目錄
然後執行如下命令
ffmpeg -i "rtsp://admin:Aa123456@10.24.18.3:554/Streaming/Channels/101" -f flv -r 20 -s 510x440 -an rtmp://localhost:1935/live/3