我开发了一个实时原始H.264流接收器兼播放器。我使用Android的MediaCodec API实现了它。视频渲染到从TextureView获得的Surface。
该程序可以成功接收和播放视频,但是,我观察到色彩渐变区域中视频播放的严重色带。
更多观察结果:
我还尝试添加抖动来解决这个问题,但不知何故,它的代码似乎不起作用。在主活动的onCreate()回调函数中添加了以下代码。
...
decorView.getBackground().setDither(true);
getWindow().setFormat(PixelFormat.RGBA_8888);
...
渲染视频的TextureView也使用Fragment加载。
我迷失了可能是什么问题。问题出现了,因为我使用了输出Surface渲染方法吗?是因为我使用Fragment加载TextureView?或者我的解码器实现有问题吗?还是别的什么?
有人,请帮忙。提前谢谢。