{
byte[] bytes = getByteArray(PanasonicMakernoteDirectory.TAG_FACE_RECOGNITION_INFO);
if (bytes == null)
return null;
BufferReader reader = new ByteArrayReader(bytes);
reader.setMotorolaByteOrder(false);
try {
int faceCount = reader.getUInt16(0);
if (faceCount==0)
return null;
Face[] faces = new Face[faceCount];
for (int i = 0; i < faceCount; i++) {
int offset = 4 + i * 44;
String name = reader.getString(offset, 20, "ASCII").trim();
String age = reader.getString(offset + 28, 20, "ASCII").trim();
faces[i] = new Face(
reader.getUInt16(offset + 20),
reader.getUInt16(offset + 22),
reader.getUInt16(offset + 24),
reader.getUInt16(offset + 26),
name,
Age.fromPanasonicString(age));
}
return faces;
} catch (BufferBoundsException e) {