Hi,
After tagging and commenting my photos and trying to share them with others (windows users), I found out that digikam did not actually save my comments to the files, neither to the jpg nor to xmp. I crosschecked by using exiftool and even deleting the database-file: digikam was able to restore the tags, but not the comments. All options in "Write this information to the Metadata" are set, I also checked the digikamrc (see below). I am using digikam 2.9 on a SUSE 12.2 running KDE 4.9.2. Apart from the problem above, what is your opinion on how to organize photos on multiple platforms? Kind regards Markus Contents of digikamrc: ... [Metadata Settings] EXIF Rotate=true EXIF Set Orientation=true Metadata Writing Mode=2 Rotate By Internal Flag=true Rotate By Metadata Flag=true Rotate Contents Lossless=true Rotate Contents Lossy=false Save Color Label=true Save Date Time=true Save EXIF Comments=true Save Pick Label=true Save Rating=true Save Tags=true Save Template=true Update File Timestamp=false Use XMP Sidecar For Reading=true Write RAW Files=false ... _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hi,
what do you mean by "comments"? In the right side view, selecting "Caption/Tags", I can see "Title" and "Captions". I enter unique texts in these input fields and click apply. Then I look at the jpg file with okteta (hex viewer). I can find - the caption seven times - the title two times For example in the XMP-Part of the file: - caption can be found at: /x:xmpmeta/rdf:RDF/rdf:Description/dc:description/... - title can be found at: /x:xmpmeta/rdf:RDF/rdf:Description/dc:title/... Do your jpg files contain XMP-Data? Have a look at them with some hex editor and look for something starting with: "<x:xmpmeta". My setup: - Gentoo Linux - KDE 4.8.5 - DigiKam 2.9.0 Regards, Peter On 10.10.2012 20:48, Markus Ebert wrote: > Hi, > > After tagging and commenting my photos and trying to share > them with others (windows users), I found out that digikam > did not actually save my comments to the files, neither to > the jpg nor to xmp. > I crosschecked by using exiftool and even deleting the > database-file: digikam was able to restore the tags, but not > the comments. > All options in "Write this information to the Metadata" are > set, I also checked the digikamrc (see below). > > I am using digikam 2.9 on a SUSE 12.2 running KDE 4.9.2. > > Apart from the problem above, what is your opinion on how to > organize photos on multiple platforms? > > > Kind regards > Markus > > > Contents of digikamrc: > ... > [Metadata Settings] > EXIF Rotate=true > EXIF Set Orientation=true > Metadata Writing Mode=2 > Rotate By Internal Flag=true > Rotate By Metadata Flag=true > Rotate Contents Lossless=true > Rotate Contents Lossy=false > Save Color Label=true > Save Date Time=true > Save EXIF Comments=true > Save Pick Label=true > Save Rating=true > Save Tags=true > Save Template=true > Update File Timestamp=false > Use XMP Sidecar For Reading=true > Write RAW Files=false > ... > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hi,
sorry I use the German translation and thought comment would be the right translation, in fact I mean the captions. The title is indeed saved to the jpg, but the caption is not (I now also used okteta; there is also an xmp-section) The same is true for the xmp-files - title saved, caption not. Indeed there is not even a dc:description section. I suspect that something is wrong with a tool digikam relies on (e.g. exiftool did not work out box as it turned out dependencies were wrong), so is there a possibility to turn on a debug mode such that I can see what happens when digikam tries to write the metadata? Or maybe a logfile? (Starting in console doesn't reveal anything) Regards, Markus Am 10.10.2012 21:42, schrieb Peter Albrecht: > Hi, > > what do you mean by "comments"? > In the right side view, selecting "Caption/Tags", I can see > "Title" and "Captions". > > I enter unique texts in these input fields and click apply. > Then I look at the jpg file with okteta (hex viewer). > > I can find > - the caption seven times > - the title two times > > For example in the XMP-Part of the file: > > - caption can be found at: > /x:xmpmeta/rdf:RDF/rdf:Description/dc:description/... > > - title can be found at: > /x:xmpmeta/rdf:RDF/rdf:Description/dc:title/... > > > Do your jpg files contain XMP-Data? Have a look at them with > some hex editor and look for something starting with: > "<x:xmpmeta". > > > My setup: > - Gentoo Linux > - KDE 4.8.5 > - DigiKam 2.9.0 > > Regards, > Peter > > On 10.10.2012 20:48, Markus Ebert wrote: >> Hi, >> >> After tagging and commenting my photos and trying to share >> them with others (windows users), I found out that digikam >> did not actually save my comments to the files, neither to >> the jpg nor to xmp. >> I crosschecked by using exiftool and even deleting the >> database-file: digikam was able to restore the tags, but not >> the comments. >> All options in "Write this information to the Metadata" are >> set, I also checked the digikamrc (see below). >> >> I am using digikam 2.9 on a SUSE 12.2 running KDE 4.9.2. >> >> Apart from the problem above, what is your opinion on how to >> organize photos on multiple platforms? >> >> >> Kind regards >> Markus >> >> >> Contents of digikamrc: >> ... >> [Metadata Settings] >> EXIF Rotate=true >> EXIF Set Orientation=true >> Metadata Writing Mode=2 >> Rotate By Internal Flag=true >> Rotate By Metadata Flag=true >> Rotate Contents Lossless=true >> Rotate Contents Lossy=false >> Save Color Label=true >> Save Date Time=true >> Save EXIF Comments=true >> Save Pick Label=true >> Save Rating=true >> Save Tags=true >> Save Template=true >> Update File Timestamp=false >> Use XMP Sidecar For Reading=true >> Write RAW Files=false >> ... >> _______________________________________________ >> Digikam-users mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-users >> > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
On 10.10.2012 22:05, Markus Ebert wrote:
> I suspect that something is wrong with a tool digikam relies > on (e.g. exiftool did not work out box as it turned out > dependencies were wrong), In DigiKam, go to "Help" -> "Components Information" and post the output on the mailing list. Mine looks like: -------------------------- 8< ------------------------------ > digiKam version 2.9.0 > Exiv2 can write to Jp2: Yes > Exiv2 can write to Jpeg: Yes > Exiv2 can write to Pgf: Yes > Exiv2 can write to Png: Yes > Exiv2 can write to Tiff: Yes > Exiv2 supports XMP metadata: Yes > LibCImg: 130 > LibClapack: external shared library > LibExiv2: 0.21.1 > LibJPEG: 80 > LibJasper: 1.900.1 > LibKDE: 4.8.5 (4.8.5) > LibKExiv2: 2.1.0 > LibKGeoMap: 2.0.0 > LibKdcraw: 2.0.1 > LibLCMS: 119 > LibLensFun: external shared library > LibLqr: internal library > LibPGF: 6.12.27 - external shared library > LibPNG: 1.5.10 > LibQt: 4.8.2 > LibRaw: 0.14.4 > LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. > Marble Widget: 0.13.4 (stable release) > Parallelized PGF codec: No > Parallelized demosaicing: Yes > Database backend: QSQLITE > LibGphoto2: 2.4.12 > LibKface: 2.0.0 > LibKipi: 1.3.0 > LibOpenCV: 2.3.1 > Libface: 0.2 Maybe this helps identifying an old library. > ... so is there a possibility to turn > on a debug mode such that I can see what happens when > digikam tries to write the metadata? Or maybe a logfile? > (Starting in console doesn't reveal anything) To enable debug output: Start the programm "kdebugdialog", search for "digikam" and select all checkboxes. Click "OK" and start digikam from your terminal. Applying title ("mytitle") and caption ("mycaption"), I get the following debug output: -------------------------- 8< ------------------------------ > digikam(3572)/digikam (core) Digikam::DMetadata::setImageTitles: "/home/user/pictures/Pow-img_1418.jpg" ==> Title: QMap(("x-default", CaptionValues::caption: "mytitle", CaptionValues::author: "", CaptionValues::date: QDateTime("") ) ) > digikam(3572)/digikam (core) Digikam::DMetadata::setImageComments: "/home/user/pictures/Pow-img_1418.jpg" ==> Comment: QMap(("x-default", CaptionValues::caption: "mycaption", CaptionValues::author: "", CaptionValues::date: QDateTime("Do. Okt 11 09:50:17 2012") ) ) > digikam(3572)/digikam (core) Digikam::DMetadata::setImageRating: Rating value to write is out of range! > digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File Extension: "jpg" is supported for writing mode > digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" > digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" > digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" > digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" > digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" > digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file ' Pow-img_1418.jpg ' written to file. Regards, Peter _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hi,
thanks for your help, I made at least a littele progress. Firstly, the output of "Components Information": -------------------------------- digiKam version 2.9.0 Exiv2 can write to Jp2: Yes Exiv2 can write to Jpeg: Yes Exiv2 can write to Pgf: Yes Exiv2 can write to Png: Yes Exiv2 can write to Tiff: Yes Exiv2 supports XMP metadata: Yes LibCImg: 130 LibClapack: internal library LibExiv2: 0.23 LibJPEG: 62 LibJasper: 1.900.1 LibKDE: 4.9.2 "release 511" LibKExiv2: 2.3.0 LibKGeoMap: 2.0.0 LibKdcraw: 2.1.0 LibLCMS: 119 LibLensFun: external shared library LibLqr: internal library LibPGF: 6.12.27 - internal library LibPNG: 1.4.11 LibQt: 4.8.3 LibRaw: 0.14.6 LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. Marble Widget: 0.14.1 (stable release) Parallelized PGF codec: No Parallelized demosaicing: Yes Database backend: QSQLITE LibGphoto2: 2.4.14 LibKface: 2.0.0 LibKipi: 1.6.0 LibOpenCV: 2.4.2 Libface: 0.2 -------------------------------- It seems to contain everything. In the mean time, I figured out that saving comments with language "x-default" works, but using "lang=de-DE" does not. When saving the title, the language does not matter. Here's the debugging output for both cases: 1) Using "lang=x-default" (working) -------------- digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", CaptionValues::caption: "mytitle", CaptionValues::author: "", CaptionValues::date: QDateTime("") ) ) digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("x-default", CaptionValues::caption: "mycaption", CaptionValues::author: "", CaptionValues::date: QDateTime("Thu Oct 11 12:24:26 2012") ) ) -------------- 2) Using "lang=de-DE" (not working) -------------- digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", CaptionValues::caption: "mytitle", CaptionValues::author: "", CaptionValues::date: QDateTime("") ) ) digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("de-DE", CaptionValues::caption: "mycaption", CaptionValues::author: "", CaptionValues::date: QDateTime("Thu Oct 11 12:23:48 2012") ) ) ----------------- At least now I know how to do a workaround by using only x-default. However it would be great to get de-DE to work since I don't want to switch the language of ~3000 captions by hand. Regards, Markus Am 11.10.2012 09:55, schrieb Peter Albrecht: > On 10.10.2012 22:05, Markus Ebert wrote: >> I suspect that something is wrong with a tool digikam relies >> on (e.g. exiftool did not work out box as it turned out >> dependencies were wrong), > In DigiKam, go to "Help" -> "Components Information" and > post the output on the mailing list. > > Mine looks like: > -------------------------- 8< ------------------------------ >> digiKam version 2.9.0 >> Exiv2 can write to Jp2: Yes >> Exiv2 can write to Jpeg: Yes >> Exiv2 can write to Pgf: Yes >> Exiv2 can write to Png: Yes >> Exiv2 can write to Tiff: Yes >> Exiv2 supports XMP metadata: Yes >> LibCImg: 130 >> LibClapack: external shared library >> LibExiv2: 0.21.1 >> LibJPEG: 80 >> LibJasper: 1.900.1 >> LibKDE: 4.8.5 (4.8.5) >> LibKExiv2: 2.1.0 >> LibKGeoMap: 2.0.0 >> LibKdcraw: 2.0.1 >> LibLCMS: 119 >> LibLensFun: external shared library >> LibLqr: internal library >> LibPGF: 6.12.27 - external shared library >> LibPNG: 1.5.10 >> LibQt: 4.8.2 >> LibRaw: 0.14.4 >> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. >> Marble Widget: 0.13.4 (stable release) >> Parallelized PGF codec: No >> Parallelized demosaicing: Yes >> Database backend: QSQLITE >> LibGphoto2: 2.4.12 >> LibKface: 2.0.0 >> LibKipi: 1.3.0 >> LibOpenCV: 2.3.1 >> Libface: 0.2 > -------------------------- >8 ------------------------------ > > Maybe this helps identifying an old library. > > >> ... so is there a possibility to turn >> on a debug mode such that I can see what happens when >> digikam tries to write the metadata? Or maybe a logfile? >> (Starting in console doesn't reveal anything) > To enable debug output: Start the programm "kdebugdialog", > search for "digikam" and select all checkboxes. Click "OK" > and start digikam from your terminal. > > Applying title ("mytitle") and caption ("mycaption"), I get > the following debug output: > -------------------------- 8< ------------------------------ >> digikam(3572)/digikam (core) Digikam::DMetadata::setImageTitles: "/home/user/pictures/Pow-img_1418.jpg" ==> Title: QMap(("x-default", CaptionValues::caption: "mytitle", CaptionValues::author: "", CaptionValues::date: QDateTime("") ) ) >> digikam(3572)/digikam (core) Digikam::DMetadata::setImageComments: "/home/user/pictures/Pow-img_1418.jpg" ==> Comment: QMap(("x-default", CaptionValues::caption: "mycaption", CaptionValues::author: "", CaptionValues::date: QDateTime("Do. Okt 11 09:50:17 2012") ) ) >> digikam(3572)/digikam (core) Digikam::DMetadata::setImageRating: Rating value to write is out of range! >> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File Extension: "jpg" is supported for writing mode >> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" >> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" >> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" >> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" >> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/home/px79/daten/Bilder (private)/Fotos unsortiert/Incoming" >> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file ' Pow-img_1418.jpg ' written to file. > -------------------------- >8 ------------------------------ > > Regards, > Peter > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
=>> Exiv2 supports XMP metadata: Yes
This can be the problem. I remember a bug where this info is show as "Yes", where it's "No" in fact. Bug is in libkexiv2, already fixed of course. Multi-language Caption is managed through Exiv2 library using XMP metadata... Gilles Caulier 2012/10/11 Markus Ebert <[hidden email]>: > Hi, > > thanks for your help, I made at least a littele progress. > Firstly, the output of "Components Information": > -------------------------------- > > > digiKam version 2.9.0 > > Exiv2 can write to Jp2: Yes > > Exiv2 can write to Jpeg: Yes > > Exiv2 can write to Pgf: Yes > > Exiv2 can write to Png: Yes > > Exiv2 can write to Tiff: Yes > > Exiv2 supports XMP metadata: Yes > > LibCImg: 130 > > LibClapack: internal library > > LibExiv2: 0.23 > > LibJPEG: 62 > > LibJasper: 1.900.1 > > LibKDE: 4.9.2 "release 511" > > LibKExiv2: 2.3.0 > > LibKGeoMap: 2.0.0 > > LibKdcraw: 2.1.0 > > > LibLCMS: 119 > > LibLensFun: external shared library > > LibLqr: internal library > > LibPGF: 6.12.27 - internal library > > LibPNG: 1.4.11 > > LibQt: 4.8.3 > > LibRaw: 0.14.6 > > > LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler > Copyright (c) 1991-1996 Silicon Graphics, Inc. > > Marble Widget: 0.14.1 (stable release) > > > Parallelized PGF codec: No > > Parallelized demosaicing: Yes > > Database backend: QSQLITE > > LibGphoto2: 2.4.14 > > LibKface: 2.0.0 > > LibKipi: 1.6.0 > > LibOpenCV: 2.4.2 > > Libface: 0.2 > > -------------------------------- > > It seems to contain everything. > > > In the mean time, I figured out that saving comments with language > "x-default" works, but using "lang=de-DE" does not. When saving the title, > the language does not matter. > Here's the debugging output for both cases: > > 1) Using "lang=x-default" (working) > -------------- > > digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: > "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", > CaptionValues::caption: "mytitle", CaptionValues::author: "", > CaptionValues::date: QDateTime("") ) ) > > digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: > "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("x-default", > CaptionValues::caption: "mycaption", CaptionValues::author: "", > CaptionValues::date: QDateTime("Thu Oct 11 12:24:26 2012") ) ) > > -------------- > > 2) Using "lang=de-DE" (not working) > -------------- > > digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: > "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", > CaptionValues::caption: "mytitle", CaptionValues::author: "", > CaptionValues::date: QDateTime("") ) ) > digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: > "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("de-DE", > CaptionValues::caption: "mycaption", CaptionValues::author: "", > CaptionValues::date: QDateTime("Thu Oct 11 12:23:48 2012") ) ) > > ----------------- > > At least now I know how to do a workaround by using only x-default. However > it would be great to get de-DE to work since I don't want to switch the > language of ~3000 captions by hand. > > > Regards, > Markus > > > > Am 11.10.2012 09:55, schrieb Peter Albrecht: > >> On 10.10.2012 22:05, Markus Ebert wrote: >>> >>> I suspect that something is wrong with a tool digikam relies >>> on (e.g. exiftool did not work out box as it turned out >>> dependencies were wrong), >> >> In DigiKam, go to "Help" -> "Components Information" and >> post the output on the mailing list. >> >> Mine looks like: >> -------------------------- 8< ------------------------------ >>> >>> digiKam version 2.9.0 >>> Exiv2 can write to Jp2: Yes >>> Exiv2 can write to Jpeg: Yes >>> Exiv2 can write to Pgf: Yes >>> Exiv2 can write to Png: Yes >>> Exiv2 can write to Tiff: Yes >>> Exiv2 supports XMP metadata: Yes >>> LibCImg: 130 >>> LibClapack: external shared library >>> LibExiv2: 0.21.1 >>> LibJPEG: 80 >>> LibJasper: 1.900.1 >>> LibKDE: 4.8.5 (4.8.5) >>> LibKExiv2: 2.1.0 >>> LibKGeoMap: 2.0.0 >>> LibKdcraw: 2.0.1 >>> LibLCMS: 119 >>> LibLensFun: external shared library >>> LibLqr: internal library >>> LibPGF: 6.12.27 - external shared library >>> LibPNG: 1.5.10 >>> LibQt: 4.8.2 >>> LibRaw: 0.14.4 >>> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler >>> Copyright (c) 1991-1996 Silicon Graphics, Inc. >>> Marble Widget: 0.13.4 (stable release) >>> Parallelized PGF codec: No >>> Parallelized demosaicing: Yes >>> Database backend: QSQLITE >>> LibGphoto2: 2.4.12 >>> LibKface: 2.0.0 >>> LibKipi: 1.3.0 >>> LibOpenCV: 2.3.1 >>> Libface: 0.2 >> >> -------------------------- >8 ------------------------------ >> >> Maybe this helps identifying an old library. >> >> >>> ... so is there a possibility to turn >>> on a debug mode such that I can see what happens when >>> digikam tries to write the metadata? Or maybe a logfile? >>> (Starting in console doesn't reveal anything) >> >> To enable debug output: Start the programm "kdebugdialog", >> search for "digikam" and select all checkboxes. Click "OK" >> and start digikam from your terminal. >> >> Applying title ("mytitle") and caption ("mycaption"), I get >> the following debug output: >> -------------------------- 8< ------------------------------ >>> >>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageTitles: >>> "/home/user/pictures/Pow-img_1418.jpg" ==> Title: QMap(("x-default", >>> CaptionValues::caption: "mytitle", CaptionValues::author: "", >>> CaptionValues::date: QDateTime("") ) ) >>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageComments: >>> "/home/user/pictures/Pow-img_1418.jpg" ==> Comment: QMap(("x-default", >>> CaptionValues::caption: "mycaption", CaptionValues::author: "", >>> CaptionValues::date: QDateTime("Do. Okt 11 09:50:17 2012") ) ) >>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageRating: Rating >>> value to write is out of range! >>> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File >>> Extension: "jpg" is supported for writing mode >>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>> (private)/Fotos unsortiert/Incoming" >>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>> (private)/Fotos unsortiert/Incoming" >>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>> (private)/Fotos unsortiert/Incoming" >>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>> (private)/Fotos unsortiert/Incoming" >>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>> (private)/Fotos unsortiert/Incoming" >>> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file ' >>> Pow-img_1418.jpg ' written to file. >> >> -------------------------- >8 ------------------------------ >> >> Regards, >> Peter >> _______________________________________________ >> Digikam-users mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-users >> > > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
I turned on exiv2 debugging, giving me the following output when saving
metadata: ------------------- digikam(18633)/KEXIV2 KExiv2Iface::KExiv2::save: KExiv2::metadataWritingMode 2 digikam(18633)/KEXIV2 KExiv2Iface::KExiv2::save: Will write Metadata to file "01_Philadelphia-1.JPG" digikam(18633)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File Extension: "jpg" is supported for writing mode ... digikam(18633)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file "01_Philadelphia-1.JPG" written to file. digikam(18633)/KEXIV2 KExiv2Iface::KExiv2::save: Will write XMP sidecar for file "01_Philadelphia-1.JPG" ------------------- So KExiv2 itself works, but still only x-default is saved. Is there a way to test by a console command if the language support in exiv2 is somehow broken? Btw, I am using exiv2 version 0.23-6.1 and libkexiv2 version 4.9.2-42.1. Regards, Markus Am 11.10.2012 13:41, schrieb Gilles Caulier: > =>> Exiv2 supports XMP metadata: Yes > > This can be the problem. I remember a bug where this info is show as > "Yes", where it's "No" in fact. > > Bug is in libkexiv2, already fixed of course. > > Multi-language Caption is managed through Exiv2 library using XMP metadata... > > Gilles Caulier > > 2012/10/11 Markus Ebert <[hidden email]>: >> Hi, >> >> thanks for your help, I made at least a littele progress. >> Firstly, the output of "Components Information": >> -------------------------------- >> >> >> digiKam version 2.9.0 >> >> Exiv2 can write to Jp2: Yes >> >> Exiv2 can write to Jpeg: Yes >> >> Exiv2 can write to Pgf: Yes >> >> Exiv2 can write to Png: Yes >> >> Exiv2 can write to Tiff: Yes >> >> Exiv2 supports XMP metadata: Yes >> >> LibCImg: 130 >> >> LibClapack: internal library >> >> LibExiv2: 0.23 >> >> LibJPEG: 62 >> >> LibJasper: 1.900.1 >> >> LibKDE: 4.9.2 "release 511" >> >> LibKExiv2: 2.3.0 >> >> LibKGeoMap: 2.0.0 >> >> LibKdcraw: 2.1.0 >> >> >> LibLCMS: 119 >> >> LibLensFun: external shared library >> >> LibLqr: internal library >> >> LibPGF: 6.12.27 - internal library >> >> LibPNG: 1.4.11 >> >> LibQt: 4.8.3 >> >> LibRaw: 0.14.6 >> >> >> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler >> Copyright (c) 1991-1996 Silicon Graphics, Inc. >> >> Marble Widget: 0.14.1 (stable release) >> >> >> Parallelized PGF codec: No >> >> Parallelized demosaicing: Yes >> >> Database backend: QSQLITE >> >> LibGphoto2: 2.4.14 >> >> LibKface: 2.0.0 >> >> LibKipi: 1.6.0 >> >> LibOpenCV: 2.4.2 >> >> Libface: 0.2 >> >> -------------------------------- >> >> It seems to contain everything. >> >> >> In the mean time, I figured out that saving comments with language >> "x-default" works, but using "lang=de-DE" does not. When saving the title, >> the language does not matter. >> Here's the debugging output for both cases: >> >> 1) Using "lang=x-default" (working) >> -------------- >> >> digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: >> "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", >> CaptionValues::caption: "mytitle", CaptionValues::author: "", >> CaptionValues::date: QDateTime("") ) ) >> >> digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: >> "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("x-default", >> CaptionValues::caption: "mycaption", CaptionValues::author: "", >> CaptionValues::date: QDateTime("Thu Oct 11 12:24:26 2012") ) ) >> >> -------------- >> >> 2) Using "lang=de-DE" (not working) >> -------------- >> >> digikam(3612)/digikam (core) Digikam::DMetadata::setImageTitles: >> "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", >> CaptionValues::caption: "mytitle", CaptionValues::author: "", >> CaptionValues::date: QDateTime("") ) ) >> digikam(3612)/digikam (core) Digikam::DMetadata::setImageComments: >> "/home/user/bilder/DSC_1229.JPG" ==> Comment: QMap(("de-DE", >> CaptionValues::caption: "mycaption", CaptionValues::author: "", >> CaptionValues::date: QDateTime("Thu Oct 11 12:23:48 2012") ) ) >> >> ----------------- >> >> At least now I know how to do a workaround by using only x-default. However >> it would be great to get de-DE to work since I don't want to switch the >> language of ~3000 captions by hand. >> >> >> Regards, >> Markus >> >> >> >> Am 11.10.2012 09:55, schrieb Peter Albrecht: >> >>> On 10.10.2012 22:05, Markus Ebert wrote: >>>> I suspect that something is wrong with a tool digikam relies >>>> on (e.g. exiftool did not work out box as it turned out >>>> dependencies were wrong), >>> In DigiKam, go to "Help" -> "Components Information" and >>> post the output on the mailing list. >>> >>> Mine looks like: >>> -------------------------- 8< ------------------------------ >>>> digiKam version 2.9.0 >>>> Exiv2 can write to Jp2: Yes >>>> Exiv2 can write to Jpeg: Yes >>>> Exiv2 can write to Pgf: Yes >>>> Exiv2 can write to Png: Yes >>>> Exiv2 can write to Tiff: Yes >>>> Exiv2 supports XMP metadata: Yes >>>> LibCImg: 130 >>>> LibClapack: external shared library >>>> LibExiv2: 0.21.1 >>>> LibJPEG: 80 >>>> LibJasper: 1.900.1 >>>> LibKDE: 4.8.5 (4.8.5) >>>> LibKExiv2: 2.1.0 >>>> LibKGeoMap: 2.0.0 >>>> LibKdcraw: 2.0.1 >>>> LibLCMS: 119 >>>> LibLensFun: external shared library >>>> LibLqr: internal library >>>> LibPGF: 6.12.27 - external shared library >>>> LibPNG: 1.5.10 >>>> LibQt: 4.8.2 >>>> LibRaw: 0.14.4 >>>> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 Sam Leffler >>>> Copyright (c) 1991-1996 Silicon Graphics, Inc. >>>> Marble Widget: 0.13.4 (stable release) >>>> Parallelized PGF codec: No >>>> Parallelized demosaicing: Yes >>>> Database backend: QSQLITE >>>> LibGphoto2: 2.4.12 >>>> LibKface: 2.0.0 >>>> LibKipi: 1.3.0 >>>> LibOpenCV: 2.3.1 >>>> Libface: 0.2 >>> -------------------------- >8 ------------------------------ >>> >>> Maybe this helps identifying an old library. >>> >>> >>>> ... so is there a possibility to turn >>>> on a debug mode such that I can see what happens when >>>> digikam tries to write the metadata? Or maybe a logfile? >>>> (Starting in console doesn't reveal anything) >>> To enable debug output: Start the programm "kdebugdialog", >>> search for "digikam" and select all checkboxes. Click "OK" >>> and start digikam from your terminal. >>> >>> Applying title ("mytitle") and caption ("mycaption"), I get >>> the following debug output: >>> -------------------------- 8< ------------------------------ >>>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageTitles: >>>> "/home/user/pictures/Pow-img_1418.jpg" ==> Title: QMap(("x-default", >>>> CaptionValues::caption: "mytitle", CaptionValues::author: "", >>>> CaptionValues::date: QDateTime("") ) ) >>>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageComments: >>>> "/home/user/pictures/Pow-img_1418.jpg" ==> Comment: QMap(("x-default", >>>> CaptionValues::caption: "mycaption", CaptionValues::author: "", >>>> CaptionValues::date: QDateTime("Do. Okt 11 09:50:17 2012") ) ) >>>> digikam(3572)/digikam (core) Digikam::DMetadata::setImageRating: Rating >>>> value to write is out of range! >>>> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File >>>> Extension: "jpg" is supported for writing mode >>>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>>> (private)/Fotos unsortiert/Incoming" >>>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>>> (private)/Fotos unsortiert/Incoming" >>>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>>> (private)/Fotos unsortiert/Incoming" >>>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>>> (private)/Fotos unsortiert/Incoming" >>>> digikam(3572)/digikam (core) Digikam::AlbumWatch::rescanDirectory: >>>> Detected change, triggering rescan of directory "/home/px79/daten/Bilder >>>> (private)/Fotos unsortiert/Incoming" >>>> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file ' >>>> Pow-img_1418.jpg ' written to file. >>> -------------------------- >8 ------------------------------ >>> >>> Regards, >>> Peter >>> _______________________________________________ >>> Digikam-users mailing list >>> [hidden email] >>> https://mail.kde.org/mailman/listinfo/digikam-users >>> >> _______________________________________________ >> Digikam-users mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-users > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
On 11.10.2012 14:15, Markus Ebert wrote:
> Btw, I am using exiv2 version 0.23-6.1 and libkexiv2 version > 4.9.2-42.1. On my system are installed: - libkexiv2 4.8.5 (as of KDE version 4.8.5) - exiv2 0.21.1 >>> 2012/10/11 Markus Ebert <[hidden email]>: >>>> In the mean time, I figured out that saving comments with >>>> language "x-default" works, but using "lang=de-DE" does not. I tried it on my system an saving "de-DE" caption and title worked. So I would guess, it is not "digikam 2.9.0's fault". An interesting point: Setting all kind of caption / title with de-DE / x-default you find different number of occurences in the file: de-caption: 1 (only in XMP data) de-title: 1 (only in XMP data xdefault-title: 2 (one of them in the XMP data) xdefault-caption: 7 (three of them in the XMP data) By "in the XMP data" I mean: Between "<x:xmpmeta" and "</x:xmpmeta>" in the jpg-file. > On 11.10.2012 13:41, Gilles Caulier wrote: >> =>> Exiv2 supports XMP metadata: Yes >> >> This can be the problem. I remember a bug where this info is show as >> "Yes", where it's "No" in fact. >> >> Bug is in libkexiv2, already fixed of course. So if your libkexiv2 or exiv2 has a bug and does not write XMP data. The x-default caption has good chance to be written elsewhere in the jpg-file, e.g. in the EXIF data. (See the numbers above). This might be, why you find x-default captions in your jpg and no x-default title or de-DE data. Solution: You could try to find newer versions of libkexiv2 (which might include, to update whole KDE) or exiv2. Or you downgrade KDE and/or exiv2 to the versions I use, see version numbers above. These work. ;) Or you just wait a few weeks, until new versions are officially released. Regards, Peter >> >> Multi-language Caption is managed through Exiv2 library >> using XMP metadata... >> >> Gilles Caulier >> >> 2012/10/11 Markus Ebert <[hidden email]>: >>> Hi, >>> >>> thanks for your help, I made at least a littele progress. >>> Firstly, the output of "Components Information": >>> -------------------------------- >>> >>> >>> digiKam version 2.9.0 >>> >>> Exiv2 can write to Jp2: Yes >>> >>> Exiv2 can write to Jpeg: Yes >>> >>> Exiv2 can write to Pgf: Yes >>> >>> Exiv2 can write to Png: Yes >>> >>> Exiv2 can write to Tiff: Yes >>> >>> Exiv2 supports XMP metadata: Yes >>> >>> LibCImg: 130 >>> >>> LibClapack: internal library >>> >>> LibExiv2: 0.23 >>> >>> LibJPEG: 62 >>> >>> LibJasper: 1.900.1 >>> >>> LibKDE: 4.9.2 "release 511" >>> >>> LibKExiv2: 2.3.0 >>> >>> LibKGeoMap: 2.0.0 >>> >>> LibKdcraw: 2.1.0 >>> >>> >>> LibLCMS: 119 >>> >>> LibLensFun: external shared library >>> >>> LibLqr: internal library >>> >>> LibPGF: 6.12.27 - internal library >>> >>> LibPNG: 1.4.11 >>> >>> LibQt: 4.8.3 >>> >>> LibRaw: 0.14.6 >>> >>> >>> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 >>> Sam Leffler >>> Copyright (c) 1991-1996 Silicon Graphics, Inc. >>> >>> Marble Widget: 0.14.1 (stable release) >>> >>> >>> Parallelized PGF codec: No >>> >>> Parallelized demosaicing: Yes >>> >>> Database backend: QSQLITE >>> >>> LibGphoto2: 2.4.14 >>> >>> LibKface: 2.0.0 >>> >>> LibKipi: 1.6.0 >>> >>> LibOpenCV: 2.4.2 >>> >>> Libface: 0.2 >>> >>> -------------------------------- >>> >>> It seems to contain everything. >>> >>> >>> In the mean time, I figured out that saving comments with >>> language >>> "x-default" works, but using "lang=de-DE" does not. When >>> saving the title, >>> the language does not matter. >>> Here's the debugging output for both cases: >>> >>> 1) Using "lang=x-default" (working) >>> -------------- >>> >>> digikam(3612)/digikam (core) >>> Digikam::DMetadata::setImageTitles: >>> "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", >>> CaptionValues::caption: "mytitle", CaptionValues::author: >>> "", >>> CaptionValues::date: QDateTime("") ) ) >>> >>> digikam(3612)/digikam (core) >>> Digikam::DMetadata::setImageComments: >>> "/home/user/bilder/DSC_1229.JPG" ==> Comment: >>> QMap(("x-default", >>> CaptionValues::caption: "mycaption", >>> CaptionValues::author: "", >>> CaptionValues::date: QDateTime("Thu Oct 11 12:24:26 >>> 2012") ) ) >>> >>> -------------- >>> >>> 2) Using "lang=de-DE" (not working) >>> -------------- >>> >>> digikam(3612)/digikam (core) >>> Digikam::DMetadata::setImageTitles: >>> "/home/user/bilder/DSC_1229.JPG" ==> Title: QMap(("de-DE", >>> CaptionValues::caption: "mytitle", CaptionValues::author: >>> "", >>> CaptionValues::date: QDateTime("") ) ) >>> digikam(3612)/digikam (core) >>> Digikam::DMetadata::setImageComments: >>> "/home/user/bilder/DSC_1229.JPG" ==> Comment: >>> QMap(("de-DE", >>> CaptionValues::caption: "mycaption", >>> CaptionValues::author: "", >>> CaptionValues::date: QDateTime("Thu Oct 11 12:23:48 >>> 2012") ) ) >>> >>> ----------------- >>> >>> At least now I know how to do a workaround by using only >>> x-default. However >>> it would be great to get de-DE to work since I don't want >>> to switch the >>> language of ~3000 captions by hand. >>> >>> >>> Regards, >>> Markus >>> >>> >>> >>> Am 11.10.2012 09:55, schrieb Peter Albrecht: >>> >>>> On 10.10.2012 22:05, Markus Ebert wrote: >>>>> I suspect that something is wrong with a tool digikam >>>>> relies >>>>> on (e.g. exiftool did not work out box as it turned out >>>>> dependencies were wrong), >>>> In DigiKam, go to "Help" -> "Components Information" and >>>> post the output on the mailing list. >>>> >>>> Mine looks like: >>>> -------------------------- 8< >>>> ------------------------------ >>>>> digiKam version 2.9.0 >>>>> Exiv2 can write to Jp2: Yes >>>>> Exiv2 can write to Jpeg: Yes >>>>> Exiv2 can write to Pgf: Yes >>>>> Exiv2 can write to Png: Yes >>>>> Exiv2 can write to Tiff: Yes >>>>> Exiv2 supports XMP metadata: Yes >>>>> LibCImg: 130 >>>>> LibClapack: external shared library >>>>> LibExiv2: 0.21.1 >>>>> LibJPEG: 80 >>>>> LibJasper: 1.900.1 >>>>> LibKDE: 4.8.5 (4.8.5) >>>>> LibKExiv2: 2.1.0 >>>>> LibKGeoMap: 2.0.0 >>>>> LibKdcraw: 2.0.1 >>>>> LibLCMS: 119 >>>>> LibLensFun: external shared library >>>>> LibLqr: internal library >>>>> LibPGF: 6.12.27 - external shared library >>>>> LibPNG: 1.5.10 >>>>> LibQt: 4.8.2 >>>>> LibRaw: 0.14.4 >>>>> LibTIFF: LIBTIFF, Version 4.0.2 Copyright (c) 1988-1996 >>>>> Sam Leffler >>>>> Copyright (c) 1991-1996 Silicon Graphics, Inc. >>>>> Marble Widget: 0.13.4 (stable release) >>>>> Parallelized PGF codec: No >>>>> Parallelized demosaicing: Yes >>>>> Database backend: QSQLITE >>>>> LibGphoto2: 2.4.12 >>>>> LibKface: 2.0.0 >>>>> LibKipi: 1.3.0 >>>>> LibOpenCV: 2.3.1 >>>>> Libface: 0.2 >>>> -------------------------- >8 >>>> ------------------------------ >>>> >>>> Maybe this helps identifying an old library. >>>> >>>> >>>>> ... so is there a possibility to turn >>>>> on a debug mode such that I can see what happens when >>>>> digikam tries to write the metadata? Or maybe a logfile? >>>>> (Starting in console doesn't reveal anything) >>>> To enable debug output: Start the programm "kdebugdialog", >>>> search for "digikam" and select all checkboxes. Click "OK" >>>> and start digikam from your terminal. >>>> >>>> Applying title ("mytitle") and caption ("mycaption"), I get >>>> the following debug output: >>>> -------------------------- 8< >>>> ------------------------------ >>>>> digikam(3572)/digikam (core) >>>>> Digikam::DMetadata::setImageTitles: >>>>> "/home/user/pictures/Pow-img_1418.jpg" ==> Title: >>>>> QMap(("x-default", >>>>> CaptionValues::caption: "mytitle", >>>>> CaptionValues::author: "", >>>>> CaptionValues::date: QDateTime("") ) ) >>>>> digikam(3572)/digikam (core) >>>>> Digikam::DMetadata::setImageComments: >>>>> "/home/user/pictures/Pow-img_1418.jpg" ==> Comment: >>>>> QMap(("x-default", >>>>> CaptionValues::caption: "mycaption", >>>>> CaptionValues::author: "", >>>>> CaptionValues::date: QDateTime("Do. Okt 11 09:50:17 >>>>> 2012") ) ) >>>>> digikam(3572)/digikam (core) >>>>> Digikam::DMetadata::setImageRating: Rating >>>>> value to write is out of range! >>>>> digikam(3572)/KEXIV2 >>>>> KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File >>>>> Extension: "jpg" is supported for writing mode >>>>> digikam(3572)/digikam (core) >>>>> Digikam::AlbumWatch::rescanDirectory: >>>>> Detected change, triggering rescan of directory >>>>> "/home/px79/daten/Bilder >>>>> (private)/Fotos unsortiert/Incoming" >>>>> digikam(3572)/digikam (core) >>>>> Digikam::AlbumWatch::rescanDirectory: >>>>> Detected change, triggering rescan of directory >>>>> "/home/px79/daten/Bilder >>>>> (private)/Fotos unsortiert/Incoming" >>>>> digikam(3572)/digikam (core) >>>>> Digikam::AlbumWatch::rescanDirectory: >>>>> Detected change, triggering rescan of directory >>>>> "/home/px79/daten/Bilder >>>>> (private)/Fotos unsortiert/Incoming" >>>>> digikam(3572)/digikam (core) >>>>> Digikam::AlbumWatch::rescanDirectory: >>>>> Detected change, triggering rescan of directory >>>>> "/home/px79/daten/Bilder >>>>> (private)/Fotos unsortiert/Incoming" >>>>> digikam(3572)/digikam (core) >>>>> Digikam::AlbumWatch::rescanDirectory: >>>>> Detected change, triggering rescan of directory >>>>> "/home/px79/daten/Bilder >>>>> (private)/Fotos unsortiert/Incoming" >>>>> digikam(3572)/KEXIV2 KExiv2Iface::KExiv2::save: >>>>> Metadata for file ' >>>>> Pow-img_1418.jpg ' written to file. >>>> -------------------------- >8 >>>> ------------------------------ >>>> >>>> Regards, >>>> Peter >>>> _______________________________________________ >>>> Digikam-users mailing list >>>> [hidden email] >>>> https://mail.kde.org/mailman/listinfo/digikam-users >>>> >>> _______________________________________________ >>> Digikam-users mailing list >>> [hidden email] >>> https://mail.kde.org/mailman/listinfo/digikam-users >> _______________________________________________ >> Digikam-users mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-users >> > > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Markus Ebert
Hello, Some comments, as I happened to face the same problem Markus raised (not with lang=de-DE, in my case with lang=fr-FR but it's the same issue). On Fri, 12 Oct 2012, Peter Albrecht wrote: > > > > > 2012/10/11 Markus Ebert <[hidden email]>: In the mean > > > > > time, I figured out that saving comments with language > > > > > "x-default" works, but using "lang=de-DE" does not. > > I tried it on my system an saving "de-DE" caption and title worked. > So I would guess, it is not "digikam 2.9.0's fault". It's not a problem with Digikam. Problem comes from the way multi-languages support is implemented and not very well defined in the standards. (Not well defined = the implementation syntax is well defined but the way to use it, and what metadata readers are expected to do is a misty planet.) First, XMP metadata provides two kinds of text fields : - simple text string. This is a Unicode encoded characters string. - text string with languages alternatives. This is an array of strings with language specifiers, allowing metadata readers to select one or the other value of a text, according to a prefered language. And the special "x-default" language specifier seems more or less mandatory. The Adobe XMP specification says : « Languages alternatives allow the text value of a property to be chosen based on a desired language. Each item in a language alternative array is a simple text value, which must have a language qualifier associated with it. The language qualifier is a property qualifier, as described in the previous section. The qualifier name is xml:lang and its value is a string that conforms to RFC 3066 notation. XMP uses the "x-default" language code to denote the default value for a language alternative. It should be the first item in the array, so that generic RDF processors will also use it as the default (according to the RDF default-is-first rule). » This means that specifying a language for a text is not setting a field value definition, but adding an *extra* value to the initial default definition as a language alternative. Digikam captions are saved into the xmp.dc.description field, and this field is a multi languages array (as stated by the Dublin Core specs). A theoretical ideal definition should be something like : xmp.dc.description = " lang=x-default Default value for the text, lang=de-DE German translation for the same text, lang=fr-FR French translation ... " But when selecting a non default language, it's not what is written. The XMP space will only contain something like : xmp.dc.description = " lang=de-DE Some text in German" What happens when a definition contains only non default values ? Nothing seems specified in the XMP standards, so it will be metadata readers dependent. Some reading software will perhaps use the single definition as a default value. Some other reading software will consider the definition as empty because of the missing x-default, and won't parse to find some readable text. Or some readers may check the specified language, compare to the default environment language and accept or reject. Peter says saving de-DE title and caption works for him. Peter, what's your default O.S. session language ? German maybe ? As for me, as my O.S. is installed in English, en-US, saving with fr-FR language doesn't work (except if I add first the same text with lang=x-default). The conclusion is that saved metadata *should always* provide a default value for texts if compatibility is required. Language specific values are extra (and must come after the default definition, cf. XMP standard). This is just provided for a metadata reader able to deal with various languages, other will use only the default value. But another problem is that a metadata reading software doesn't always know the default language used for text definitions. It could be made possible by specifying some kind of xml:lang=... at the XML structure level. The bad new is that the libexiv2 used by DK to create a XMP section doesn't export the current session language. :-( Regards, Jean-François NB: Editing multi languages metadata is not a simple task. From the Digikam GUI it requires selecting x-default, then typing the text and clicking Apply, then selecting e.g. fr-FR, type the text, Apply, then selecting en-US, type, Apply, etc. And the nightmare comes when one wishes to change/edit existing data. All existing alternatives must be redisplayed, edited, saved, but this has to be done by hand (and mind); there's no help support to issue some kind of warning, « You've modified the French text, but you also had a previous English, German, Other, variant ! » So, the safe and simple way is to stick to x-default.:-) _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Wow, thanks for research and in-depth information!
On 14.10.2012 14:02, Jean-François Rabasse wrote: > Peter says saving de-DE title and caption works for him. > Peter, what's your default O.S. session language ? German > maybe ? My language settings are: ------------------- 8< ------------------- # locale LANG= LC_CTYPE=de_DE.utf8 LC_NUMERIC=de_DE.utf8 LC_TIME=de_DE.utf8 LC_COLLATE=POSIX LC_MONETARY=de_DE.utf8 LC_MESSAGES=en_US.utf8 LC_PAPER=de_DE.utf8 LC_NAME=de_DE.utf8 LC_ADDRESS=de_DE.utf8 LC_TELEPHONE=de_DE.utf8 LC_MEASUREMENT=de_DE.utf8 LC_IDENTIFICATION=de_DE.utf8 LC_ALL= ------------------- >8 ------------------- Almost all set to de_DE, but LC_MESSAGES=en_US.utf8. I guess this adds another level of complexity. ;) > As for me, as my O.S. is installed in English, en-US, saving > with fr-FR language doesn't work (except if I add first > the same text with lang=x-default). Adding only a de_DE title to a picture works in my system. Even adding a fr_FR title to a picture works: Okteta shows: --------------------- 8< --------------------- <dc:title> <rdf:Alt> <rdf:li xml:lang="fr-FR">fr-title</rdf:li> </rdf:Alt> </dc:title> --------------------- >8 --------------------- in the XMP-Metadata in the file. What I did: 1) start digikam 2) copy a picture imported from my camera, not tagged yet 3) select "fr-FR" for the title 4) typed "fr-title" in the input box 5) click "Apply" 6) opened the jpg with okteta > So, the safe and simple way is to stick to x-default.:-) That's the way, I am happily working with digikam several years now. ;) > NB: Editing multi languages metadata is not a simple task. From the > Digikam GUI it requires selecting x-default, then typing the text and > clicking Apply, then selecting e.g. fr-FR, type the text, Apply, then > selecting en-US, type, Apply, etc. That's different with my digikam (and my libkexiv2 / exiv2): 1) start digikam 2) copy a picture imported from my camera, not tagged yet 3) select "ar-EG" for the title 4) typed "ar-EG-title" in the input box 3) select "de-LI" for the title 4) typed "de-LI-title" in the input box 3) select "fr-FR" for the title 4) typed "fr-FR-title" in the input box 5) click "Apply" 6) opened the jpg with okteta This shows me: -------------------- 8< -------------------- <dc:title> <rdf:Alt> <rdf:li xml:lang="ar-EG">ar-EGtitle</rdf:li> <rdf:li xml:lang="de-LI">de-LI-title</rdf:li> <rdf:li xml:lang="fr-FR">fr-title</rdf:li> </rdf:Alt> </dc:title> -------------------- >8 -------------------- So I don't have to click apply for each title-language. Regards, Peter _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Free forum by Nabble | Edit this page |