【问题标题】:Emulator shows black screen during a video call模拟器在视频通话期间显示黑屏
【发布时间】:2020-11-06 17:54:37
【问题描述】:

我正在测试一个简单的 webrtc 应用程序,为此我使用浏览器进行视频通话。我已经设置了一个运行 Android R (10.0+) 的模拟器,它模拟具有 4 GB 内存和 6 GB 硬盘空间的 Pixel 3。我使用模拟器和桌面之间的应用程序拨打了电话,在两个设备上都使用了 chrome,我在两个屏幕上都看到了参与者视频的黑屏。我使用了参数document.getElementsByTagName('video').readyStatedocument.getElementsByTagName('video').networkState,我得到的readystate 值为0 或没有数据,而networkState 的值为2 或正在加载。我用不同的模拟器(带有 Android Q 的 Pixel)尝试了相同的设置并检查了相同的参数,我没有遇到任何问题。我能够看到两位参与者的视频。谁能帮帮我?

【问题讨论】:

    标签: android android-studio android-emulator simplewebrtc webrtc-android


    【解决方案1】:

    编辑:其实我只是想通了。如果您进入并从https://chromium.googlesource.com/external/webrtc/+/HEAD/sdk/android/src/java/org/webrtc/MediaCodecUtils.java#33 中删除“OMX.google”并制作一个自定义构建的 webtc,它应该允许在 API 28 及以下模拟器中播放。我正在努力尽快获得 29 岁及以上的版本。

    Android 模拟器将显示带有 h264 视频的空白屏幕,因为默认情况下 Android 的 webrtc 不启用 h264 硬件编码/解码。您将需要使用物理设备或构建 webrtc 以使用 h264 软件编码/解码。 AFAIK this 是做到这一点的最佳指南。您需要从中文翻译它。请记住,这种怪癖还会导致视频在没有适当硬件(通常是 Qualcomm 或 Exynos 芯片组)的设备上显示为空白

    【讨论】:

    猜你喜欢
    • 2013-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-06
    • 2013-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多