Pictures database and library mode; scan EXIF and IPTC metadata tags into a SQL db

  Thread Rating:
  • 2 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Thread Closed
mhdebokx Offline
Member
Posts: 70
Joined: Dec 2006
Reputation: 0
Location: Netherlands
Post: #271
(2012-03-12 17:47)LoL Wrote:  which programs do you guys use for tagging?

http://www.geosetter.de/en/
find
fiveisalive Offline
Fan
Posts: 366
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #272
(2012-03-12 16:38)Xycl Wrote:  No, I won't do it because as already told I don't get enough time and fixing the unicode errors was a time-consuming task. Each corrected error produced several successive errors

Fair enough. That was why I suggested perhaps importing the code to github, so we could co-ordinate your changes and I could try and restore the additional code that wasn't in the last stable Dharma version of the add-on. As I said, I'm very interested in helping co-maintain the addon in the future as I'll have to switch to Eden soon, so my Dharma version of the addon will need to be updated.

Hopefully alexsolex can chime and either rejoin the development, or he could declare it orphaned so that the community can pick it up.

Quote:I don't know why alexsolex decided to branch plugin's code without taking care of addons.xml version number and the changelog. Perhaps it was just a mistake. Perhaps because it was just a branch and never meant to go productive?

Although it was technically a "branch" in SVN, it was the only place development took place (trunk wasn't used after the initial import AFAICT).

Quote:But I took the latest available stable (and highest) version from official xbmc dharma plugin repository.
That was my working basis.

Got it, that definitely missed out some major features (which work just fine).
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #273
(2012-03-12 17:34)mhdebokx Wrote:  In the Alex version I was able to scan my NAS, but I can not acces the NAS from the this addon. I tried several rootpaths

\\ username : password @ localipnumber\photo\1901 Michel\

smb:\\ username : password @ localipnumber\photo\1901 Michel\

smb:// username : password @ localipnumber /photo/1901 Michel/

In the beginning the Alex addon has the same problem, but is solved. Or is it an Eden bug conserning SMB access ?
Or is this also an difference between the official repo en the 1.80 version on GoogleCode ?
Windows: Assign a drive letter to the share
Linux / Mac: Mount the share into a local directory
Then add the path as a local picture path.

Not sophisticated but works.

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #274
I corrected the last Dharma version found in alexsolex google svn branch.
If you use Eden then please install plugin.image.mypicsdb-0.6.0.zip. It's not part of my repository. Therefore it won't automatically update.
I didn't test categories, suplement categories, geolocations & videos. Please test these categories with non latin characters.
If you find a bug please supply an example picture, the tag and the expected string.

Update
plugin.image.mypicsdb-0.6.1.zip should now work.

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
(This post was last modified: 2012-03-14 21:38 by Xycl.)
find
nozomi Offline
Member
Posts: 59
Joined: May 2010
Reputation: 0
Post: #275
Great that this plugin is alive again! Smile

I have a question about using a separate profile in xbmc (not master user):

I can't get access to my home picture folder when adding a path to the database.
The only folder I get to scan is the "Picture Add-ons one" Sad
Any idea how to fix this?

I'm using OSX by the way.

//thanks
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #276
(2012-03-21 14:36)nozomi Wrote:  I can't get access to my home picture folder when adding a path to the database.
The only folder I get to scan is the "Picture Add-ons one" Sad

I think that you don't even see pictures without using this plugin because you forgot to add picture/video/music sources to the new profile

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
fiveisalive Offline
Fan
Posts: 366
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #277
(2012-03-14 03:04)Xycl Wrote:  I corrected the last Dharma version found in alexsolex google svn branch.
If you use Eden then please install plugin.image.mypicsdb-0.6.0.zip. It's not part of my repository. Therefore it won't automatically update.
I didn't test categories, suplement categories, geolocations & videos. Please test these categories with non latin characters.
If you find a bug please supply an example picture, the tag and the expected string.

Update
plugin.image.mypicsdb-0.6.1.zip should now work.

Thanks, I'll give it a try. By the way, has anybody tried to contact alexsolex directly to see if he's interested in formally handing over this project? If not, I'll try to contact him. I'm willing to migrate the Google code SVN repo, add the new changesdone by Xycl and put this on github.
(This post was last modified: 2012-03-22 21:10 by fiveisalive.)
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #278
+1 for a github repo.
Please try to contact alexsolex.

Version 0.6.2 available (now part of my repo). I hope that I've fixed all possible combinations of unicode errors.

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #279
Suggestion for further development:

1)
There are two tables e.g. Cities & CitiesInFiles for each supported exif, iptc or xmp tag.
Therefore adding new kinds of tags is quite time consuming.
2 tables, 3 database class methods and the menu handling must be added.

Instead of using a table like Cities (key, content) or Categories (key, content) a meta table (key, tag-type, content) would be better because then adding new tags types is only done in file parser. Selecting the tag types from meta table and adding menu items can be done programmatically.
There would be only one menu item "keyword" or "tag" which opens a sub menu displaying all available tag types from meta table.

2)
There should be a mapping table. Then we can join e.g. iptc keyword tag with exif xpkeyword tag. The user would only see one menu item called keyword.

3)
An advanced filter. Perhaps a wizard.
Select pictures from country abc with keyword xyz containing person def. Needs 1) otherwise it's not maintainable.

Any opinions?

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
fungify Offline
Senior Member
Posts: 138
Joined: Jul 2010
Reputation: 2
Post: #280
And from a user perspective:

The ability to disable automatic rescanning of all images each time the plugin is started. Maybe even the possibility to scan at specified times (as a service) daily or when called from a script.

Really glad that someone has picked up the development of this plugin.

FFY
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #281
(2012-03-27 00:41)fungify Wrote:  The ability to disable automatic rescanning of all images each time the plugin is started.

You can disable the automatic scanning in the plugin settings. Click Pictures->Add ons then select MyPicsDB and open with right mouse click or "C" the plugin settings.

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
fmronan Offline
Fan
Posts: 600
Joined: Dec 2010
Reputation: 4
Post: #282
the 0.6.2 don't work for me (ubuntu 11.10 and xbmc eden final)

Code:
17:57:27 T:2913991536   DEBUG: StartScript - calling plugin My Pictures Database('plugin://plugin.image.mypicsdb/','0','')
17:57:27 T:2913991536    INFO: initializing python engine.
17:57:27 T:2913991536   DEBUG: new python thread created. id=11
17:57:27 T:2913991536   DEBUG: WaitOnScriptResult - waiting on the My Pictures Database plugin...
17:57:27 T:2951736176   DEBUG: Thread XBPyThread start, auto delete: 0
17:57:27 T:2951736176   DEBUG: Python thread: start processing
17:57:27 T:2951736176  NOTICE: -->Python Interpreter Initialized<--
17:57:27 T:2951736176   DEBUG: Process - The source file to load is /home/guevel/.xbmc/addons/plugin.image.mypicsdb/default.py
17:57:27 T:2951736176   DEBUG: Process - Setting the Python path to /home/guevel/.xbmc/addons/plugin.image.mypicsdb:/home/guevel/.xbmc/addons/script.module.dialogaddonscan/lib:/usr/share/xbmc/addons/script.module.simplejson/lib:/home/guevel/.xbmc/addons/script.module.beautifulsoup/lib:/usr/share/xbmc/addons/script.module.pil/lib:/home/guevel/.xbmc/addons/script.common.plugin.cache/lib:/home/guevel/.xbmc/addons/script.module.elementtree/lib:/usr/share/xbmc/addons/script.module.pysqlite/lib:/usr/lib/python2.7:/usr/lib/python2.7/plat-linux2:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload:/usr/local/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages:/usr/lib/python2.7/dist-packages/PIL:/usr/lib/python2.7/dist-packages/gst-0.10:/usr/lib/python2.7/dist-packages/gtk-2.0:/usr/lib/pymodules/python2.7:/usr/lib/python2.7/dist-packages/ubuntu-sso-client:/usr/lib/python2.7/dist-packages/ubuntuone-client:/usr/lib/python2.7/dist-packages/ubuntuone-control-panel:/usr/lib/python2.7/dist-packages/ubuntuone-couch:/usr/lib/python2.7/dist-packages/ubuntuone-installer:/usr/lib/python2.7/dist-packages/ubuntuone-storage-protocol:
17:57:27 T:2951736176   DEBUG: Process - Entering source directory /home/guevel/.xbmc/addons/plugin.image.mypicsdb
17:57:27 T:2951736176   DEBUG: Instantiating addon using automatically obtained id of "plugin.image.mypicsdb" dependent on version 2.0 of the xbmc.python api
17:57:27 T:2951736176  NOTICE: MyPicturesDB plugin called :
17:57:27 T:2951736176  NOTICE: plugin://plugin.image.mypicsdb/
17:57:27 T:2951736176  NOTICE: --------------------
17:57:27 T:2951736176  NOTICE: Previous line repeats 1 times.
17:57:27 T:2951736176  NOTICE: 3
17:57:27 T:2951736176    INFO: -->Python script returned the following error<--
17:57:27 T:2951736176   ERROR: Error Type: <type 'exceptions.TypeError'>
17:57:27 T:2951736176   ERROR: Error Contents: not all arguments converted during string formatting
17:57:27 T:2951736176   ERROR: Traceback (most recent call last):
                                              File "/home/guevel/.xbmc/addons/plugin.image.mypicsdb/default.py", line 1367, in <module>
                                                m.show_home()
                                              File "/home/guevel/.xbmc/addons/plugin.image.mypicsdb/default.py", line 225, in show_home
                                                self.addDir(unescape(__language__(30209))%Addon.getSetting("recentnbdays"),[("method","recentpicsdb"),("period",""),("value",""),("page","1"),("viewmode","view")],
                                            TypeError: not all arguments converted during string formatting
17:57:27 T:2951736176    INFO: -->End of Python script error report<--
17:57:27 T:2951736176    INFO: Python script stopped
17:57:27 T:2951736176   DEBUG: Thread XBPyThread 2951736176 terminating
17:57:27 T:2913991536   DEBUG:  WaitOnScriptResult - plugin exited prematurely - terminating
17:57:27 T:9032880   ERROR: GetDirectory - Error getting plugin://plugin.image.mypicsdb
17:57:27 T:9032880   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.image.mypicsdb) failed
17:57:27 T:9032880   DEBUG: CGUIMediaWindow::GetDirectory (addons://sources/image/)
17:57:27 T:9032880   DEBUG:   ParentPath = []
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #283
(2012-03-27 18:00)fmronan Wrote:  the 0.6.2 don't work for me (ubuntu 11.10 and xbmc eden final)

Problem is the dutch & french translation.
I change id 30201 till 30213 in both string.xml files to english and tested them in dutch & french.
Please translate them and post your translation.

Update to version 0.6.3 is available.

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
fiveisalive Offline
Fan
Posts: 366
Joined: Jul 2009
Reputation: 0
Location: United States
Post: #284
(2012-03-26 21:41)Xycl Wrote:  +1 for a github repo.
Please try to contact alexsolex.

Version 0.6.2 available (now part of my repo). I hope that I've fixed all possible combinations of unicode errors.

I wonder if you'd consider putting up your repo:

http://www.xycl.de/xbmc/repository.xycl....dharma.zip

on the list at:

http://wiki.xbmc.org/index.php?title=Uno...positories

that way the Repositories Installer Add-on can more easily install it. I had to manually search for the link to the zip file from your site, manually download it, then install it within XBMC. Thanks.
Just updated to 0.6.3. When I try to add a path, e.g. /home/foo/Pictures, it generates an error, and no path is added. Here's the log:

Code:
13:37:18 T:140208971437824  NOTICE: Previous line repeats 1 times.
13:37:18 T:140208971437824  NOTICE: 0
13:37:31 T:140208971437824  NOTICE: MyPicsDB >> SQL > SELECT DISTINCT strPath FROM files
13:37:31 T:140208971437824  NOTICE: MyPicsDB >> ERROR : DB_cleanup_keywords ...
13:37:31 T:140208971437824  NOTICE: MyPicsDB >> <type 'exceptions.Exception'> - no such table: TagsInFiles
13:37:31 T:140208971437824   ERROR: Error Type: <class 'sqlite3.OperationalError'>
13:37:31 T:140208971437824   ERROR: Error Contents: no such table: TagsInFiles
13:37:31 T:140208971437824   ERROR: Traceback (most recent call last):
                                              File "/home/foo/.xbmc/addons/plugin.image.mypicsdb/default.py", line 1422, in <module>
                                                m.show_roots()
                                              File "/home/foo/.xbmc/addons/plugin.image.mypicsdb/default.py", line 746, in show_roots
                                                MPDB.AddRoot(newroot,recursive,update,0)#TODO : traiter le exclude (=0 pour le moment) pour gérer les chemins à exclure
                                              File "/home/foo/.xbmc/addons/plugin.image.mypicsdb/resources/lib/MypicsDB.py", line 932, in AddRoot
                                                DB_cleanup_keywords()
                                              File "/home/foo/.xbmc/addons/plugin.image.mypicsdb/resources/lib/MypicsDB.py", line 430, in DB_cleanup_keywords
                                                cn.execute( "delete from TagsInFiles where idFile not in(select idFile from Files )")
                                            OperationalError: no such table: TagsInFiles
13:37:31 T:140210039982144   ERROR: GetDirectory - Error getting plugin://plugin.image.mypicsdb/?do='addroot'&viewmode='view'&exclude='0'&action='rootfolders'&name='%5BB%5DAdd%5B%2FB%5D+a+path+to+database'
13:37:31 T:140210039982144   ERROR: CGUIMediaWindow::GetDirectory(plugin://plugin.image.mypicsdb/?do='addroot'&viewmode='view'&exclude='0'&action='rootfolders'&name='%5BB%5DAdd%5B%2FB%5D+a+path+to+database') failed
13:37:31 T:140208971437824  NOTICE: -->Python Interpreter Initialized<--
13:37:31 T:140208971437824  NOTICE: MyPicturesDB plugin called :
13:37:31 T:140208971437824  NOTICE: plugin://plugin.image.mypicsdb/?do='showroots'&viewmode='view'&action='rootfolders'&name='Paths+of+pictures+folders'
13:37:31 T:140208971437824  NOTICE: --------------------
13:37:31 T:140208971437824  NOTICE: Previous line repeats 1 times.
13:37:31 T:140208971437824  NOTICE: 0
13:37:31 T:140208971437824  NOTICE: MyPicsDB >> SQL > SELECT path,recursive,remove,exclude FROM Rootpaths ORDER BY path
(This post was last modified: 2012-03-27 19:40 by fiveisalive.)
find
Xycl Offline
Fan
Posts: 331
Joined: Feb 2012
Reputation: 7
Location: Germany
Post: #285
Please try version 0.6.4

No log no help.
How to submit a log file: XBMC-Wiki

Main page: https://github.com/Xycl
Repository: Xycl Repository
find
Thread Closed