Linux 5.16 將實(shí)現(xiàn)更好的 USB 低延遲音頻播放
Linux 內(nèi)核開發(fā)者再次嘗試增強(qiáng)其 USB 音頻驅(qū)動(dòng)程序的低延遲播放模式。
根據(jù)補(bǔ)丁描述,由于提前強(qiáng)行提交 URB 可能很容易觸發(fā) XRUN,因此之前的實(shí)現(xiàn)是通過(guò)在觸發(fā)流開始之前用預(yù)先提交的無(wú)聲數(shù)據(jù)來(lái)延遲提交實(shí)際數(shù)據(jù)避免的。而此次提交的補(bǔ)丁采取了類似于隱式反饋模式中使用的方法。URB 像以前一樣在 PCM 觸發(fā)開始時(shí)排隊(duì),但是在每次提交之前會(huì)檢查緩沖區(qū)是否已經(jīng)被填。通過(guò)這種方式,URB 的數(shù)量可以根據(jù)可用的數(shù)據(jù)動(dòng)態(tài)地、靈活地變化,而不會(huì)影響到 XRUN。
此外,還有一批其它的 usb-audio 補(bǔ)丁提交,包括限制共享時(shí)鐘的速率、修復(fù) URB 完成同步時(shí)可能出現(xiàn)的競(jìng)爭(zhēng)、將自旋鎖添加到 stop_urbs()、修復(fù)數(shù)據(jù)包大小計(jì)算回歸等等。這些補(bǔ)丁都已經(jīng)合并到 next 分支,如無(wú)意外,將會(huì)在 Linux 5.16 中推出。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:Linux 5.16 將實(shí)現(xiàn)更好的 USB 低延遲音頻播放
本文地址:https://www.oschina.net/news/162762/linux-5-16-will-support-better-usb-audio