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

 

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

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

 

Bug主要原因:

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

 

Bug具体原因:

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

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

 

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

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

 

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

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

 

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

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

 

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

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

Android IOS WebRTC 音视频开发总结(十八)-- 手机适配

 

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

相关文章:

  • 2021-08-26
  • 2022-12-23
  • 2021-11-01
  • 2021-06-21
  • 2021-10-05
  • 2021-06-07
  • 2022-03-09
  • 2022-12-23
猜你喜欢
  • 2022-01-07
  • 2021-06-16
  • 2022-12-23
  • 2021-06-21
  • 2021-10-31
  • 2021-11-27
  • 2021-09-20
相关资源
相似解决方案