Merge pull request #957 from alicevision/dev/metadata

More generic metadata support
This commit is contained in:
Fabien Castan 2020-06-22 12:29:07 +02:00 committed by GitHub
commit 78c613a25a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 23 additions and 11 deletions

View file

@ -18,13 +18,22 @@ ImageBadge {
readonly property string distortionModel: intrinsic ? childAttributeValue(intrinsic, "type", "") : ""
property var metadata: ({})
function findMetadata(key) {
var keyLower = key.toLowerCase()
for(var mKey in metadata)
{
if(mKey.toLowerCase().endsWith(keyLower))
return metadata[mKey]
}
return ""
}
// access useful metadata
readonly property var make: metadata["Make"]
readonly property var model: metadata["Model"]
readonly property var focalLength: metadata["Exif:FocalLength"]
readonly property var focalLength35: metadata["Exif:FocalLengthIn35mmFilm"]
readonly property var bodySerialNumber: metadata["Exif:BodySerialNumber"]
readonly property var lensSerialNumber: metadata["Exif:LensSerialNumber"]
readonly property var make: findMetadata("Make")
readonly property var model: findMetadata("Model")
readonly property var focalLength: findMetadata("FocalLength")
readonly property var focalLength35: findMetadata("FocalLengthIn35mmFilm")
readonly property var bodySerialNumber: findMetadata("BodySerialNumber")
readonly property var lensSerialNumber: findMetadata("LensSerialNumber")
readonly property var sensorWidth: metadata["AliceVision:SensorWidth"]
readonly property var sensorWidthEstimation: metadata["AliceVision:SensorWidthEstimation"]

View file

@ -77,13 +77,16 @@ FloatingPane {
for(var key in metadata)
{
var entry = {}
entry["raw"] = key
// split on ":" to get group and key
var sKey = key.split(":", 2)
if(sKey.length === 2)
var i = key.lastIndexOf(":")
if(i == -1)
{
entry["group"] = sKey[0]
entry["key"] = sKey[1]
i = key.lastIndexOf("/")
}
if(i != -1)
{
entry["group"] = key.substr(0, i)
entry["key"] = key.substr(i+1)
}
else
{