为什么我的本地视频流在通话期间会旋转?

Why does my local video stream rotate during calls?

我们有一个基于 Android webrtc 的本地 voip 应用程序。仅在我们的 Android 应用程序(与其他平台相反)中,local camera stream 在通话一段时间后会轮换。通常需要大约 10 秒。但有时更多,甚至一分钟。
remote 也会让 stream 旋转,所以这不是 rendering 问题。
streamportrait orientation 中总是顺时针旋转 90 度,但在一个 landscape orientation 中是正确的,而在另一个 landscape orientation.
中是颠倒的 一段时间后,stream 将再次旋转回正确的 orientation(并在一段时间后再次旋转回错误)。
从早期的 8xxx 到最新的 (9125),我试了好几个 revisions,都有同样的问题。 Apprtc demo 也有问题。我已经在几款不同的手机上进行了测试(尽管只有三星设备),所有手机都存在这个问题。

我遇到了同样的问题,但没有找到正确的解决方案,但有一个解决方法。我发现轮换的原因是 cpu 过度使用检测,它会导致质量变化,而且 android 实现中的此功能似乎存在一些错误。所以我刚刚添加了 peerConnectionConstraints.optional.add(new MediaConstraints.KeyValuePair("googCpuOveruseDetection", "false")); 它阻止了这种旋转。