Как захватить непрерывное изображение в Android

Я пытаюсь разработать приложение для Android, которое должно снимать непрерывные изображения, как родная камера, в режиме непрерывной съемки в течение 10–20 секунд.

Я следовал образцу программы с сайта

http://marakana.com/forums/android/examples/39.html

Теперь я хочу улучшить этот код, чтобы делать непрерывные изображения (от 10 до 20 секунд). Сначала я попытался сделать 10 снимков с помощью цикла for, я просто поместил функцию takePicture() в цикл, но это не работает.

мне нужно использовать threadS . ЕСЛИ ДА, ТО какую часть я должен указать в теме, захват изображения или сохранение изображения на SD-карту

Если у кого-то есть образец кода для получения непрерывных изображений, пожалуйста, поделитесь им.


person user921463    schedule 31.08.2011    source источник
comment
возможный дубликат снятия нескольких фотографий   -  person Alex Cohn    schedule 14.06.2014


Ответы (2)


Просто поместите счетчик в функцию jpegCallBack, которая уменьшается и снова вызывает ваш takePicture() до тех пор, пока не будет достигнуто желаемое количество изображений.

int pictureCounter = 10;

PictureCallback jpegCallback = new PictureCallback() {

    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
            // save your picture
        if(--pictureCounter>=0) {
            takePicture();
        } else {
            pictureCounter = 10; // reset the counter
        }
    }
person Mark    schedule 27.09.2011

Я знаю, что уже очень поздно отвечать, но я только что наткнулся на этот вопрос и подумал, что он будет полезен для будущих посетителей.

PictureCallback jpegCallback = new PictureCallback() {
    public void onPictureTaken(byte[] data, Camera camera) {
     //Save Picture here

       preview.camera.stopPreview();

       // if condition 
             preview.camera.startPreview();
       // end if condition
  }
};
person Johny Smith    schedule 24.07.2013