java - Android视频查看黑屏
问题描述
我用视频设置视频视图。我有三个测试设备。我用第一个可以正常播放视频。但是我使用了另外两个无法播放视频的设备,只是显示黑屏。
我尝试使用可以在所有设备上播放的另一个视频。视频问题或其他问题也是如此。
我刚刚添加了 `OnInfoListener` 并记录了 what 变量。值为 10951,即“MEDIA_INFO_UNSUPPORTED_VIDEO”。所以有谁知道。MEDIA_INFO_UNSUPPORTED_VIDEO 的含义是什么。
更新:
我找到了无法播放的原因。因为并非所有安卓设备都支持视频编解码器。我的视频使用的是 H.264。但三星和诺基亚无法支持。所以任何人都知道哪些编解码器可以在所有设备上支持,或者任何方式可以让我正常播放视频。
设备的更多细节:
无法播放视频:三星 Galaxy A20s os 10,诺基亚 C2 os 9
可以播放视频:Redmi Note 4 os 6.0.1
解决方案
MEDIA_INFO_UNSUPPORTED_VIDEO 在视频分辨率超过芯片组支持的编解码器的最大分辨率时显示。
对于 H.264,
- A20s 中的芯片组是高通骁龙 450,支持到 1080p。
- Redmi Note 4 中的芯片组是高通骁龙 625,支持到 4k。
- 诺基亚 C2 中的芯片组是Unisoc 28nm,支持到 1080p。
提到的问题是由于编解码器限制而发生的,与所使用的操作系统版本和播放器无关。
推荐阅读
- assembly - 如何定义可在 C 中使用的 ARM 汇编函数
- css - 在 Ionic 4 中更改 css
- linux - 在 bash_profile 中自定义 git 命令以自动索引到下一个分支
- java - 主题:使用回溯(而不仅仅是递归 DFS)背后的直觉
- forms - 使用 URL/查询字符串预填充输入表单值需要什么工作?
- apache-kafka - IoT - 多个 Kafka 生产者将消息发布到同一主题
- javascript - 当我使用 jquery 试图从另一个页面检索一些文本时,为什么我得到 [object Object]
- java - 使用 mongoClient 在 mongoDb 中插入日期
- android - 使用带有名称和密码的指纹身份验证登录
- openseadragon - 如何创建可缩放的文本