How to access the Picasa (desktop) database?

FerranB picture FerranB · Sep 23, 2009 · Viewed 18k times · Source

Is there any way to read the Picasa database?

What is the format of the Picasa database?

Are there any APIs to access the database?

Answer

kbs picture kbs · Dec 12, 2011

In Picasa 3 at least, the internal database is stored in a set of .pmp files that sits alongside the .db files, in one of the standard locations for Picasa's application data. On the Mac for instance, it is under $HOME/Library/Application Support/Google/Picasa3/db3

Rather confusingly, the .db files don't contain the database, they are just containers that hold thumbnail previews for various groups of images. They are in the standard Windows thumbs.db format, more information from this answer.

The .pmp files contain the database, and are in a non-standard format. There is a cluster of files per table, with one file per field. The filenames for a given table share the same prefix. For example, the data in the catdata table comes from this set of files:

$ ls -1 catdata_*
catdata_0
catdata_catpri.pmp
catdata_name.pmp
catdata_state.pmp

which has three fields, catpri, name and state. I've written up some partial notes in a blog on the format of these files as of Picasa 3.9.0.522, as well as a small java program to dump out as much of the data as I've been able to understand.