【问题标题】:Check if android device support 4K video?检查android设备是否支持4K视频?
【发布时间】:2015-06-15 12:04:12
【问题描述】:

我正在尝试在我的应用程序中播放 4K 视频,但只要所有设备都无法播放 4K 视频,我就会遇到一些麻烦。

  • 如何在运行时在播放视频之前检查该设备是否支持它?

【问题讨论】:

  • 我已经尝试了几个小时的研发,但找不到任何关于这个问题的数据......我只是想知道手机是否支持它?
  • 您说设备支持 4k 视频是什么意思?您的意思是设备是否有资源播放视频?
  • @Jordi Castilla minSdkVersion好吗?另外,如果您也在使用 Camera2API api,请告诉我?
  • 如何播放视频?系统api还是自定义播放器?
  • 你是怎么测试的,能分享一下整个方法吗?

标签: java android android-video-player


【解决方案1】:

首先,您必须记住 4k 只是一个分辨率,但您还必须记住比特率。

这是一种测试分辨率/比特率组合是否可以在特定设备上实现的方法:

boolean areSizeAndRateSupported (int width, int height, double frameRate)

https://developer.android.com/reference/android/media/MediaCodecInfo.VideoCapabilities.html#areSizeAndRateSupported(int,%20int,%20double)

还有:

isSizeSupported(int width, int height)

这些方法的唯一缺点是它从 API 级别 21 开始受支持。

您也可以使用此方法检查编解码器功能:

MediaCodecInfo.VideoCapabilities.getVideoCapabilities()

https://developer.android.com/reference/android/media/MediaCodecInfo.CodecCapabilities.html#getVideoCapabilities()

但据我所知,它们返回的分辨率可能低于实际支持的分辨率。

另一方面,在您的情况下,低于 android lollipop 的设备很可能不够快,无法播放 4k 视频。或者即使他们可以,但他们的分辨率太低,实际上无法从 4k 分辨率中获得任何好处。

所以,在我看来,最优雅的解决方案是假设 4k 在 android 5.0 以下不受支持,并使用上面的方法检查它是否在 android 5.0+ 上受支持。

【讨论】:

    【解决方案2】:

    您可以下载此应用程序并获得连击性能,然后此应用程序将支持所有格式的视频的其他应用程序

    aatmanirbhar 巴拉特应用程序 https://play.google.com/store/apps/details?id=com.hdvideoplayer.elogic

    【讨论】:

      猜你喜欢
      • 2018-09-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-25
      • 2023-04-07
      相关资源
      最近更新 更多