some improvements for camera