我正试图添加提交到全景图像处理器的谷歌视图所需的XMP数据,但谷歌不接受我的图像作为Photosphere。XMP数据在我的JPEG中与谷歌转换器生成的数据完全相同。
我在EXIF标签中看到的唯一区别是GPSAltitudeRef:Above Sea Level,它出现在谷歌转换器生成的版本中,但在我正在做的版本中没有。
我试着添加了它,但我使用的库中似乎有一个错误:https://code.google.com/p/sanselanandroid/issues/detail?id=4(我得到了同样的错误)
TiffOutputField altitudeRefField = TiffOutputField.create(TiffConstants.GPS_TAG_GPS_ALTITUDE_REF, outputSet.byteOrder, GPSTagConstants.GPS_TAG_GPS_ALTITUDE_REF_VALUE_ABOVE_SEA_LEVEL);
TiffOutputDirectory exifDir = outputSet.findDirectory(TiffDirectoryConstants.DIRECTORY_TYPE_EXIF);
exifDir.add( altitudeRefField );
给我同样的错误:
Tag does not expect a single value.[Ljava.lang.StackTraceElement;@55f923bd
感谢
GPSAltitudeRef不是问题所在。还有其他的。
我用得到了这些数据
TagInfo tag = new TagInfo(
"GPSAltitudeRef",
0x0005,
TiffConstants.FIELD_TYPE_DESCRIPTION_BYTE,
1,
TiffConstants.EXIF_DIRECTORY_GPS);
Byte b = new Byte( (byte) TiffConstants.GPS_TAG_GPS_ALTITUDE_REF_VALUE_ABOVE_SEA_LEVEL );
TiffOutputField altitude = TiffOutputField.create(tag, outputSet.byteOrder, b);
TiffOutputDirectory exifDirectory = outputSet.getOrCreateExifDirectory();
exifDirectory.add( altitude );