次のコード スニピットで、「Caused by: java.lang.RuntimeException: Buffer not large for Pixels」エラーが発生します。
String pathName = "/sdcard/test.bmp";
Bitmap bm1 = BitmapFactory.decodeFile(pathName);
ShortBuffer buffer = ShortBuffer.allocate(bm1.getWidth()*bm1.getHeight());
bm1.copyPixelsToBuffer(buffer);
ビットマップの幅と高さに応じて割り当てられるため、バッファーは十分に大きいと思いました。問題の原因は何ですか?