请参阅this question,取决于设备,APP是否可以将多个MediaCodec实例用作视频编码器。是否有推荐的方法来检测设备上的功能?
例如,如果有一个Android API来查询多个视频编码器的支持或其最大计数,或者在编码过程之前创建/初始化MediaCodec实例时可以检查这个问题?我想在我的APP中检测设备功能,而无需编码坏视频甚至崩溃。
答案 0 :(得分:1)
从Android 4.4开始,没有这样的API。
我知道这样做的唯一方法是尝试设置编码器并查看它是否失败。 "屏幕记录"命令执行类似的操作:它尝试以完整的显示分辨率对视频进行编码。如果失败,它会回落到720p并再次尝试。
答案 1 :(得分:1)
基本上,它有Android 6.0+(MarshMallow版本)的API,你可以在这里查看更多细节getMaxSupportedInstances
对于Android 4.4,不,它没有这样的API供开发人员检查此设备支持多少媒体编解码器实例(但请记住,即使您发现该设备可以创建10个媒体编解码器实例,但它没有&#39 ; t意味着你可以打开那么多)。
您可以在此处查看我的代码。 Check Media Code Instances