bob*_*bob 5 android preview android-camera
我正在使用DroidX开发一个使用相机预览图像的应用程序.我正在使用的代码可以在网上的许多地方找到,但是我注意到常见的方法"getBestPreviewSize(width,height,camera.parameters)"返回的标识很小,以至于标准的decodeYUV420SP方法因空指针异常而失败.
一些调试显示我的DroidX的supportedPreviewSizes是:
请注意,高度和宽度的值给出了横向透视图.这不会随着相机方向而改变.传递到的表面的宽度和高度getBestSupportedPreviewSizes是480w×778h.
当我通过camera.parameters getBestSupportedPreviewSizes()它返回288 x 352大小.这是调用代码 - 如果格式关闭,我道歉但是这里是:
if (!cameraConfigured) {
Camera.Parameters parameters=camera.getParameters();
Camera.Size size=getBestPreviewSize(pwidth, pheight, parameters);
if (size!=null) {
parameters.setPreviewSize(size.width, size.height);
camera.setParameters(parameters);
cameraConfigured=true;
}
}
Run Code Online (Sandbox Code Playgroud)
pwidth并且pheight来自surfaceChanged回调的宽度和高度参数.我试过camera.setDisplayOrientation(90); 在onResume()中.我还将方向("肖像")放在清单中 - 这些尝试的4种组合中没有一种似乎改变了这种行为.
我的想法是简单地扭转它们,但在很多层面上都感觉不对.由于这个免费提供的代码似乎已经在许多其他示例中证明了自己,我显然接近它是错误的.谁能为这种行为提供一些见解?
提前致谢.
考虑相机的正确方法是在横向模式下,这意味着当您在纵向模式下考虑它时,宽度和高度会感觉“翻转”。
该函数只是函数的getBestPreviewSize( w, h, p )包装,因此传入的宽度和高度不会改变 bestPreviewSize 函数的结果。getSupportedPreviewSizes()Camera.Parameters
| 归档时间: |
|
| 查看次数: |
3115 次 |
| 最近记录: |