AUDIOqueue 为什么会播放一段时间就听不到声音
轉自簡書;非常有用
AudioQueue緩沖區為空時,那么AudioQueueOutputCallback回調不會再調用
這個其實很好理解,AudioQueue的回調本事就是數據播完了才回調的
AudioQueue播著播著就停了
緩沖區長期處于饑餓狀態,這個Queue就可能就用不了。饑餓限制的時間不定,短則幾百毫秒,多則幾秒。
AudioQueueBuffer播放時長
播放時長和mAudioDataByteSize相關(PCM)
鎖屏
鎖屏(休眠)狀態下,系統會降低App喚醒次數以降低功耗,所以AudioQueueOutputCallback的回調也會有延遲。導致的結果是聲音可能已經播了很久回調才過來。
靜音包
聲學原理上,振幅不變就是靜音。對于壓縮格式,數據全部為0,不一定是靜音。
AudioQueueStart
AudioQueueStart可以多次連續調用,無副作用。當前AQ暫停后,在前臺模式AQ還有機會重啟。比如當前被音樂打斷,可以重啟AQ而把音樂打斷;但是系統級的,比如來電,重啟AQ會返回錯誤碼。
錄音
默認情況下,錄音用的是下面的麥克風。如果同時支持播放,聲音從聽筒出來。以降噪為評判,上面的MIC比下面的好
AudioQueueReset
AudioQueueReset的作用是清除音頻隊列緩沖區,調用后不能再Start。因此它一般配合Stop使用,更快的停止播放。、、這條勘誤下,實測start前需要reset。否則還是過一段時間沒聲音
作者:偶是星爺
鏈接:https://www.jianshu.com/p/3d82065e819d
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
總結
以上是生活随笔為你收集整理的AUDIOqueue 为什么会播放一段时间就听不到声音的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 青盐的功效与作用 青盐的药用价值_中药知
- 下一篇: halcon中保存图像jpeg的压缩比