Java 摄影机方向和预览大小

Java 摄影机方向和预览大小,java,android,camera,orientation,surfaceview,Java,Android,Camera,Orientation,Surfaceview,我只是需要一些关于相机预览的澄清 在Android开发者文档中,他们在setPreviewSize()的描述中有以下内容: 假设相机同时支持480x320和320x480预览尺寸。应用程序希望预览比例为3:2。如果显示方向设置为0或180,则预览大小应设置为480x320。如果显示方向设置为90或270,则预览大小应设置为320x480。设置图片大小和缩略图大小时,还应考虑显示方向 因此,在我的代码中,我能够将相机方向旋转为直线,这很好。因此,将我的方向改变90度可以使我的相机笔直 现在我想要

我只是需要一些关于相机预览的澄清

在Android开发者文档中,他们在
setPreviewSize()
的描述中有以下内容:

假设相机同时支持480x320和320x480预览尺寸。应用程序希望预览比例为3:2。如果显示方向设置为0或180,则预览大小应设置为480x320。如果显示方向设置为90或270,则预览大小应设置为320x480。设置图片大小和缩略图大小时,还应考虑显示方向

因此,在我的代码中,我能够将相机方向旋转为直线,这很好。因此,将我的方向改变90度可以使我的相机笔直

现在我想要一张4:3的图像,我支持的预览尺寸之一是
1440x1080
,根据上面的块引号,这意味着我需要将预览尺寸更改为:

p.setPreviewSize(1080,1440);
但很明显,这不是我的设备支持的解决方案,因此应用程序将崩溃

以下是我支持的预览大小,如果我没有支持的预览,而我没有上述场景(块引号文本),我该怎么办


我需要我的图像是4:3,根据我的研究,你只能使用支持的预览尺寸:和。也许您最好的办法是获得一个类似的支持预览大小(根据您所需的比例),并测试它是如何得到的。

根据我的研究,您只能使用支持的预览大小:和。也许您最好的办法是获得一个类似的支持预览大小(根据您所需的比例),并进行测试以了解其效果。

在您的问题中包含崩溃日志在您的问题中包含崩溃日志刚刚要发布我的崩溃日志,我在想-所以我得到一个int值,它保持旋转角度,如果是90或270,那么用3:4代替?因为旋转之后是4:3?我还没有查看我支持的预览大小,看看我是否有3:4的想法是的,这似乎是一种方法-根据方向将值设置为3:4或4:3。如果支持的预览大小中没有3:4或4:3,请选择最接近的预览大小并进行测试。如果没有支持的预览大小,您知道如何将最接近的预览大小设置为4:3/3:4吗?我想您可以通过该方法获得支持的大小,或者在此处进行检查,显然,这是所有支持大小的编译,只需查看并使用适合您需要的,我不能保证它会工作或它已更新,但请尝试:。你可以得到方法的大小并打印出来,这样你就可以看到所有支持的方法,然后选择一个适合你的方法。我刚要发布我的崩溃日志,我在想-所以我得到一个int值,它保持旋转角度,如果是90或270,那么使用3:4代替?因为旋转之后是4:3?我还没有查看我支持的预览大小,看看我是否有3:4的想法是的,这似乎是一种方法-根据方向将值设置为3:4或4:3。如果支持的预览大小中没有3:4或4:3,请选择最接近的预览大小并进行测试。如果没有支持的预览大小,您知道如何将最接近的预览大小设置为4:3/3:4吗?我想您可以通过该方法获得支持的大小,或者在此处进行检查,显然,这是所有支持大小的编译,只需查看并使用适合您需要的,我不能保证它会工作或它已更新,但请尝试:。您可以获取方法大小并打印它们,这样您就可以查看所有支持的方法,只需选择一种适合您的方法。
iterator D/CAMERA: width: 1920 height 1080 -----
iterator D/CAMERA: width: 1440 height 1080 -----
iterator D/CAMERA: width: 1088 height 1088 -----
iterator D/CAMERA: width: 1280 height 720 -----
iterator D/CAMERA: width: 1056 height 704 -----
iterator D/CAMERA: width: 1024 height 768 -----
iterator D/CAMERA: width: 960 height 720 -----
iterator D/CAMERA: width: 800 height 450 -----
iterator D/CAMERA: width: 720 height 720 -----
iterator D/CAMERA: width: 720 height 480 -----
iterator D/CAMERA: width: 640 height 480 -----
iterator D/CAMERA: width: 352 height 288 -----
iterator D/CAMERA: width: 320 height 240 -----
iterator D/CAMERA: width: 256 height 144 -----
iterator D/CAMERA: width: 176 height 144 -----