카메라 어플을 하나 만지작 거리고 있습니다.
setPreviewCallbackWithBuffer 를 사용 하여 cpu 점유율(?)을 낮추고 싶은데...
API 17/16 에서는 제대로 동작 하지 않습니다.
setPreviewCallbackWithBuffer(new Camera.PreviewCallback(){
// this.camera.setPreviewCallback(new Camera.PreviewCallback() {
public void onPreviewFrame(byte[] data, Camera camera) {
onPreviewFrame 에서 프린트가 아예찍히지 않고, Preview 화면도 Black 입니다.
하지만 주석 처리한 // this.camera.setPreviewCallback(new Camera.PreviewCallback()
사용시에는 프리뷰도 나오고 정상적으로 동작합니다.
1. setPreviewCallbackWithBuffer 와 setPreviewCallback의 정확한 차이는 무엇인지 참고 문서가 있나요?
2. setPreviewCallbackWithBuffer 은 API 버전 상위 버전에서는 동작을 안하나요?
3. setPreviewCallbackWithBuffer/addCallbackBuffer(data) 을 짝을 이루어 사용 하는데 .. onframebuffer 가
진입 자체가 되지 않아 사용이 안되는건지.. 아니면 위치를 잘못 한것인가요?
참고로 addCallbackBuffer(data) 은
public void onPreviewFrame(byte[] data, Camera camera) {
안에서 수행 합니다.
고수님들의 답변 부탁 드립니다.