Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
检测Android中使用多个MediaCodec作为视频编码器的能力_Android_Video_Multiple Instances_Android Mediacodec_Encoder - Fatal编程技术网

检测Android中使用多个MediaCodec作为视频编码器的能力

检测Android中使用多个MediaCodec作为视频编码器的能力,android,video,multiple-instances,android-mediacodec,encoder,Android,Video,Multiple Instances,Android Mediacodec,Encoder,请参阅,应用程序是否可以使用多个MediaCodec实例作为视频编码器取决于设备。是否有推荐的方法来检测设备上的此功能 例如,如果有Android API来查询对多个视频编码器的支持或其最大计数,或者在编码过程之前创建/初始化MediaCodec实例时可以检查这一点?我想在我的应用程序中检测设备功能,而不需要对坏视频进行编码,甚至不需要崩溃。从Android 4.4开始,没有这样的API 我知道的唯一方法是尝试设置编码器,看看它是否失败。“screenrecord”命令做了类似的事情:它尝试以全

请参阅,应用程序是否可以使用多个MediaCodec实例作为视频编码器取决于设备。是否有推荐的方法来检测设备上的此功能


例如,如果有Android API来查询对多个视频编码器的支持或其最大计数,或者在编码过程之前创建/初始化MediaCodec实例时可以检查这一点?我想在我的应用程序中检测设备功能,而不需要对坏视频进行编码,甚至不需要崩溃。

从Android 4.4开始,没有这样的API


我知道的唯一方法是尝试设置编码器,看看它是否失败。“screenrecord”命令做了类似的事情:它尝试以全显示分辨率对视频进行编码。如果失败,它将返回到720p并重试。

基本上,它有适用于android 6.0+的API(棉花糖版本),您可以在这里查看更多详细信息

对于Android 4.4,不,它没有这样的API供开发人员检查该设备支持多少媒体编解码器实例(但请记住,即使您发现该设备可以创建10个媒体编解码器实例,也不意味着您可以打开那么多)

你可以在这里查看我的代码快照