iOS AVFoundationErrorDomain Code=-11839原因和解決辦法

最近在項目中使用AVPlayer中發(fā)現(xiàn)了一個錯誤:
Error Domain=AVFoundationErrorDomain Code=-11839 "無法解碼" UserInfo={NSLocalizedDescription=無法解碼, NSUnderlyingError=0x1c1851f10 {Error Domain=NSOSStatusErrorDomain Code=-12913 "(null)"}, NSLocalizedRecoverySuggestion=停止其他所有對媒體解密的操作,然后再試一次。, NSLocalizedFailureReason=此媒體所需的解碼器正忙。}

在APP運行期間, 只要執(zhí)行這個方法, 超過16次, 就會出現(xiàn)這個這個錯誤.

self.plyer =  [AVPlayer playerWithPlayerItem:playerItem]; 

這個錯誤會導(dǎo)致AVPlayer無法播放視頻.
在網(wǎng)上搜了一圈后, 發(fā)現(xiàn)這個錯誤是由于內(nèi)存泄漏造成了.因為我在使用AVPlayer的時候,每次創(chuàng)建完之后,沒有釋放掉它,導(dǎo)致錯誤產(chǎn)生.

釋放AVPlayer其實很簡單, 在每次離開播放頁面, 或者不需要播放的時候, 加上這行代碼就行. 之后無論你怎么創(chuàng)建AVPlayer, 都不會再出現(xiàn)這個無法解碼問題

 [self.player replaceCurrentItemWithPlayerItem:nil]; 

感謝文章: http://www.itdecent.cn/p/5d166c4bb7c1

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容