public void onPreviewFrame(byte[] data, Camera camera){
Log.d("PreviewCallback",data.length +"" );
try {
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
YuvImage image = new YuvImage(data, parameters.getPreviewFormat(),
size.width, size.height, null);
File file = new File(Environment.getExternalStorageDirectory()
.getPath() + "/out.jpg");
FileOutputStream filecon = new FileOutputStream(file);
image.compressToJpeg(
new Rect(0, 0, image.getWidth(), image.getHeight()), 90,
filecon);
} catch (FileNotFoundException e) {
// Toast toast = Toast.makeText(getBaseline(), e.getMessage(), 1000);
//toast.show();
}
//이부분에 실시간으로 영상을 처리할 코드를 넣어주시면 됩니다.
}
});
음... onPreviewFrame을 이용해서 이미지를 외부저장소에 저장하는 코드인데
이름만 조금 바꾸면 여러장이 찍힐거같다 일단은 한장만 저장된다
그런데 서페이스뷰에서 onPreviewFrame이 얼마나 호출되는지 잘 모르겠다
'Programing > Android' 카테고리의 다른 글
android intro 페이지 설정 (0) | 2014.06.13 |
---|---|
surfaceview 실시간 사진 저장2 (0) | 2014.04.09 |
surfaceview 동영상 실시간 전송 (0) | 2014.04.09 |
surfaceview (0) | 2014.04.08 |
android 버튼 클릭 (0) | 2014.03.31 |