I\'ve found some odd behavior around Camera.Parameters.setRecordingHint that I\'d like to understand better.
If I set it to true
, the size of the previe
You need to set video-size
parameter to the correct value. I had the same problem - preview size was 640x480
and the preview appeared stretched while using setRecordingHint(true)
. I then used getParameters().flatten()
to print out all parameters set for my Camera
device. My video-size
parameter was actually set to 1920x1080
causing the incorrect aspect ratio. You can change this parameter using params.set("video-size", "WxH")
. Only then is the aspect ratio correct.
i've seen a lot of random behavior around this and it unfortunately depends on the oem as well. i see a difference in framerate as well on some phones, like nexus 4 preview framerate drops in half. we depend on the preview frame callback to come at our desired framerate so we have to switch it on phone model unfortunately.