MediaRecorder
我需要一些关于 Android 课程的帮助。
我尝试使用getSupportedVideoSizes
来获取支持的视频大小列表,但它总是返回 null。
在测试中,以下设备null
在getSupportedVideoSizes
被查询时返回:
- Galaxy Nexus (Android 4.2)
- HTC One Mini (Android 4.4.2)
- HTCEVOV4G (Android 4.0.3)
MediaRecorder
我需要一些关于 Android 课程的帮助。
我尝试使用getSupportedVideoSizes
来获取支持的视频大小列表,但它总是返回 null。
在测试中,以下设备null
在getSupportedVideoSizes
被查询时返回:
其文档Camera.getSupportedVideoSizes()
内容为,
如果相机有单独的预览和视频输出,则返回
Size 对象的列表;否则,返回 null。
不完全清楚。但是,这意味着如果Camera.getSupportedVideoSizes()
返回null,那么相机支持的预览尺寸和视频尺寸是一样的;在这种情况下,要获取支持的视频大小列表,请使用Camera.getSupportedPreviewSizes()
.
示例代码:
public List<Size> getSupportedVideoSizes(Camera camera) {
if (camera.getParameters().getSupportedVideoSizes() != null) {
return camera.getParameters().getSupportedVideoSizes();
} else {
// Video sizes may be null, which indicates that all the supported
// preview sizes are supported for video recording.
return camera.getParameters().getSupportedPreviewSizes();
}
}
或者只是使用
mediarecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
自动设置最佳分辨率。