我正在尝试使用 MediaCodec 解码器在同一 SurfaceView 上连续播放多个 H264 流,而在切换期间没有任何黑流。
它适用于 95% 的设备,因为 KEY_PUSH_BLANK_BUFFERS_ON_STOP 设置为 0,因此调用 MediaCodec.release() 时没有黑框,请参阅 https://developer.android.com/reference/android/media/MediaFormat#KEY_PUSH_BLANK_BUFFERS_ON_STOP
问题是在 Broadcom 机顶盒(解码器名称 OMX.broadcom.video_decoder)上,此参数不起作用,每次调用 MediaCodec.release() 时总是出现黑框。您是否有解决方法来避免这种情况,还是我们必须永远接受它?
任何帮助,将不胜感激!