안드로이드에 갓 입문한 초보 개발자 입니다.
camerapreview를 가지고 실시간으로 영상을 핸들링해서 영상을
뿌려주는 것을 하는 중입니다.
매프레임마다 비트맵 생성만 하면 비트맵의 RGB를 가지고 처리를 할 수 있을 듯 한데,,,
비트맵 얻는 것도 못하고 있는 풋내기 입니다.
아래 코드에서 비트맵을 얻을 때 yuv데이터를 가지고 비트맵을 생성하는 코드부분을
알고 싶습니다.
너무 기초가 부족해서 어디서 도움을 요청할 때가 없네요.
짧은 조언이라도 감사히 받겠습니다.
camera = Camera.open();
try{
camera.setPreviewDisplay(sHolder);
camera.setPreviewCallback(cameraPreivewCB); // 콜백함수 등록
}
catch (IOException e) {
camera.release();
camera = null;
}
public class CameraPreviewCallBack implements PreviewCallback
{
public void onPreviewFrame(byte[] data, Camera camera){
try{
bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
if (bitmap == null) {
Log.d("CameraPreviewCallback", "bitmap is null");
return;
}
bitmap = Bitmap.createBitmap(bitmap, 0, 0, CameraImage.WIDTH, CameraImage.HEIGHT);
}
catch(Exception e){
Log.d("", "Bitmap error:"+e);
}
}
}