FAQ:

1. Could you add camera slow-shutter times greater than 2 seconds?

Answer:

2. Why did you use OxygenOS camera libraries? They don't have 4K camcorder support!

Answer:

3. Why did you underclock the CPU to 1958MHz?

Answer:

No, I cannot. The reason why exposure times are capped at 2 seconds is due to the proprietary camera libraries from OxygenOS. Only OnePlus can modify the proprietary camera libraries, so there is no way for me, a regular consumer, to implement exposure times greater than 2 seconds.My custom camera HAL enables 4K camcorder support with Oxygen's camera libraries, so this isn't an issue. Cyanogen's camera libraries have had some issues with the camcorder since day 1. The big issue that I have been able to reproduce on all OnePlus One devices I've come across is graphical artifacts in recorded videos (look towards the right @25 seconds): https://youtu.be/LyIbb5wIyfY?t=22s OxygenOS' camera libraries do not have this issue, and thanks to my modifications, we now have 4K camcorder support with the OxygenOS libraries, so not much is lost by using them. The OxygenOS libraries can also take pictures faster/better than Cyanogen's libraries.At 1958MHz, the amount of heat generated by the CPU is quite a bit less than at 2457MHz, so the CPU is throttled less often (leading to better user experience), and battery life is better as well. The performance difference between 1958MHz and 2457MHz is also not really noticeable unless you use a benchmark application. If you want to remove the CPU underclock then flash the zip from the first post that disables the underclock. You must flash this zip every time you install a new ROM update.