Well, after using Ubuntu/Gnome for years, I randomly installed Kubuntu on my
laptop and digikam is one of the main reasons I decided to leave GNOME. Digikam's speed and feature set are IMPRESSIVE. Unfortunately, I have many, many (several thousand) photos in my f-spot database. I would really like to move this information into digikam. Oddly, F-Spot claims to store it's information in the photo, but digikam can't find the tags. Then I started googling and discovered an old thread hear that explained why. This bummed me out, but it hasn't stopped me, yet. I started looking at the digikam and f-spot sqlite databases. I would like to try moving my tags from the f-spot db to the digikam db. This seems to be easier said than done. For starters, F-Spot is still using sqlite2 while digikam is using sqlite3. I thought I would be able to use a program like datakiosk to move the data over, but I can't get it to open digikam's database. So, I went command-line, and started looking at the dbs. Here's what I found. _______________________________________________________________________ F-Spot Database To save 99% of my info, I really only need to interface with 3 tables. Table Name Table Columns photos id, time, directory_path, name, description, default version tags id, name, category_id, is_category, sort_priority, icon photo tags photo_id, tag_id _______________________________________________________________________ _______________________________________________________________________ Digikam Database Obviously, I have to move the info into this db. I'm sure the layout of this file is well know to everyone here, but I'll lay it out anyway. I think I really only need to interact with 3 tables here. Table Name Table Columns Images id, name, dirid, caption, datetime Tags id, pid, name, icon, iconkde ImageTags imageid, tagid _______________________________________________________________________ Unfortunately, neither db uses the photos actual name as it's internal id. I understand why this is done this way (it has to be), but it doesn't make my life any easier. Because the 2 programs index the files in a different order, digikam's id # is different from f-spot's id #. This complicates my life. I can easily query the f-spot db to give me a list of photos (actual file name or internal id #) in each tag. I would like to import these lists into digikam's db. I can see how to do this by hand, but I'm not sure how I can script this to happen. If anyone has any ideas, I would love to hear them. Thanks --andy _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Andy Choens wrote:
> Well, after using Ubuntu/Gnome for years, I randomly installed Kubuntu on my > laptop and digikam is one of the main reasons I decided to leave GNOME. > Digikam's speed and feature set are IMPRESSIVE. I know this is in no way answering your question but just wanted to state my POV. I've been a Gnome user for years and I really like it. That said I also use *loads* of KDE apps and even develop for a few too. Digikam and Amarok are my two fav apps and I use Kate as my general editor of choice and kpdf for, well, viewing PDFs... ;) I still use my Gnome desktop however and can't see me changing anytime soon. I happily accept my desktop sluttyness and find combining Gnome and KDE apps pretty seamless. I've not use Ubunku/Kubuntu so don't know if they really separate out the two Desktops, but I'd imagine its easy enough to install both at the same time..... It's certainly mega simple on e.g. Mandriva (which is my personal distro of choice). Take care. Col. _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by gunksta
Dnia środa 25 kwiecień 2007, Andy Choens napisał:
> > So, I went command-line, and started looking at the dbs. Here's what I > found. > _______________________________________________________________________ > F-Spot Database > To save 99% of my info, I really only need to interface with 3 tables. > > Table Name Table Columns > photos id, time, directory_path, name, description, default version > tags id, name, category_id, is_category, sort_priority, icon > photo tags photo_id, tag_id > _______________________________________________________________________ > > _______________________________________________________________________ > Digikam Database > Obviously, I have to move the info into this db. I'm sure the layout of > this file is well know to everyone here, but I'll lay it out anyway. I > think I really only need to interact with 3 tables here. > > Table Name Table Columns > Images id, name, dirid, caption, datetime > Tags id, pid, name, icon, iconkde > ImageTags imageid, tagid > _______________________________________________________________________ I would go (but I don't know how - and if - it would work): Dump F-Spot database to text format. Import several photos by hand (tagging, creating albums, etc.). How many it depends on your current structure. Dump newly created Digikam database into text format. Compare. Everything is regexp now. Import text version on modified F-Spot database into Digikam. m. _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hi all,
Fabien, if users have a script to move from f-spot to digiKam, i will be happy to see it on digiKam FAQ web project page.
I lets script guru find a right way to give a fine solution. I'm not a really good script developper. I still better C++ developper (:=))))
Me and Marcel are available if you have specific questions related to digiKam DB...
Gilles
2007/4/25, Mikolaj Machowski <[hidden email]>:
Dnia środa 25 kwiecień 2007, Andy Choens napisał: _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Bugzilla from mikmach@wp.pl
> Dump F-Spot database to text format. > Import several photos by hand (tagging, creating albums, etc.). How many > it depends on your current structure. > Dump newly created Digikam database into text format. > Compare. > Everything is regexp now. > Import text version on modified F-Spot database into Digikam. this is an interesting idea. I may have a look at this this evening. This may be a good way to do it, although it's still not particularly automatic. OTOH, it would probably work. --andy _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
On Wednesday 25 April 2007 12:45:53 pm Gilles Caulier wrote:
> Hi all, > > Fabien, if users have a script to move from f-spot to digiKam, i will be > happy to see it on digiKam FAQ web project page. > I'll keep records to document what I do. When I get the info into digikam, I can make the process public. I may also write-up a how-to for the Ubuntu Forums. I'll post a link to that here. Others are welcome to take it and add it to other forums. > I lets script guru find a right way to give a fine solution. I'm not a > really good script developper. I still better C++ developper (:=)))) > I'm still figuring out how to approach this. I may or may not develop a script. My concern with a script would be how it would relate to the digikam database if there was already significant info in it. > Me and Marcel are available if you have specific questions related to > digiKam DB... > I will probably have questions for you. Writing to the digikam db is my biggest stumbling block right now. Thanks! --andy _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by gunksta
Andy Choens wrote:
> ... > Unfortunately, I have many, many (several thousand) photos in my f-spot > database. I would really like to move this information into digikam. Oddly, >... > starters, F-Spot is still using sqlite2 while digikam is using sqlite3. I > thought I would be able to use a program like datakiosk to move the data > over, but I can't get it to open digikam's database. > ... While I'm not an SQL expert by anyone's definition of the term, I've encountered a similar need in another context. Perhaps my solution will work for you. Export the F-Spot DB as comma separated values. Use the SQL COPY command to read the CSV file into the digikam DB. It might not work directly. You may have to build some temporary tables from which you SELECT and massage the right columns. Dave Talmage _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
>
> While I'm not an SQL expert by anyone's definition of the term, I've > encountered a similar need in another context. Perhaps my solution will > work for you. Export the F-Spot DB as comma separated values. Use the > SQL COPY command to read the CSV file into the digikam DB. It might not > work directly. You may have to build some temporary tables from which > you SELECT and massage the right columns. > > Dave Talmage I think this is the right approach, but it's the insertion part I don't understand. F-Spot has assigned a unique number to every photo in my collection. In the tags database, it tells me which tag is assigned to which photo id #, not the photo name. Of course, with the fun and glory that is SQL (inner joins rule), I can easily get the F-Spot db to tell me what the REAL name of the file is. So, I can easily generate a list of actual file names attached to Tag #1, Tag#2, etc. I can export this into csv and edit it until my heart is content. But, I don't understand the insertion part. Here's my problem. Digikam, like F-Spot assigns every photo a unique ID #. This unique number, not the actual file name, is used to to assign tags to photos (images in the digikam db). I know that almost all of my photos have unique names, so I'm not too worried about needing to search on my file names. I can figure out the digikam db structure, and modify text exported from f-spot, but I can't figure out how to search digikam's db for EACH and EVERY tag insertion before I insert it, so I can assign it to the right unique id #. I just can't figure out the insertion side of life. If I am overlooking something obvious, I'm all ears. --andy _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Just to be sure: the information you want to preserve are
- comments - tags Anything else (eg. ratings?)? Are the tags organized in a tree-structure, or just flat? Can F-spot write these into the IPTC fields? If so, digikam should be able to fetch them into the database: http://www.digikam.org/?q=about/features09x """Metadata from new pictures imported to digiKam album collection are scanned automatically. digiKam Tags/Rating/Comments/Date are created automatically in database accordingly with EXIF/IPTC contents.""" Maybe you try to play around with a few simple examples to see if that works for you. If f-spot does not quite write them in the format needed for digikam (e.g. / separated for the information of the tree-organization of the tags), you might be able to use exiv2 to directly manipulate the entries of the corresponding IPTC fields (by using queries to your f-spot database). I all that does not work out, you might just import all your f-spot images into digikam. Then quit digikam, and do an ASCII dump of your database. By this you have the association: ID <-> filename. For each file you then will have to add the corresponding tags, e.g. by a small script. Of course the file format should look like one which is generated by digikam, so it would mean to generate a few example dumps before to see what it looks like. Afterwards you can convert the changed database dump file back into a database file to be used by digikam. But I would really hope that the first approach, storing into the IPTC fields, works. Best, Arnd _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by gunksta
Dnia 25-04-2007 o godz. 21:08 Andy Choens napisał(a):
> > this is an interesting idea. I may have a look at this this evening. > This may > be a good way to do it, although it's still not particularly automatic. > > OTOH, it would probably work. Well, after this study it will be easier to create script for automatic work. Everything in your hands :) m. ---------------------------------------------------- Już niedługo pierwsza komunia! Zrób naprawdę niezapomniany prezent: Pięknie wydany i zilustrowany album do uzupełnienia przez dziecko będzie na całe życie kroniką Pierwszej Komunii Świętej - Zobacz: http://klik.wp.pl/?adr=http%3A%2F%2Fksiazka.eu%2F%3Fpg%3Dseria%26idseria%3D19%26ref%3Dwppl&sid=1113 _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
And this script can be added to svn into digikam/utilities/scripts places.
Mik, look like we have already a script here, with a man page. Please, if you provide a new scripts for users, make a man page too.
Of course, a new FAQ entry can be added later in web project page by Fabien...
Gilles
2007/4/26, Mikołaj Machowski <[hidden email]>:
Dnia 25-04-2007 o godz. 21:08 Andy Choens napisał(a): _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
Hi,
Gilles Caulier wrote: > > Fabien, if users have a script to move from f-spot to digiKam, i will be > happy to see it on digiKam FAQ web project page. Me too :) What could be great is to have something more generic : any to digikam with some standard input to add tags/comments/rates, etc. (eg a csv file), so that it could be easier to implement a newapp2digikam utility. But, maybe something could be done with dcop ? -- Fabien _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Dnia czwartek 26 kwiecień 2007, Fabien napisał:
> > But, maybe something could be done with dcop ? D-bus rather. Investing time in dcop is now waste of effort. m. _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
On Thu, 26 Apr 2007, Mikolaj Machowski wrote:
> Dnia czwartek 26 kwiecień 2007, Fabien napisał: > > > > But, maybe something could be done with dcop ? > > D-bus rather. Investing time in dcop is now waste of effort. Does digikam already support d-bus? (I am still looking for a way to externally steer digikam to go to a specific image: the idea is to have a back-link from small thumbs displayed in google-earth to the actual image. Using a small local http server, written in python, the transfer could be done easily. The missing bit is the right dcop/d-bus command to change to the right folder and image. For the either direction, select a digikam image with GPS coordinates, and fly to the position within google earth I found a small hack to achieve this ...) Best, Arnd _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Fabien-5
Totally agree with Fabien. A generic script can be done to backport DB from others photo management program to digiKam DB.
There is not only F-Spot and digiKam witch use SQlite database. Look like Apple Aperture use it !
... and Adobe LightRoom too !
I don't know if Picasa use Sqlite database...
Gilles
2007/4/26, Fabien <[hidden email]>:
Hi, _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hello,
I think that a kind of api available to scripts writers (
perl/python,...) would be a very usefull addition to digikam
- api to add images/tags, rating,;
- api to query references to images according to
tags,....
- all of that outside of actual c++ digikam code but
released part of digikam
- That would open up a lot of possibilities (
web galerie generation, import/export from other
DAM,.....)
- That also would prevent "wild access" to the digikam
database
Just my 0.02€
Etienne
From: Gilles Caulier [mailto:[hidden email]] Sent: jeudi 26 avril 2007 20:53 To: digiKam - Digital Photo Management for the masses Subject: Re: [Digikam-users] F-Spot --> Digikam Totally agree with Fabien. A generic script can be done to backport DB from
others photo management program to digiKam DB.
There is not only F-Spot and digiKam witch use SQlite database. Look like
Apple Aperture use it !
... and Adobe LightRoom too !
I don't know if Picasa use Sqlite database...
Gilles
2007/4/26, Fabien <[hidden email]>:
Hi, _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Dnia niedziela 29 kwiecień 2007, Charlier, Etienne napisał:
> Hello, > > I think that a kind of api available to scripts writers ( > perl/python,...) would be a very usefull addition to digikam > > - api to add images/tags, rating,; > - api to query references to images according to tags,.... > - all of that outside of actual c++ digikam code but released part of > digikam > > - That would open up a lot of possibilities ( web galerie generation, > import/export from other DAM,.....) - That also would prevent "wild > access" to the digikam database For KDE4 it should be done through Kross http://techbase.kde.org/Development/Languages/Kross m. -- You have the right to remain silent. Anything you say will be misquoted, then used against you. _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Free forum by Nabble | Edit this page |