本發明專利技術本發明專利技術屬于計算機技術領域,公開了一種基于國標GB28181的推流web播放方法,所述方法具體包括如下步驟:步驟1:web前端加載WXInlinePlayer;步驟2:web前端向推流服務器發送播放請求;所述推流服務器用于向Sip服務器請求獲取設備ID對應的視頻流并將視頻流解封裝為裸流,并按照H264或H265編碼協議重新封裝為rtmp格式的視頻流并發送給pingos服務器;步驟3:WXInlinePlayer解碼所述flv格式的視頻流并在web前端播放。該方法基于pingos+前端WXInlinePlayer解碼的方法,通過本發明專利技術的流媒體轉發推流服務,實現網頁url請求便可實現H264/H265編碼的播放;本發明專利技術的方法不僅僅適用于國標GB28181碼流的Web前端播放,其也適用于rtsp碼流的Web前端播放。此外,本發明專利技術還提供了實現該方法的系統。了實現該方法的系統。了實現該方法的系統。
【技術實現步驟摘要】
一種基于國標GB28181的推流web播放方法和系統
[0001]本專利技術屬于計算機
,更具體而言,涉及一種基于國標GB28181的推流web播放方法和系統。
技術介紹
[0002]隨著安防設備和直播視頻的興起,web播放國標GB28181碼流的技術如下:
[0003]第一種方式
[0004]rtsp拉流推流技術:直接調用ffmpeg函數avformat_open_input(),拉取碼流,但是不能直接打開國標GB28181碼流(GB28181碼流需要交互);
[0005]在此過程中,拉取rtsp流需要知道用戶和密碼,一般適用于自己的設備,第三方的設備一般不對外提供用戶和密碼;
[0006]第二種方式
[0007]IE
?
Activex插件播放方式:其可以在Activex解碼,然后通過句柄畫在窗口上,但是這種方式要依賴IE瀏覽器,不能很好支持H5的開發,而且IE官方也不準備支持。
[0008]第三種方式
[0009]nginx
?
rtmp+前端WASM解碼方式:其可以不用安裝額外的二進制程序,而且能夠很好支持H5前端開發,這種方式比較適合H5渲染,但是目前的流媒體服務都是基于RTMP服務接入,而原生的RTMP只支持H264并不支持H265的傳輸。
[0010]CN201910710296.9公開了一種基于web的視頻監控方法、裝置、存儲介質、服務器及系統,該方法包括:S1:接收web客戶端頁面發送的播放監控視頻的播放請求,所述播放請求中包含攝像頭ID;S2:從數據庫中查詢所述攝像頭ID對應攝像頭的基礎信息;S3:利用所述基礎信息從所述攝像頭獲取原始的rtsp視頻流;S4:將rtsp視頻流轉為rtmp視頻流,再將rtmp視頻流轉為websocket的flv視頻流;S5:將所述flv視頻流發送至所述web客戶端,以使所述web客戶端將flv視頻流轉為可播放格式的視頻片段后直接在viedo標簽內進行播放。
[0011]該方案類似于第一種方式,其無法直接打開國標GB28181碼流即國際流。
[0012]同時,拉取rtsp流需要知道用戶和密碼,一般適用于自己的設備,第三方的設備一般不對外提供用戶和密碼。而且之前的碼流沒引入lib265,原生的rtmp不支持H265編碼。
[0013]綜合現有技術來看,實現在前端打開國標GB28181碼流、rtsp碼流具有如下難題需要克服:
[0014]1.目前推流服務一般是rtsp和GB28181接入,而rtsp需要知道設備的用戶id和密碼,一般不現實;
[0015]2.大部分的安防設備都是響應國家要求,必須支持GB28181;而GB28181的碼流大部分都是基于國際流,一般網頁沒辦法解碼;
[0016]3.基于IE的active已經不維護,而且不能很好支持h5的開發;
[0017]4.新生的WXInlinePlayer可以解決H265編碼,但是不支持GB28181接入;
[0018]5.原生的rtmp不支持H265,必須要引入lib265轉發和解封裝。
[0019]本案要解決的技術問題在于:如何在網頁前端實現GB28181碼流的播放。
技術實現思路
[0020]本專利技術的主要目的在于提供一種基于國標GB28181的推流web播放方法,該方法基于 pingos+前端WXInlinePlayer解碼的方法,通過本專利技術的流媒體轉發推流服務,實現網頁url 請求便可實現H264/H265編碼的播放;
[0021]本專利技術的方法不僅僅適用于國標GB28181碼流的Web前端播放,其也適用于rtsp碼流的Web前端播放。
[0022]此外,本專利技術還提供了實現該方法的系統。
[0023]根據本專利技術的第一方面,提供了一種基于國標GB28181的推流web播放方法,所述方法具體包括如下步驟:
[0024]步驟1:web前端加載WXInlinePlayer;
[0025]步驟2:web前端向推流服務器發送播放請求;所述播放請求中含有設備ID;
[0026]所述推流服務器用于向Sip服務器請求獲取設備ID對應的視頻流并將視頻流解封裝為裸流,并按照H264或H265編碼協議重新封裝為rtmp格式的視頻流并發送給pingos服務器;
[0027]所述pingos服務器用于將rtmp格式的視頻流轉碼成為flv格式的視頻流并推送給 WXInlinePlayer;
[0028]步驟3:WXInlinePlayer解碼所述flv格式的視頻流并在web前端播放。
[0029]在本專利技術中,采用pingos服務器的優勢在于:
[0030]1.pingos在原生的nginx
?
rtmp
?
module上支持了HTTP(S)
?
FLV,這個剛好可以結合wxinlineplayer(輸入源要求HTTP(S)
?
FLV);
[0031]2.pingos依賴NGINX構建,并且繼承arut和AlexWoo的nginx
?
rtmp
?
module模塊。修復 arut和AlexWoo版本存在的部分問題外,pingos在編碼和直播協議以及其他方面做了多項功能擴展;
[0032]3.可以利用pingos的http(s)服務加載前端代碼(解碼庫);
[0033]4.支持H264、H265;
[0034]5.從高聚合低耦合原則觸發,如果在推流服務器模塊實現流媒體服務,過多的業務邏輯和流媒體邏輯耦合,沒有實現分離而且增加推流服務的負擔,增加耦合性,不利于通用性。而本專利技術增設了pingos服務器,降低耦合性,其通用于多種視頻流。
[0035]總的來說,引入pingos可以更快實現流媒體開發,降低流媒體開發門檻。
[0036]在上述的基于國標GB28181的推流web播放方法中,所述設備中的視頻流為國際流或 rtsp流。
[0037]在上述的基于國標GB28181的推流web播放方法中,所述步驟3中,web前端將url地址發送給WXInlinePlayer;所述WXInlinePlayer通過加載url地址向pingos服務請求視頻流;所述url地址由pingos服務器生成并通過推流服務器發送給web前端,所述pingos服務器根據WXInlinePlayer的請求推送flv格式的視頻流給WXInlinePlayer。
[0038]在上述的基于國標GB28181的推流web播放方法中,所述web前端和推流服務器保持心跳連接,所述推流服務器在心跳連接存在時持續向pingos服務器推送rtmp格式的視頻
流;所述推流服務器在心跳連接斷開時停止向pingos服務器推送rtmp格式的視頻流。
[0039]在上述的基于國標GB28181的推流web播放本文檔來自技高網...
【技術保護點】
【技術特征摘要】
1.一種基于國標GB28181的推流web播放方法,其特征在于,所述方法具體包括如下步驟:步驟1:web前端加載WXInlinePlayer;步驟2:web前端向推流服務器發送播放請求;所述播放請求中含有設備ID;所述推流服務器用于向Sip服務器請求獲取設備ID對應的視頻流并將視頻流解封裝為裸流,并按照H264或H265編碼協議重新封裝為rtmp格式的視頻流并發送給pingos服務器;所述pingos服務器用于將rtmp格式的視頻流轉碼成為flv格式的視頻流并推送給WXInlinePlayer;步驟3:WXInlinePlayer解碼所述flv格式的視頻流并在web前端播放。2.根據權利要求1所述的基于國標GB28181的推流web播放方法,其特征在于,所述視頻流為國際流或rtsp流。3.根據權利要求1所述的基于國標GB28181的推流web播放方法,其特征在于,所述步驟3中,web前端將url地址發送給WXInlinePlayer;所述WXInlinePlayer通過加載url地址向pingos服務請求視頻流;所述url地址由pingos服務器生成并通過推流服務器發送給web前端,所述pingos服務器根據WXInlinePlayer的請求推送flv格式的視頻流給WXInlinePlayer。4.根據權利要求1所述的基于國標GB28181的推流web播放方法,其特征在于,所述web前端和推流服務器保持心跳連接,所述推流服務器在心跳連接存在時持續向pingos服務器推送rtmp格式的視頻流;所述推流服務器在心跳連接斷開時停止向pingos服務器推送rtmp格式的視頻流。5.根據權利要求2所述的基于國標GB28181的推流web播放方法,其特征在于,所述推流服務器通過pjSip、librtp和ffmpeg編解碼庫將國際流或rtsp流轉碼成為rtmp格式。6.一種基于國標GB28181的推流web播放系統,其特征在于,包括如下組件:Web前端,所述web前端加載有WXIn...
【專利技術屬性】
技術研發人員:勞康乘,黃章良,陳小軍,
申請(專利權)人:廣州魯邦通物聯網科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。