IPC網絡攝像機rtsp視頻流web上H5播放方法


https://blog.csdn.net/weixin_42538493/article/details/106113325

最近因為項目需要,預研了一下rtsp視頻流在web上通過H5播放的解決方案,通過搜索和整理,最終確定一個比較理想且實現較為簡單的方案:websocket rtsp proxy + streamdian.js播放器組合;

1、H5播放器使用開源的streamdian.js,該公司開源了播放器,不過只實現了aac+h264視頻流的解碼,對於大多數應用場景來說,基本夠用;

2、streamdian公司發布的后端websocket rtsp proxy是收費的,根據媒體代理數進行計費,計費單位$,對我大天朝來說,有些貴了,不過這個東東並不復雜,完全可以自己實現,進行替換;

好了,廢話不多說,直接上干貨,為了實現websocket rtsp proxy服務器,首先需要實現一個websocket proxy,github上直接找到代碼:ws-tcp-proxy項目;然后將它改造成websocket rtsp proxy,如果對rtp over rtsp媒體傳輸方式比較熟悉的話,實現起來也比較容易;最后需要搭建webServer並且支持反向代理即可,這里采用Nginx來搭建;

完成了上述開發后,經過驗證,自己開發的websocket rtsp proxy可以完美替換收費的streamdian服務器,播放器采用streamdian.js開源免費播放器;完整的代碼在文末給出,並對代碼做一些必要說明:

1、本代碼僅是demo代碼,僅僅實現了方案驗證,本人不對因代碼開源可能產生的任何商業糾紛負法律責任;

2、demo代碼可分別在Windows和Linux上編譯和運行;默認給出了Windows版本,如果需要在Linux上運行,則需要在Linux上編譯wsp即可,Nginx也安裝一個Linux版本,將Nginx配置文件和頁面復制過去即可,我分別在Windows server 2019和CentOS7.5上驗證了可以穩定運行;

3、如果你想將它應用於你的商用項目,你可能需要優化wsp(websocket rtsp proxy)服務器,解決可能的內存泄漏問題,以及實現多線程,當然多進程也可以;因為我的商用版本代碼不能上傳到這里,^v^。

4、使用方法:直接解壓后,啟動Nginx.exe和wsp.exe即可,無需啟動參數,瀏覽器打開:http://127.0.0.1:8088,頁面上輸入rtsp的url,點擊播放;

5、注意事項:

5.1、播放器僅支持aac、h264編碼格式,其他格式的話,需要自己擴展streamdian.js播放器,后續我們可能會擴展支持h265、mpeg-ps;

5.2、如果播放失敗,請將index.html文件中的localhost改成你Webserver的ip地址;

下載地址:

點擊下載
————————————————
版權聲明:本文為CSDN博主「覓光者」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_42538493/article/details/106113325


免責聲明!

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



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