Android IOS WebRTC 音视频开发总结(十八)

本文主要介绍上次碰到的某些机器上看不到视频的问题,文章来自博客园RTC.Blacker,转载请说明出处。

 

之前做的视频聊天App一直运行良好,前几天客户反馈说在三星9100. Android4.0.3上看不到自己的图像。

一翻查找后才发现是WebRTC底层的BUG,现已修复并反馈给社区了,下面主要分析BUG原因及解决方案。

 

Bug主要原因:

设置摄像头参数时使用了不支持的参数,导致Camera.setParameters出错,导致后面的内存分配出错,视频流读取出错,最终导致看不到视频。

 

Bug具体原因:

通过parameters.getSupportedPreviewSizes()读取摄像头PreviewSizes

技术分享

 

但却将该参数赋值给PictureSize. 但是Camera不一定支持该PictureSize

技术分享

 

所以执行Camera.setParameters()就悲剧了

技术分享

 

下面我是测试过程中打印出来的日志,看到这里你就很容易明白了。

技术分享

 

解决方案上面注释已经写得很清楚了,下面是更保险的解决方案:

技术分享

技术分享

 

你懂的,WEBRTC里面坑很多,路漫漫。。。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。