Hi,
I bought camera OS08A10 8MP HDR Camera
For Khadas VIM3.
On khadas is latest version of Android 9 → VIM3_Pie_V210908.7z
Problem is:
In specification is resolution 3840x2160 at 60 FPS and many others
But on android is offered: for video 1920x1080 and picture 3840x2160
@numbqq → How can i use maximum resolution for video?
I try old camera cam api: android.hardware.camera ,
camera 2: android.hardware.camera2
event native camera2 by c++ and JNI
All with same result →
offered max supported resolution 1920x1080,
when i set to 3840x2160 camera provider crash.
I try all resolutions whitch are in docs:
3840x2160, 2560x1440, 1920x1080, 1280x720 works only 1920x1080
@banak you can trace driver code
vendor/amlogic/common/arm_isp/driver/linux/kernel/subdev/sensor/src/driver/sensor/OV08a10_drv.c
sensor_set_mode function can set resolution
one way:
you can modify the resolution directly. (the MIPI adapt module supports image crop.)
(you can ref this screenshot, and you need to make sure the mode is selected. )
Note: If you want to get the lowest resolution, I suggest modifying the I2C setting of the sensor.
(let it output the lowest resolution - modify vts or hts ???)
another way:
you can use v4l2 API to cut down the image. (ioctl - VIDIOC_CROPCAP).
ISP also supports image crop
(you can check the v4l2_test sample code.)
For example. (The screenshot - you can get the i2c setting from the OV08a10_seq.h)
After comparing 1920x1080@30fps SDR with 3840x2160@30fps SDR, you can find the differences, and find the diff registers from the OV08a10 datasheet.
In most cases, you only need to change the window size and exposure parameters of the Sensor, it should be able to work. (Except for some special Timing problems)
0x3501 ~ 0x3502: long exposure - cut down this value by resolution ???
…