I've read many posts in here to take burst shots for e.g. from here , here and I am taking burst snaps with the maximum size of my camera about 1 in every second.
The problem is; I am unable to find out the best solution to take burst shots. I know ppl can take 15 to 30 fps as mentioned in many apps on Google Play. But what are the strategies they are using? For api 19-20 coz i heard they have burst feature in new api 21 but i don't wanna look at that currently. I just want to know best burst shot practices.
Currently, I am not using any asyncTask, nor handler or looper class. I am just using a picture callback and put my loop inside like this snippet.
PictureCallback jpegCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] bytes, Camera camera) {
onPictureJpeg(bytes, camera);
try{
_selectedCamera.startPreview();
stillCount++;
if(stillCount < 50 ){
_selectedCamera.takePicture(shutterCallback, rawCallback, jpegCallback);
picCount.setText("PICTURES: " + stillCount);
picCount.setTextColor(Color.WHITE);
}else {
stillCount = 0;
Thread.sleep(2000);
picCount.setText(" ");
}
} catch(Exception e){
Log.d(LOG_TAG, "Error Starting Preview: " + e.getMessage());
}
}
};
Let me know what other ways are possible and which one is good.
P.S. I am seeking to assign GPS coordinates to every snapshot i am taking coordinates using requestLocationUpdates, LocationListener and I have a kinda complex program running which runs the GPS all the time of taking snapshots, and keeps adding the coordinates using the ExifInterface. Also let me know what are good practices to assign gps coordinates to a picture, I can see results but I know they are not fine tuned, I can show more details, if anyone willing to answer. Thanks.