[發明專利]處理音頻流播放異常的方法、裝置、計算機裝置及計算機可讀存儲介質有效
| 申請號: | 201710832499.6 | 申請日: | 2017-09-15 |
| 公開(公告)號: | CN107566890B | 公開(公告)日: | 2020-05-22 |
| 發明(設計)人: | 劉學文;車明賢 | 申請(專利權)人: | 深圳國微技術有限公司 |
| 主分類號: | H04N21/439 | 分類號: | H04N21/439;H04N21/8547 |
| 代理公司: | 深圳盛德大業知識產權代理事務所(普通合伙) 44333 | 代理人: | 賈振勇 |
| 地址: | 518000 廣東省深圳市南山區高新技*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 處理 音頻 流播 異常 方法 裝置 計算機 可讀 存儲 介質 | ||
本發明適用于音視頻技術領域,提供了一種音頻流異常處理方法、裝置、計算機裝置及計算機可讀存儲介質,所述方法包括:獲取緩存中的音頻幀數據;對音頻幀數據的解碼參數進行解析,獲取相關音頻數據,并記錄第一幀音頻幀數據的時間戳;對解析后的音頻幀數據進行解碼渲染;根據相關音頻數據以及第一幀音頻幀數據的時間戳,獲取實際音頻渲染時間;根據實際音頻渲染時間,獲取實時碼流播放時間漂移;根據實時碼流播放時間漂移,判斷音頻幀數據是否存在異常;當判斷結果為是時,啟動復位音頻處理操作。本發明實施例,可有效處理由于碼流抖動、信號不穩定或者碼流跳變等因素導致的聲音中斷停止問題,提高了音頻播放的穩定性,減小音頻播放卡頓的情況。
技術領域
本發明屬于音視頻技術領域,尤其涉及一種處理音頻流播放異常的方法、裝置、計算機裝置及計算機可讀存儲介質。
背景技術
目前音視頻播放器是采用解復用、解碼、渲染的流程設計,每個環節都是透明可控,每個環節出現異常都可以很好的去判斷并且處理,比如VLC播放器,基于FFMPEG的開源項目實現的一個方案,從解復用、解碼、音視頻渲染都是開源可控的,直接在解碼輸出端來判斷音頻PCM幀數據的緩沖是否有中斷來控制音頻的渲染輸出。
但是,目前音視頻播放器在音頻處理部分通常會使用MacX AudioQueue框架來進行解碼和渲染,由于解碼到渲染的過程是不可控和封閉性,無法在解碼或者渲染輸出端實現異常情況的直接判斷及處理,而實時節目的數據在傳輸和數據處理的各個環節都有可能存在抖動性和傳輸質量的問題,一旦發生數據的斷流,都會導致MacX AudioQueue框架的服務終止,出現聲音中斷的問題。
因此,目前在通過MacX AudioQueue框架對音頻的處理過程不可控和封閉性,導致無法實時對異常情況進行處理,導致聲音中斷的問題。
發明內容
本發明實施例提供一種處理音頻流異常播放方法,旨在解決現有技術中無法實時對異常情況進行處理,導致聲音中斷的問題。
本發明實施例提供了一種處理音頻流異常播放方法,包括:
獲取緩存中的音頻幀數據;
對所述音頻幀數據的解碼參數進行解析,獲取相關音頻數據,并記錄第一幀音頻幀數據的時間戳;
對解析后的音頻幀數據進行解碼渲染,并讀取音頻采樣數;
根據所述音頻采樣數、相關音頻數據以及所述第一幀音頻幀數據的時間戳,獲取實際音頻渲染時間;
根據所述實際音頻渲染時間,獲取實時碼流播放時間漂移;
根據所述實時碼流播放時間漂移,判斷所述音頻幀數據是否存在異常;
當判斷結果為是時,啟動復位音頻處理操作。
本發明實施例提供了一種處理音頻流異常播放裝置,包括:
音頻幀數據獲取單元,用于獲取緩存中的音頻幀數據;
解析單元,用于對所述音頻幀數據的解碼參數進行解析,獲取相關音頻數據,并記錄第一幀音頻幀數據的時間戳;
解碼單元,用于對解析后的音頻幀數據進行解碼渲染,并讀取音頻采樣數;
實際音頻渲染時間獲取單元,用于根據所述音頻采樣數、相關音頻數據以及所述第一幀音頻幀數據的時間戳,獲取實際音頻渲染時間;
實時碼流播放時間漂移獲取單元,用于根據所述實際音頻渲染時間,獲取實時碼流播放時間漂移;
判斷單元,用于根據所述實時碼流播放時間漂移,判斷所述音頻幀數據是否存在異常;
第一復位啟動單元,用于當判斷結果為是時,啟動復位音頻處理操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳國微技術有限公司,未經深圳國微技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710832499.6/2.html,轉載請聲明來源鉆瓜專利網。





