在同屏过程中,偶尔会出现队列已满的错误...
coderlfy opened this issue · 3 comments
07-11 12:11:25.336 15194-19178/net.yrom.screenrecorder W/System.err: java.lang.IllegalStateException: Deque full
07-11 12:11:25.337 15194-19178/net.yrom.screenrecorder W/System.err: at java.util.concurrent.LinkedBlockingDeque.addLast(LinkedBlockingDeque.java:335)
at java.util.concurrent.LinkedBlockingDeque.add(LinkedBlockingDeque.java:633)
at com.wd.screenrecorderlib.task.RtmpStreamingSender.sendFood(RtmpStreamingSender.java:140)
at net.yrom.screenrecorder.ui.activity.ScreenRecordActivity$2.collect(ScreenRecordActivity.java:111)
07-11 12:11:25.338 15194-19178/net.yrom.screenrecorder W/System.err: at com.wd.screenrecorderlib.task.ScreenRecorder.sendRealData(ScreenRecorder.java:233)
at com.wd.screenrecorderlib.task.ScreenRecorder.recordVirtualDisplay(ScreenRecorder.java:154)
at com.wd.screenrecorderlib.task.ScreenRecorder.run(ScreenRecorder.java:101)
队列满的话,可以尝试着选择性的丢帧试试,因为这个 Demo 我的目的主要是为了演示,丢帧策略并没有实现在其中,因为每个使用者的需求不一样,这里可以根据自己的需求设计丢帧策略
你尝试将 RtmpStreamingSender.java 这个类的 MAX_QUEUE_CAPACITY改为 60 试试。或者 51 都行。