Tyl*_*ett 5 android webrtc webrtc-android
我试图MediaStream在RecyclerView. 目前,我的同伴MediaStream在我们最初的握手时给了我所有的对象,我能够在一个具有自定义TextureView. 当我获得大量要滚动的流时,就会出现问题。在滚动足够多的列表项后,我最终崩溃了。
MediaStream#dispose()当我的列表项被回收时,我尝试使用该功能。这似乎避免了使用过多解码器资源的问题,但也使得流无法再次查看。如果用户想要滚动到已设置的流,我的应用程序异常崩溃MediaStreamTrack has been disposed.试图启用时MediaStream的VideoTrack。
我希望从视频轨道中删除接收器videoTrack?.removeSink(cameraStreamView)以及release()在我的 TextureView 中调用EglRenderer 上的函数的组合足以清理onViewRecycled().
private fun destroyCameraStream() {
videoTrack?.removeSink(cameraStreamView)
cameraStreamView.release()
}
fun release() {
eglRenderer.release()
}
Run Code Online (Sandbox Code Playgroud)
但是,在向下滚动列表足够远后,我收到错误:
Unable to instantiate codec 'OMX.qcom.video.decoder.avc' with err 0xfffffff4.我认为这是由于我没有完全清理和释放我的编解码器,因为我在旋转它们的过程中没有充分利用资源。
有谁知道是否有某个函数可以调用以正确清理MediaStream资源/用于解码它们的编解码器?有没有关于这种情况的文件?
谢谢!
| 归档时间: |
|
| 查看次数: |
776 次 |
| 最近记录: |