Compatibility with Tonfotos? (and Google Picasa)

Tonfotos is a similar photo library application that uses a distributed database of ini files, similar to Google Picasa, to track photo tags and faces. I haven’t had a chance to test Aspect, but since it is in beta, would it be possible to integrate with Tonfotos (and Google Picasa, too, since it uses the same style of tagging)?

Contents of a sample tonfotos.ini:

{
	"files": {
		"ROUND THE WORLD 2 180.jpg": {
			"faces": {
				"076415": {
					"t": 1696765139560,
					"v": {
						"l": 0.07669390738010406,
						"t": 0.4155104160308838,
						"w": 0.0917203351855278,
						"h": 0.12229377776384354,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337cdc50"
					}
				}
			}
		},
		"ROUND THE WORLD 2 129.jpg": {
			"faces": {
				"298567": {
					"t": 1696765139560,
					"v": {
						"l": 0.2989841401576996,
						"t": 0.5672848224639893,
						"w": 0.04370567947626114,
						"h": 0.05827423930168152,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337cdc50"
					}
				}
			}
		},
		"ROUND THE WORLD 2 123.jpg": {
			"faces": {
				"444435": {
					"t": 1696765139560,
					"v": {
						"l": 0.44403523206710815,
						"t": 0.4351375102996826,
						"w": 0.07447551190853119,
						"h": 0.09930068254470825,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337cdc50"
					}
				}
			}
		},
		"ROUND THE WORLD 2 177.jpg": {
			"faces": {
				"575366": {
					"t": 1696765312677,
					"v": {
						"l": 0.5750929117202759,
						"t": 0.3663922846317291,
						"w": 0.05521804839372635,
						"h": 0.07362406700849533,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337ce7d2"
					}
				}
			}
		},
		"ROUND THE WORLD 2 198.jpg": {
			"faces": {
				"363479": {
					"t": 1696766388181,
					"v": {
						"l": 0.36323997378349304,
						"t": 0.479753315448761,
						"w": 0.027857711538672447,
						"h": 0.03714361786842346,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337d5be1"
					}
				},
				"629401": {
					"t": 1696765863917,
					"v": {
						"l": 0.6292466521263123,
						"t": 0.4014911353588104,
						"w": 0.0352792888879776,
						"h": 0.047039054334163666,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337ce7e9"
					}
				}
			}
		},
		"ROUND THE WORLD 2 167.jpg": {
			"faces": {
				"484630": {
					"t": 1696766389641,
					"v": {
						"l": 0.48496299982070923,
						"t": 0.6306974291801453,
						"w": 0.11699849367141724,
						"h": 0.15599799156188965,
						"p": "tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337d5be1"
					}
				}
			}
		}
	},
	"data": [
		{
			"ids": [
				"tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337cdc50",
				"picasa:92d13f1ba4c30a5a"
			],
			"person": {
				"name": "Grandma Iris"
			}
		},
		{
			"ids": [
				"tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337ce7d2",
				"picasa:d1e98c3c5a7c6c4d"
			],
			"person": {
				"name": "Auntie Kristin"
			}
		},
		{
			"ids": [
				"tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337ce7e9",
				"picasa:bfcd9d24b772a543"
			],
			"person": {
				"name": "Uncle Paul"
			}
		},
		{
			"ids": [
				"tonfotos:1dfa3a4e-25e6-4d49-abf3-168abdfed639:18a337d5be1",
				"picasa:19a96d2238daae61"
			],
			"person": {
				"name": "Camden"
			}
		}
	]
}

Contents of sample .picasa.ini:

[ROUND THE WORLD 2 001.jpg]
IIDLIST_jeanniebaerg_lh=51b3a0e47de327c2
[ROUND THE WORLD 2 228.jpg]
rotate=rotate(3)
[ROUND THE WORLD 2 229.jpg]
rotate=rotate(1)
[Contacts2]
d1e98c3c5a7c6c4d=Auntie Kristin;;
92d13f1ba4c30a5a=Grandma Iris;;
55fdcdc1b38cf4c=Grandpy Sieg;;
19a96d2238daae61=Camden;;
bfcd9d24b772a543=Uncle Paul;;
[ROUND THE WORLD 2 245.jpg]
faces=rect64(591799db6dd1bb26),92d13f1ba4c30a5a;rect64(a2aa8fd6b47babf5),d1e98c3c5a7c6c4d;rect64(859388e39a6caa05),bfcd9d24b772a543
backuphash=17983
[ROUND THE WORLD 2 185.jpg]
faces=rect64(66d101ec894f392e),d1e98c3c5a7c6c4d
backuphash=64269
[ROUND THE WORLD 2 201.jpg]
faces=rect64(604b85227116a043),92d13f1ba4c30a5a;rect64(9c257cf8aac39447),d1e98c3c5a7c6c4d;rect64(84717770956e9291),bfcd9d24b772a543
backuphash=17983
[ROUND THE WORLD 2 203.jpg]
faces=rect64(8e381f36afb354ac),d1e98c3c5a7c6c4d;rect64(d30f6000f7cc9add),19a96d2238daae61
backuphash=18431
[ROUND THE WORLD 2 196.jpg]
faces=rect64(68ca8436784b9d3b),92d13f1ba4c30a5a
backuphash=63065
[ROUND THE WORLD 2 197.jpg]
faces=rect64(5f0385226ba79926),92d13f1ba4c30a5a;rect64(7b5b804387cd9447),55fdcdc1b38cf4c
backuphash=50855
[ROUND THE WORLD 2 198.jpg]
faces=rect64(84585de4904b711e),55fdcdc1b38cf4c;rect64(6bda610d7768735b),92d13f1ba4c30a5a
backuphash=50855
[ROUND THE WORLD 2 199.jpg]
faces=rect64(811670978a457f57),92d13f1ba4c30a5a
backuphash=48264
[ROUND THE WORLD 2 234.jpg]
faces=rect64(3f036e7c530f8e7c),92d13f1ba4c30a5a
backuphash=25337
[ROUND THE WORLD 2 247.jpg]
faces=rect64(a18fafdeb3b4cd01),92d13f1ba4c30a5a
backuphash=25337
[ROUND THE WORLD 2 037.jpg]
faces=rect64(609776c870ca90db),92d13f1ba4c30a5a
backuphash=25337
[ROUND THE WORLD 2 038.jpg]
faces=rect64(6f687fbc7eb7987e),92d13f1ba4c30a5a
backuphash=10574
[ROUND THE WORLD 2 005.jpg]
faces=rect64(80807ee38bd5911c),92d13f1ba4c30a5a
backuphash=61278
[ROUND THE WORLD 2 183.jpg]
faces=rect64(67686c1d7c0c8d2b),92d13f1ba4c30a5a
backuphash=21768
[ROUND THE WORLD 2 041.jpg]
faces=rect64(77358ca47ee998c1),92d13f1ba4c30a5a
backuphash=21768
[ROUND THE WORLD 2 010.jpg]
faces=rect64(28804155408067aa),92d13f1ba4c30a5a;rect64(ab7f351cc5ea5f8e),55fdcdc1b38cf4c
backuphash=58834

I started a thread RE: compatibility with Tonfotos on their forum here

This is definitely something to think about. We still have a few features to implement before getting to face detection and object recognition, so this could be a way to somewhat fill that gap and already prepare for full support. I’ve created an internal ticket (#1308) to keep track of this.

1 Like

Regarding tags, we read and store those in the form of standard XMP/ITPC metadata (usually in the form of sidecar files), so that should ideally already be interoperable.

1 Like