如何测试设备是不是能够播放特定分辨率的视频?

Posted

技术标签:

【中文标题】如何测试设备是不是能够播放特定分辨率的视频?【英文标题】:How to test if a device would be able to play a video of a specific resolution?如何测试设备是否能够播放特定分辨率的视频? 【发布时间】:2017-08-22 21:15:56 【问题描述】:

我有这个应用程序可以为用户提供视频。

视频将以 720p、1080p 和 UHD 等多种分辨率提供。但我不想向用户显示包含他们的设备无法播放的视频的列表,这会让人感到沮丧。

有没有办法测试给定设备是否能够在不下载视频的情况下播放给定分辨率并查看它是否可以播放? ios 上是否有提供可播放格式列表的内容?

【问题讨论】:

【参考方案1】:

您可以使用 UIScreen 来查找屏幕的高度和宽度。

let screenSize = UIScreen.main.bounds
let screenWidth = screenSize.width
let screenHeight = screenSize.height

if screenWidth =< 720.0 
    //play 720 video
 else if screenWidth => 1080.0 
    //play 1080 video
 else if screenWidth => /* Your UHD */ 
    //play UHD video
 else 
    //play default video resolution

这不是实现您所说的最实用的方法,但它应该给您一个想法。希望这对您有用,如果您有任何问题,请随时提出。

【讨论】:

谢谢,但不幸的是,有几台设备可以播放 UHD 并且屏幕要小得多。我的问题是该媒体是否可以在此类设备上播放。 哦,我不确定。你是对的,但要找到设备兼容性有点难,因为设备可能不会提供该信息。

以上是关于如何测试设备是不是能够播放特定分辨率的视频?的主要内容,如果未能解决你的问题,请参考以下文章

为啥移动设备上的浏览器可以播放比设备支持的分辨率更高的视频,但显示相同 Web 应用程序的原生应用程序可能会失败?

如何使用具有分辨率切换能力的原生 Android 制作视频播放器,就像我们在 YouTube 中看到的那样?

在 android 上加载和播放超高分辨率视频

如何通过视频画面剪切得到特定分辨率的视频文件

检测视频分辨率变化

手机看视频不是全部能全屏,怎么处理?