안녕하세요.
이번에 이미지 출력을 해 보다가
카메라 영상 출력은 SurfaceView가 적당하다고 해서
뷰를 생성, Canvas에 이미지를 출력해보고 있는데요.
550 * 357 사이즈의 이미지를 출력했을 때에는 30프레임정도 나오는것으로 확인했는데
1024 * 768 사이즈의 이미지를 출력 했을 때에는 15프레임정도밖에 나오지 않네요.
물론 사이즈에 따라서 출력이 더딜 수 도 있다고 생각하는데..
다른 방법이나, 더 빠르게 출력할 수 있는 뷰나..
이 프레임 속도를 증가시킬 수 있는 방법이 없을 까 합니다.
도움 부탁드립니다. 감사합니다.
public void run()
{
while( m_bThread )
{
Canvas canvas = null; //canvas를 만든다
canvas = m_SurfaceHolder.lockCanvas(); //canvas를 잠그고 내부 버퍼에 그린다.
try
{
canvas.drawColor(Color.BLACK);
Bitmap orgImage = BitmapFactory.decodeFile("/mnt/sdcard/1212/a.jpg");
canvas.drawBitmap(orgImage, 0, 0, null);
try
{
Thread.sleep(1);
}
catch( InterruptedException e )
{
e.printStackTrace();
}
}
}
finally
{
m_SurfaceHolder.unlockCanvasAndPost(canvas); //버퍼에 그러진 것을 View에 옮긴다.
}
}




Bitmap은 한번만 가져오시고, 슬립만 빼도 빨라지실겁니다 ~