gpt4 book ai didi

java - 检查 android 设备是否支持 4K 视频?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:35:51 26 4
gpt4 key购买 nike

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

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

最佳答案

首先,您必须记住 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+ 上受支持。

关于java - 检查 android 设备是否支持 4K 视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30844734/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com