use API to get storage directory
remove/add comments
well, depends on the input size of onPreviewCallback
handle surface change to set camera parameters