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
Xycl Offline
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
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.

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
find
fmronan Offline
Fan
Posts: 584
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
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
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.

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
find
fiveisalive Offline
Fan
Posts: 345
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
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
Location: Germany
Post: #285
Please try version 0.6.4

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
find
fmronan Offline
Fan
Posts: 584
Joined: Dec 2010
Reputation: 4
Post: #286
with 0.6.3, the script run and scan but after that every are empty.
same with 0.6.4Confused, no pictures, just one movie .avi , strange
(This post was last modified: 2012-03-27 20:35 by fmronan.)
find
Xycl Offline
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
Location: Germany
Post: #287
(2012-03-27 19:33)fiveisalive Wrote:  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.

Done

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
find
Xycl Offline
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
Location: Germany
Post: #288
(2012-03-27 20:30)fmronan Wrote:  with 0.6.3, the script run and scan but after that every are empty.
same with 0.6.4Confused, no pictures, just one movie .avi , strange

Something in log file?

I deleted:
1) the archived zip file in addons/pakages directory
2) the directory addons/plugin.image.mypicsdb
3) userdata/Database/MyPictures.db

Then I installed from my repo mypicsdb and everything works.

Please open addons/plugin.image.mypicsdb/lib/resources/MypicsDB.py in an editor and find
PHP Code:
def DB_cleanup_keywords(): 
There should be the lines
PHP Code:
#cn.execute( "delete from TagsInFiles where idFile not in(select idFile from Files )")
#cn.execute( "delete from Tags where idTag not in (select idTag from TagsInFiles)") 
Important is the # at the beginning.

If there is a # then please delete your scanned path in mypicsdb and add it again.

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
(This post was last modified: 2012-03-27 21:08 by Xycl.)
find
TPXBMC Offline
Junior Member
Posts: 2
Joined: Mar 2012
Reputation: 0
Post: #289
Hi,

Does anyone know if there is a way to do an advanced search on the pictures. I haven't found a way yet. For Example:

-Pictures with Tag: Vacation and Tag: Mexico
-Pictures with Tag:Kids Name, Tag Birthday, Date range 2005-2008

So far the Global search does not seem to allow multiple phrases but perhaps I don't know the proper syntax. Even a view by tag within view by tag function would be good.

Thanks.
find
Xycl Offline
Senior Member
Posts: 248
Joined: Feb 2012
Reputation: 6
Location: Germany
Post: #290
(2012-03-28 01:32)TPXBMC Wrote:  Hi,

Does anyone know if there is a way to do an advanced search on the pictures. I haven't found a way yet. For Example:

-Pictures with Tag: Vacation and Tag: Mexico
-Pictures with Tag:Kids Name, Tag Birthday, Date range 2005-2008

So far the Global search does not seem to allow multiple phrases but perhaps I don't know the proper syntax. Even a view by tag within view by tag function would be good.

Thanks.

(2012-03-26 22:16)Xycl Wrote:  Suggestion for further development:
.....

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?

Therefore currently the answer is no.

Main page: https://github.com/Xycl
Repository: Xycl Repository
How to submit a log file: XBMC-Wiki
find
Thread Closed