info: improved xmp
This commit is contained in:
parent
cc95416efc
commit
d2a6e31a1a
3 changed files with 15 additions and 0 deletions
|
@ -23,6 +23,7 @@ class Namespaces {
|
||||||
static const exif = 'http://ns.adobe.com/exif/1.0/';
|
static const exif = 'http://ns.adobe.com/exif/1.0/';
|
||||||
static const exifAux = 'http://ns.adobe.com/exif/1.0/aux/';
|
static const exifAux = 'http://ns.adobe.com/exif/1.0/aux/';
|
||||||
static const exifEx = 'http://cipa.jp/exif/1.0/';
|
static const exifEx = 'http://cipa.jp/exif/1.0/';
|
||||||
|
static const fstop = 'http://www.fstopapp.com/xmp/';
|
||||||
static const gAudio = 'http://ns.google.com/photos/1.0/audio/';
|
static const gAudio = 'http://ns.google.com/photos/1.0/audio/';
|
||||||
static const gCamera = 'http://ns.google.com/photos/1.0/camera/';
|
static const gCamera = 'http://ns.google.com/photos/1.0/camera/';
|
||||||
static const gContainer = 'http://ns.google.com/photos/1.0/container/';
|
static const gContainer = 'http://ns.google.com/photos/1.0/container/';
|
||||||
|
@ -77,6 +78,7 @@ class Namespaces {
|
||||||
static const xmpNote = 'http://ns.adobe.com/xmp/note/';
|
static const xmpNote = 'http://ns.adobe.com/xmp/note/';
|
||||||
static const xmpRights = 'http://ns.adobe.com/xap/1.0/rights/';
|
static const xmpRights = 'http://ns.adobe.com/xap/1.0/rights/';
|
||||||
static const xmpTPg = 'http://ns.adobe.com/xap/1.0/t/pg/';
|
static const xmpTPg = 'http://ns.adobe.com/xap/1.0/t/pg/';
|
||||||
|
static const xperiaCamera = 'http://xmlns.sony.net/xperia/camera/1.0/';
|
||||||
|
|
||||||
// cf https://exiftool.org/TagNames/XMP.html
|
// cf https://exiftool.org/TagNames/XMP.html
|
||||||
static const Map<String, String> nsTitles = {
|
static const Map<String, String> nsTitles = {
|
||||||
|
@ -97,6 +99,7 @@ class Namespaces {
|
||||||
dwc: 'Darwin Core',
|
dwc: 'Darwin Core',
|
||||||
exif: 'Exif',
|
exif: 'Exif',
|
||||||
exifEx: 'Exif Ex',
|
exifEx: 'Exif Ex',
|
||||||
|
fstop: 'F-Stop',
|
||||||
gAudio: 'Google Audio',
|
gAudio: 'Google Audio',
|
||||||
gCamera: 'Google Camera',
|
gCamera: 'Google Camera',
|
||||||
gContainer: 'Google Container',
|
gContainer: 'Google Container',
|
||||||
|
@ -138,6 +141,7 @@ class Namespaces {
|
||||||
xmpNote: 'Note',
|
xmpNote: 'Note',
|
||||||
xmpRights: 'Rights Management',
|
xmpRights: 'Rights Management',
|
||||||
xmpTPg: 'Paged-Text',
|
xmpTPg: 'Paged-Text',
|
||||||
|
xperiaCamera: 'Xperia Camera',
|
||||||
};
|
};
|
||||||
|
|
||||||
static final defaultPrefixes = {
|
static final defaultPrefixes = {
|
||||||
|
|
|
@ -78,6 +78,8 @@ class XmpNamespace extends Equatable {
|
||||||
return XmpBasicNamespace(schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
return XmpBasicNamespace(schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
||||||
case Namespaces.xmpMM:
|
case Namespaces.xmpMM:
|
||||||
return XmpMMNamespace(schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
return XmpMMNamespace(schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
||||||
|
case Namespaces.xperiaCamera:
|
||||||
|
return XmpXperiaCameraNamespace(schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
||||||
default:
|
default:
|
||||||
return XmpNamespace(nsUri: nsUri, schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
return XmpNamespace(nsUri: nsUri, schemaRegistryPrefixes: schemaRegistryPrefixes, rawProps: rawProps);
|
||||||
}
|
}
|
||||||
|
|
|
@ -102,3 +102,12 @@ class XmpMMNamespace extends XmpNamespace {
|
||||||
),
|
),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class XmpXperiaCameraNamespace extends XmpNamespace {
|
||||||
|
XmpXperiaCameraNamespace({required super.schemaRegistryPrefixes, required super.rawProps}) : super(nsUri: Namespaces.xperiaCamera);
|
||||||
|
|
||||||
|
@override
|
||||||
|
late final List<XmpCardData> cards = [
|
||||||
|
XmpCardData(RegExp(nsPrefix + r'Face\[(\d+)\]/(.*)')),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue