我想製作一個應用程序,該應用程序每0.1秒拍攝一張照片,因此我製作了一張AsyncTask
,我定期執行該應用程序。問題在於,預覽變得非常不連貫,因爲在拍攝每張照片後它會停止一段時間。這是一張我的本錢:如何讓Android相機預覽更輕鬆?
public class Photo extends AsyncTask<Void, String, Boolean> {
@Override
protected Boolean doInBackground(Void... params) {
try {
takePhoto();
} catch (Exception e) {
onError();
}
return true;
}
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected void onPostExecute(Boolean result) {
super.onPostExecute(result);
}
}
public void takePhoto() {
PictureCallback mPicture = new PictureCallback() {
public void onPictureTaken(byte[] data, Camera camera) {
mCamera.startPreview();
mPreview.bringToFront();
}
};
mCamera.takePicture(null,null, mPicture);
}
此的AsyncTask拍攝照片exactlz如預期,但預覽是沒有用的,因爲它是非常不穩定。我也嘗試在ShutterCallback
開始預覽,但它只會導致appcrash。
我不確定你實際上可以做些什麼。這很可能與硬件有關。你有沒有想過捕捉視頻,並與個別框架巧妙地做一些事情?您需要強制視頻去隔行。只是一個想法。 – marcantonio 2013-04-30 14:11:45