Odd custom exposure duration value

Currently, I am working on custom camera application and I need to allow users change camera settings as exposure(bias), shutter speed(exposure duration), and iso.


There is difference between exposure duration that I set via

func setExposureModeCustom(duration: CMTime) -> Void)? = nil)

and value that I get via KVO or cameraDevice.exposure duration


for example

1/24 - 1/24

1/48 - 1/48

...

1/768 - 1/768

1/1536 - 1/536

1/3072 - 1/3205

1/6144 - 1/6410

1/12288 - 1/12821

1/49152 - 1/76923


the left column value that I try to set

the right value that actually was set


Camera FPS is 24

This issue was reproduced on iPhone 6, 6s, 7s


Can anyone explain what I do wrong or this is avfoundation issue?

Odd custom exposure duration value
 
 
Q