camera - better return struct