Неподдерживаемая ошибка кодирования в каталоге XMP
Я хотел бы использовать экстрактор метаданных для чтения данных GPano XMP из 360 фотографий. Я использую фотографии из Ricoh Theta S в качестве тестового изображения и получаю сообщение об ошибке в XmpDirectory.
"Ошибка обработки данных XMP: неподдерживаемая кодировка"
Мой код очень простой,
var dirs = ImageMetadataReader.ReadMetadata(filePath);
var xmpDir = dirs.OfType<XmpDirectory>().FirstOrDefault();
if (xmpDir?.XmpMeta != null)
{
foreach (var property in xmpDir.XmpMeta.Properties)
Console.WriteLine($"Path={property.Path} Namespace={property.Namespace} Value={property.Value}");
}
Но XmpMeta всегда нулевой. Если я использую взгляд отладчика внутри XmpDirectory, ошибка about находится в _errorsList.
Я знаю, что у изображения есть данные XMP, к которым я хочу получить доступ. Если я открою байты изображения в блокноте ++, я смогу найти данные в незашифрованном виде.
<x:xmpmeta xmlns:x="adobe:ns:meta/" xmptk="RICOH THETA S Ver1.62">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="" xmlns:GPano="http://ns.google.com/photos/1.0/panorama/">
<GPano:ProjectionType>equirectangular</GPano:ProjectionType>
<GPano:UsePanoramaViewer>True</GPano:UsePanoramaViewer>
<GPano:CroppedAreaImageWidthPixels>5376</GPano:CroppedAreaImageWidthPixels>
<GPano:CroppedAreaImageHeightPixels>2688</GPano:CroppedAreaImageHeightPixels>
<GPano:FullPanoWidthPixels>5376</GPano:FullPanoWidthPixels>
<GPano:FullPanoHeightPixels>2688</GPano:FullPanoHeightPixels>
<GPano:CroppedAreaLeftPixels>0</GPano:CroppedAreaLeftPixels>
<GPano:CroppedAreaTopPixels>0</GPano:CroppedAreaTopPixels>
<GPano:PoseHeadingDegrees>157.5</GPano:PoseHeadingDegrees>
<GPano:PosePitchDegrees>3.9</GPano:PosePitchDegrees>
<GPano:PoseRollDegrees>-11.5</GPano:PoseRollDegrees>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
Я использую Metadata-Extractor 2.0.0 от nuget.