[發明專利]播放實時音視頻流的方法、裝置及電子設備有效
| 申請號: | 202110927433.1 | 申請日: | 2021-08-13 |
| 公開(公告)號: | CN113382212B | 公開(公告)日: | 2021-11-16 |
| 發明(設計)人: | 張耀華;鄧智文 | 申請(專利權)人: | 深圳市有為信息技術發展有限公司 |
| 主分類號: | H04N7/18 | 分類號: | H04N7/18;H04N21/439;H04N21/44;H04N21/6437;G07C5/08;G07C5/00 |
| 代理公司: | 北京律和信知識產權代理事務所(普通合伙) 11446 | 代理人: | 張莎莎;何春暉 |
| 地址: | 518049 廣東省深圳市福田區梅林街道梅*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 播放 實時 視頻 方法 裝置 電子設備 | ||
1.一種播放實時音視頻流的方法,其特征在于,包括:
接收來自終端的音視頻數據;
解析所述音視頻數據以獲得視頻包和音頻包,從所述視頻包獲取視頻流數據;
對所述視頻流數據進行解碼,得到并保存圖片幀數據;
對所述圖片幀數據中的時間戳進行重新計算,以消除時間戳跳變和誤差;
將對時間戳進行重新計算之后的所述圖片幀數據重新合成視頻流數據,并將視頻流數據重新打包得到視頻包;
將所述音頻包重新打包。
2.根據權利要求1所述的方法,其特征在于,對所述圖片幀數據中的時間戳進行重新計算,包括:
對時間戳進行重新計算的公式如下:
Tnew= T +(100 – T mod 100);
其中,Tnew為重新計算后的新時間戳,T為原時間戳。
3.根據權利要求1所述的方法,其特征在于,對所述圖片幀數據中的時間戳進行重新計算,還包括:
判斷第一個關鍵幀時間戳是否為零,不為零則重置為零;
對于第一個關鍵幀之后的圖片幀的時間戳,按幀率依次遞增。
4.根據權利要求1所述的方法,其特征在于,還包括:
判斷所述接收來自終端的音視頻數據是否超時;
如果超時,使用最后保存的所述圖片幀數據,對時間戳進行重新計算,并合成視頻流數據。
5.根據權利要求4所述的方法,其特征在于,對時間戳進行重新計算,包括:
對時間戳進行重新計算的公式如下:
Tnew= T +(100 – T mod 100);
其中,Tnew為重新計算后的新時間戳,T為最后保存的所述圖片幀數據中的時間戳。
6.根據權利要求1所述的方法,其特征在于,還包括:
在將所述音頻包重新打包之前,對所述音頻包的時間戳T1和所述視頻包的時間戳T2進行比較;
如果T1與T2差值的絕對值小于第一閾值,將所述音頻包打包;
否則,繼續等待下一個視頻包。
7.根據權利要求6所述的方法,其特征在于,還包括:
如果所述音頻包的時間戳T1小于所述視頻包的時間戳T2,且差值的絕對值不小于第一閾值,將該音頻包丟棄。
8.根據權利要求6所述的方法,其特征在于,還包括:
如果所述音頻包的時間戳T1大于所述視頻包的時間戳T2,且差值大于第二閾值,將該音頻包丟棄。
9.一種播放實時音視頻流的裝置,其特征在于,包括:
接收模塊,用于接收音視頻數據包;
解析模塊,用于解析所述音視頻數據包以獲得視頻包和音頻包以及從所述視頻包獲取視頻流數據;
解碼模塊,對所述視頻流數據進行解碼,得到圖片幀;
時間戳處理模塊,用于對所述圖片幀的時間戳進行重新計算,以消除時間戳跳變和誤差,將對時間戳進行重新計算之后的所述圖片幀數據重新合成視頻流數據;
打包模塊,用于將重新合成的視頻流數據和所述音頻包重新打包。
10.一種電子設備,其特征在于,包括:
存儲器、處理器以及存儲在所述存儲器中并可在所述處理器上運行的計算機程序,其特征在于,所述處理器執行所述計算機程序時實現上述權利要求1-8中任一項所述的方法。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市有為信息技術發展有限公司,未經深圳市有為信息技術發展有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110927433.1/1.html,轉載請聲明來源鉆瓜專利網。





