Revert "revert camera revamp"

This reverts commit 793f8cfce84c328056b077aee8187d8acb70f5a7.