我在
Camera.Parameters.setRecordingHint左右发现了一些奇怪的行为,我想更好地理解.
如果我将其设置为true,预览图像的大小可以与我传递给setPreviewSize的大小不同.这取决于我设置的大小 – 某些宽高比有效,有些则不然.
请参阅下面的屏幕截图 – setPreviewSize已设置为640×480,但其中一个将setRecordingHint设置为true,另一个设置为false.我有生成此效果的代码on GitHub.
这是预期的行为吗? setRecordingHint的文档没有表明这样的内容.
解决方法
您需要将video-size参数设置为正确的值.我有同样的问题 – 预览大小为640×480,使用setRecordingHint(true)时预览显示拉伸.然后我使用getParameters().flatten()打印出为我的Camera设备设置的所有参数.我的视频大小参数实际设置为1920×1080,导致宽高比不正确.您可以使用params.set(“video-size”,“WxH”)更改此参数.只有这样才能使宽高比正确.