Android getSupportedVideoSizes始终返回null

cat*_*HHH 7 android mediarecorder android-mediarecorder

MediaRecorder在Android上需要一些帮助.

我尝试使用getSupportedVideoSizes获取支持的视频大小列表,但它始终返回null.

在测试中,以下设备nullgetSupportedVideoSizes查询时返回:

  • Galaxy Nexus(Android 4.2)
  • HTC One Mini(Android 4.4.2)
  • HTCEVOV4G(Android 4.0.3)

Sha*_*ung 36

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();
    }
}
Run Code Online (Sandbox Code Playgroud)

  • Android文档中的描述是彻头彻尾的荒谬! (4认同)