gpt4 book ai didi

c# - Xamarin 设置相机分辨率

转载 作者:太空宇宙 更新时间:2023-11-03 13:45:39 27 4
gpt4 key购买 nike

我在 Xamarin Visual Studio 中做了一个自定义相机应用程序,它拍摄的照片分辨率很低,所以我添加了这段代码。

public void OnSurfaceTextureAvailable(Android.Graphics.SurfaceTexture surface, int w, int h)
{
_camera = Android.Hardware.Camera.Open();
Android.Hardware.Camera.Parameters param = _camera.GetParameters();
IList<Android.Hardware.Camera.Size> supportedSizes = param.SupportedPictureSizes;
Android.Hardware.Camera.Size sizePicture = supportedSizes[0];
param.SetPictureSize(sizePicture.Height, sizePicture.Width);
_camera.SetParameters(param);

var previewSize = _camera.GetParameters().PreviewSize;
_textureView.LayoutParameters =
new FrameLayout.LayoutParams(h, w, GravityFlags.Center);
try
{
_camera.SetPreviewTexture(surface);
_camera.StartPreview();
}
catch (Java.IO.IOException ex)
{
Console.WriteLine(ex.Message);
}
_textureView.Rotation = 90.0f;
}

在第一行中,我得到了相机参数,然后我得到了支持的图片尺寸,然后我选择了第一个 ([0]),最后我设置了图片尺寸,

Android.Hardware.Camera.Parameters param = _camera.GetParameters();
IList<Android.Hardware.Camera.Size> supportedSizes = param.SupportedPictureSizes;
Android.Hardware.Camera.Size sizePicture = supportedSizes[0];
param.SetPictureSize(sizePicture.Height, sizePicture.Width);
_camera.SetParameters(param);

但是当我运行代码时,这条消息出现了:

Unhandled Exception:

Java.Lang.RuntimeException: setParameters failed

这里有什么问题吗?我无法设置函数返回的任何受支持的大小?我如何选择其中任何一个,例如第一个?还有其他我必须考虑的事情吗?

最佳答案

您调换了 widthheight 参数,从而提供了无效(不受支持)的图片尺寸。

param.SetPictureSize(sizePicture.Width, sizePicture.Height);

void setPictureSize (int width, int height)

回复:https://developer.android.com/reference/android/hardware/Camera.Parameters.html

关于c# - Xamarin 设置相机分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42942477/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com