Android webrtc硬件编解码的坑

1. 分辨率对齐要求

(1)由于h264的编码块大小一般是16x16,在设置视频的宽高的时候,如果设置了一个没有对齐16的大小,例如960x540,在某些cpu上,最终编码出来的视频就会直接花屏

(2)开启cpu过载检测会自动调节分辨率,如果没有设置16位对齐,调整后的分辨率也会出现花屏

 

避坑方法:

1. webrtc动态调整分辨率的时候生成的分辨率默认是2位对齐的,如果设备是16位对齐的话需要修改Androidvideotracksource.cc下的对齐定义为16,如:const int kRequiredResolutionAlignment = 16;

转载于:https://my.oschina.net/xgcode/blog/3004982

你可能感兴趣的:(Android webrtc硬件编解码的坑)