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上以编程方式录制高速视频(60-120fps)_Android_Video_Camera_Slowmotion - Fatal编程技术网

如何在android上以编程方式录制高速视频(60-120fps)

如何在android上以编程方式录制高速视频(60-120fps),android,video,camera,slowmotion,Android,Video,Camera,Slowmotion,我有一段代码,可以使用android摄像头使用MediaRecorder和camera api 1以高质量录制视频 摄像头代码基于以下内容: 录像可能与此类似: 我可以从文档中看到高速视频的配置文件,但是。。。称之为: CamcorderProfile profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH_SPEED_LOW); 抛出一个异常,表示: “E/MediaProfiles:给定的摄像机配置文件camera 0 q

我有一段代码,可以使用android摄像头使用MediaRecorder和camera api 1以高质量录制视频

摄像头代码基于以下内容:

录像可能与此类似:

我可以从文档中看到高速视频的配置文件,但是。。。称之为:

 CamcorderProfile profile = CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH_SPEED_LOW);
抛出一个异常,表示:

“E/MediaProfiles:给定的摄像机配置文件camera 0 quality 2000为 找不到“

电话:

 mMediaRecorder.setVideoFrameRate(100);
运行,但输出视频不是100fps

并致电:

 mMediaRecorder.setVideoFrameRate(CamcorderProfile.QUALITY_HIGH_SPEED_LOW);
引发异常:

MediaRecorder:设置视频帧率失败:-22


我可以使用内置的摄像头应用程序录制“慢动作视频”,该视频将以120fps的速度生成mp4,因此我非常确定该设备可以录制高速视频,但似乎缺少一些内容。

首先使用查看您的摄像头设备支持的fps范围

我还在智能手机内置的摄像头应用程序上做了一个测试,该应用程序支持慢动作,并且确实可以以高帧速率(120fps)进行录制。但是从
getSupportedPreviewFpsRange
的结果来看,帧速率不超过30fps

我认为供应商最初没有提供高帧速率录制的接口,尽管内置的摄像头应用程序显示了其硬件功能。我猜这是因为如果使用不当,可能会导致意外的结果,例如硬件损坏

录制高速视频的硬件要求高于录制传统视频的硬件要求。内置摄像头应用程序可能会对慢动作视频使用不同的录制策略。例如,它可能使用较低的分辨率和不同的光响应。因此,不公开以编程方式录制高速视频的权限


然而,有一种黑客解决方案利用了新的camera2 API。你需要根,它可能不稳定

你在用什么设备?什么API?您是否计划只使用该设备?S6和api 1(我们可以移动到2)。现在我们只打算使用这个设备你好,谢谢你的回答,你知道安卓摄像头应用程序(第三方)已经以每秒120帧的速度拍摄了吗?谢谢