2013-05-21 13 views
7

Pracuję nad projektem przy użyciu OPENCV. Mam pewien proces na onCameraFrame. Chociaż pokazuje podglądy, użytkownik może zrobić zdjęcie. Ale w niektórych urządzeniach przyjmuję błąd po wywołaniu metody takePicture (...). Co powinienem zrobić?Android Camera takePicture używa Previews małego bufora

E/Camera-JNI(11783): Manually set buffer was too small! Expected 539380 bytes, but got 460800! 

nowy objaw: wielkość tego bufora jest mój rozmiar ramki, 460800. Zalogowałem rozmiar ramki w onCameraFrame. Każda z ramek ma rozmiar 460800. O ile mi wiadomo, takePicture próbuje użyć bufora podglądu. A ich rozmiary są różne.

Odpowiedz

1

Rozwiązałem mój problem. Ustawiłem rozmiar bufora na Rozmiar obrazu. Ale podgląd zaczął się absurdalnie, jak na niektórych urządzeniach nie kontynuuje podglądu po takepicture, ... Z tego powodu, po naciśnięciu przycisku powrotu lub powrotu, zamykam i ponownie uruchamiam podgląd.

1

Rozwiązałem tego rodzaju problem. Wydaje się, że na Android 2.2.1 to trzeba ustawić parametry aparatu Zanim zadzwonisz

camera.startPreview() 

jednak na nowszych systemach, takich jak Android 3.2.1 nie jest to już problem (choć może to być sprzedawca specyficzne).

+0

Już ustawiam parametry kamery .. :(Jeśli ustawię połowę ramki obrazu, to działa, ale nie jest to właściwa droga. – atasoyh

Powiązane problemy