上篇文章我們談到使用 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