System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及圖像通信,具體而言,涉及一種直播流處理方法及電子設備。
技術介紹
1、隨著網絡帶寬的提升和視頻編解碼技術的進步,網絡直播已廣泛應用于娛樂、教育、安防監控等多個領域,在網絡直播技術的支撐下,視頻內容實時傳輸至全球各地的用戶終端,使用戶能實時觀看和參與直播。
2、目前的網絡視頻播放中,為了增加視頻的趣味性和信息豐富性,通常會對視頻進行目標檢測,例如,檢測人物情緒和動作、物體類型等信息,在播放視頻時一并顯示目標檢測信息。然而,當前僅能在預先錄制的視頻文件中實現視頻和目標檢測信息的同步顯示,在直播場景下,無法保證視頻和目標檢測信息的實時性和同步性。
技術實現思路
1、有鑒于此,本專利技術的目的在于提供一種直播流處理方法及電子設備,其大大地提高了直播場景中的視頻和目標檢測信息顯示的實時性和同步性。
2、為了實現上述目的,本專利技術采用的技術方案如下:
3、第一方面,本專利技術提供一種直播流處理方法,應用于直播流處理系統,所述直播流處理系統包括媒體服務器以及與所述媒體服務器通信連接的錄制設備和播放設備,所述方法包括:
4、所述錄制設備進行實時錄制,得到每個錄制時刻的音頻幀和視頻幀,并對所述視頻幀進行目標檢測,根據檢測結果生成sei幀;
5、所述錄制設備分別將所述音頻幀、所述視頻幀和所述sei幀編碼成流媒體幀,并實時將所述流媒體幀推送至所述媒體服務器;
6、當檢測到直播播放事件被觸發后,所述播放設備向所述媒體服
7、在建立連接后,所述媒體服務器向所述播放設備實時推送所述流媒體幀;
8、所述播放設備接收所述流媒體幀,將具有同一錄制時刻的所述流媒體幀同時播放,以同時播放同時錄制的所述視頻幀和所述音頻幀,并在播放的所述視頻幀上繪制對應所述sei幀中的目標檢測信息。
9、可選地,所述播放設備包括網絡緩存隊列、解碼緩存隊列和播放緩存隊列,且所述播放設備上部署有瀏覽器;
10、所述播放設備接收所述流媒體幀的步驟,包括:
11、所述瀏覽器對接收的所述流媒體幀進行解析,按照預設的結構體,將解析結果整理成解析數據幀,并將所述解析數據幀放入所述網絡緩存隊列;其中,所述解析結果包括播放時間,所述播放時間與所述流媒體幀的錄制時刻一致;
12、所述瀏覽器對所述網絡緩存隊列中的所述解析數據幀進行循環讀取,并在讀取的所述解析數據幀滿足延時限制的情況下,將所述解析數據幀放入所述解碼緩存隊列;
13、所述瀏覽器對所述解碼緩存隊列中的所述解析數據幀循環解碼,得到所述流媒體幀,并按所述播放時間的順序,將各所述流媒體幀存放至所述播放緩存隊列。
14、可選地,所述瀏覽器對所述網絡緩存隊列中的所述解析數據幀進行循環讀取,并在讀取的所述解析數據幀滿足延時限制的情況下,將所述解析數據幀放入所述解碼緩存隊列的步驟,包括:
15、所述瀏覽器從所述網絡緩存隊列中,選擇排序最前的所述解析數據幀作為第一目標幀,并計算所述第一目標幀的網絡延時;
16、判斷所述第一目標幀的網絡延時是否超過預設的最長延時;
17、若是,則將所述播放時間在當前時刻之前的所述解析數據幀,作為待清空幀,將所述解碼緩存隊列中的各所述待清空幀刪除;
18、將所述網絡緩存隊列中,所述播放時間為當前時刻的所述解析數據幀放入所述解碼緩存隊列,并返回執行所述瀏覽器將所述網絡緩存隊列中的第一個解析數據幀作為第一目標幀的步驟。
19、可選地,所述解析結果還包括sei標識;
20、所述瀏覽器對所述解碼緩存隊列中的所述解析數據幀循環解碼,得到所述流媒體幀,并按所述播放時間的順序,將各所述流媒體幀存放至所述播放緩存隊列的步驟,包括:
21、所述瀏覽器從所述解碼緩存隊列中,循環讀取排序最前的所述解析數據幀作為第二目標幀;
22、針對每個所述第二目標幀,判斷所述第二目標幀的sei標識是否為第一標識,若是,則按照所述播放時間的順序,將所述第二目標幀放入所述播放緩存隊列,若否,則將所述第二目標幀傳入預設的音視頻解碼器;其中,所述第一標識指示為sei幀;
23、計算傳入所述音視頻解碼器的各所述第二目標幀間的音頻時間差和視頻時間差;
24、當所述音頻時間差或所述視頻時間差達到預設的最短延時時,通過所述音視頻解碼器依次對傳入的所述第二目標幀進行解碼,得到流媒體幀;
25、按照所述播放時間的順序,將所述流媒體幀放入所述播放緩存隊列。
26、可選地,所述解析結果還包括播放類型;
27、所述計算傳入所述音視頻解碼器的各所述第二目標幀間的音頻時間差和視頻時間差的步驟,包括:
28、從傳入所述音視頻解碼器的各所述第二目標幀中,選擇所述播放類型為音頻的各所述第二目標幀作為音頻組,選擇所述播放類型為視頻的各所述第二目標幀作為視頻組;
29、從所述音頻組中確定最早播放時間和最晚播放時間,將所述最早播放時間和所述最晚播放時間的時間差作為音頻時間差;
30、從所述視頻組中確定最早播放時間和最晚播放時間,將所述最早播放時間和所述最晚播放時間的時間差作為視頻時間差。
31、可選地,所述按照所述播放時間的順序,將所述第二目標幀放入所述播放緩存隊列的步驟,包括:
32、采用二分法,從所述播放緩存隊列中,查找與所述第二目標幀的播放時間最近的流媒體幀,作為關聯幀;
33、當所述第二目標幀的播放時間在所述關聯幀之后,或所述第二目標幀和所述關聯幀的播放時間相同時,將所述第二目標幀放至所述關聯幀之后;
34、當所述第二目標幀的播放時間在所述關聯幀之前時,將所述第二目標幀放至所述關聯幀之前。
35、可選地,所述將具有同一錄制時刻的所述流媒體幀同時播放的步驟,包括:
36、從所述播放緩存隊列中,選擇排序最前的所述流媒體幀以及與該流媒體幀具有同一播放時間的流媒體幀和/或所述sei幀,作為待播組;
37、在畫布標簽中展示所述待播組中的視頻幀,在音頻標簽播放所述待播組中的音頻幀,并在所述畫布標簽上繪制所述待播組中的目標檢測信息。
38、第二方面,本專利技術提供一種直播流處理方法,應用于錄制設備,所述方法包括:
39、實時對位于攝像范圍內的區域進行錄制,得到每個錄制時刻的音頻幀和視頻幀,并對所述視頻幀進行目標檢測,根據檢測結果生成sei幀;
40、分別將所述音頻幀、所述視頻幀和所述sei幀編碼成流媒體幀,并實時將所述流媒體幀推送至媒體服務器,以實現如第一方面所述的直播流處理方法。
41、第三方面,本專利技術提供一種直播流處理方法,應用于播放設備,所述播放設備與媒體服務器通信連接,所述方法包括:
42、當檢測到直播播放事件被觸發后,向所述媒體服務器發起拉取請求,以本文檔來自技高網...
【技術保護點】
1.一種直播流處理方法,其特征在于,應用于直播流處理系統,所述直播流處理系統包括媒體服務器以及與所述媒體服務器通信連接的錄制設備和播放設備,所述方法包括:
2.根據權利要求1所述的直播流處理方法,其特征在于,所述播放設備包括網絡緩存隊列、解碼緩存隊列和播放緩存隊列,且所述播放設備上部署有瀏覽器;
3.根據權利要求2所述的直播流處理方法,其特征在于,所述瀏覽器對所述網絡緩存隊列中的所述解析數據幀進行循環讀取,并在讀取的所述解析數據幀滿足延時限制的情況下,將所述解析數據幀放入所述解碼緩存隊列的步驟,包括:
4.根據權利要求2所述的直播流處理方法,其特征在于,所述解析結果還包括SEI標識;
5.根據權利要求4所述的直播流處理方法,其特征在于,所述解析結果還包括播放類型;
6.根據權利要求4所述的直播流處理方法,其特征在于,所述按照所述播放時間的順序,將所述第二目標幀放入所述播放緩存隊列的步驟,包括:
7.根據權利要求2所述的直播流處理方法,其特征在于,所述將具有同一錄制時刻的所述流媒體幀同時播放的步驟,包括:
>8.一種直播流處理方法,其特征在于,應用于錄制設備,所述方法包括:
9.一種直播流處理方法,其特征在于,應用于播放設備,所述播放設備與媒體服務器通信連接,所述方法包括:
10.一種電子設備,其特征在于,包括處理器和存儲器,所述存儲器存儲有能夠被所述處理器執行的計算機程序,所述處理器可執行所述計算機程序以實現如權利要求8或9所述的直播流處理方法。
...【技術特征摘要】
1.一種直播流處理方法,其特征在于,應用于直播流處理系統,所述直播流處理系統包括媒體服務器以及與所述媒體服務器通信連接的錄制設備和播放設備,所述方法包括:
2.根據權利要求1所述的直播流處理方法,其特征在于,所述播放設備包括網絡緩存隊列、解碼緩存隊列和播放緩存隊列,且所述播放設備上部署有瀏覽器;
3.根據權利要求2所述的直播流處理方法,其特征在于,所述瀏覽器對所述網絡緩存隊列中的所述解析數據幀進行循環讀取,并在讀取的所述解析數據幀滿足延時限制的情況下,將所述解析數據幀放入所述解碼緩存隊列的步驟,包括:
4.根據權利要求2所述的直播流處理方法,其特征在于,所述解析結果還包括sei標識;
5.根據權利要求4所述的直播流處理方法,其特征...
【專利技術屬性】
技術研發人員:漆勝平,
申請(專利權)人:成都瑞通視訊科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。