-
Notifications
You must be signed in to change notification settings - Fork 0
/
picasa.ini.txt
185 lines (144 loc) · 8.04 KB
/
picasa.ini.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
#==============================================================
# .picasa.ini FILE STRUCTURE
#
# reverse-engineered by Franz Buchinger <fbuchinger@gmail.com>
# licensed to the public domain
#
# Picasa Version(s): 3.8.0
#
# Changelog:
# v0.1: initial release
# ==============================================================
#---------------------------------------------------------
# 1. Picasa Section
#
# The picasa section contains album-related metadata.
# Obviously, it is only present if the image folder was
# converted to a picasa album or if it was created during
# an import of images from a digital camera.
#---------------------------------------------------------
[Picasa]
# the name of the album
name=Foo Bar birthday
# category: "Folders on Disk" for local albums
category=Folders on Disk
#if album was downloaded from picasa web albums, a key in this format
# is stored
P2category=Downloaded Albums~otheruserid
#if the album was uploaded, the username and album id are referenced in this format: <picasa user name>_lh=<picasa web album id>
joedoe_lh=5620038667642797505
#-------------------------------------------------------------
# 2. Contacts Section
#
# the contacts section matches the recognized faces of
# persons to the contacts of the picasa user.
# format <person_id>=<picasa user name>_lh,<picasa contact id>
# TODO: what about not-yet confirmed or unidentified faces
#--------------------------------------------------------------
[Contacts]
d10a8325c557b085=joedoe_lh,cb989580bc43a91
8e62398ebda8c1a5=joedoe_lh,4bd750800fb6a6b8
d736528ba71f2254=joedoe_lh,6dc6a330c4804e8
#---------------------------------------------------------------
# 3. Photo Entries
#
# each photo found in the current directory gets one ini section
# in the file, named after its filename. depending on the file
# type (jpeg vs camera raw), different metadata is stored in the
# section.
#----------------------------------------------------------------
[P7025200.ORF]
# 3.1 BASIC METADATA
#added if image was starred in picasa
star=yes
#caption entered in picasa
#(only added for non-jpeg photos, stored as IPTC Caption for jpeg photos)
caption=dummy
#keywords assigned in picasa
#(only added for non-jpeg photos, stored as IPTC Keywords for jpeg photos)
keywords=beer,empanadas,keyword with spaces
#backuphash - not yet decoded
backuphash=36003
#if the pictures of the album have been uploaded
# a key/value pair in the format IIDLIST_<picasa user name>_lh=<64-bit hexadecimal photo id>
# is added to each photo entry.
IIDLIST_joedoe_lh=4dfe636c9cf4c302
# 3.2 FILTER SETTINGS
# all applied filters per photo are recorded to .picasa.ini
# to provide an editing history and/or an easier undo facility.
# Basic filter key format:
# the filters key of each photo stores a semicolon-separated list of filter entries:
filters=enhance=1;crop64=1,45930000ba03defe;
# each entry follows the format
# <filter identifier>=1,<filter value 1>,<filter value 2>,<..filter value n>;
# Here is a list of valid filter identifiers
#
#|--Identifier-|--------------Parameters-------------|----------Description-----------|---------Example---------------|
#| crop64 | CROP_RECTANGLE* | crop filter, crops the image | crop64=1,30a730d2bf1ab897 |
#| | | according to crop rectangle | |
#| tilt | !TILT_ANGLE,!SCALE | tilts and scales image | tilt=1,0.280632,0.000000 |
#| redeye | | redeye removal | redeye=1 |
#| enhance | | "I'm feeling lucky" enhancement| enhance=1 |
#| autolight | | automatic contrast correction | autolight=1 |
#| autocolor | | automatic color correction | autocolor=1 |
#| retouch | | retouch | retouch=1 |
#| finetune2 | (unidentified params) | finetuning (brightness, | finetune2=1,0.000000,0.000000,|
#| | |highlights, shadows,color temp) | 0.000000,fff7f5f3,0.000000; |
#| unsharp2 | !AMOUNT | unsharp mask filter | unsharp2=1,0.600000; |
#| sepia | | sepia filter (no params) | sepia=1 |
#| bw | | black/white filter (no params) | bw=1 |
#| warm | | warming filter (no params) | bw=1 |
#| grain2 | | film grain filter (no params) | grain2=1 |
#| tint |!!PRESERVE_COLOR ,#TINT COLOR | tint filter | tint=1,79.842102,ffff |
#| sat |!SATURATION | saturation filter | sat=1,0.161800; |
#| radblur |!MOUSE_X,!MOUSE_Y,!SIZE,!AMOUNT | radial blur | radblur=1,0.500000,0.500000, |
#| | | | 0.239766,0.146199; |
#| glow2 |!INTENSITY,!!RADIUS | glow effect | glow2=1,0.650000,3.000000; |
#| ansel |#COLOR | filtered black/white | ansel=1,ffffffff; |
#| radsat |!MOUSE_X,!MOUSE_Y,!RADIUS,!SHARPNESS | radial saturation | radsat=1,0.421652,0.594697, |
#| | | | 0.333333,0.309942; |
#| dir_tint |!MOUSE_X,!MOUSE_Y,!GRADIENT,!SHADOW | directed gradient | dir_tint=1,0.306743,0.401515, |
#| | | | 0.250000,0.250000,ff5bfff3; |
#
# LEGEND:
# ! = float between 0 and 1, precision:6
# !! = float with arbitrary range, precision:6
# # = 32-bit color in hex notation, e.g.: fff7f5f3
# [] = crop rectangle
# 3.3 TEXT EDITS
text=1;136;11;sample text;Aharoni;0.279301,0.503929,0.033333,0.000000;v1,4294967295,4278190080,128.000000,1.000000,0.364486,0.878906,700,258,49152;;
textactive=1
# 3.4. RECOGNIZED FACES
# all recognized faces are stored as bigint crop rectangles in the faces key
# format faces=rect64(CROP_RECTANGLE*), contact_id;
faces=rect64(3f845bcb59418507),8e62398ebda8c1a5;rect64(9eb15e89b6b584c1),d10a8325c557b085
#
# APPENDIX
#
# A.1 DATA TYPES
# A.1.1 CROP BOX RECTANGLES (*)
# Picasa uses a special string format to store crop boxes of
# detected faces and from an applied crop filters. The number encased
# in the rect64() statement is a 64 bit hexadecimal number:
# rect64(3f845bcb59418507)
# break this number into 4 16-bit numbers by using substrings:
# '3f845bcb59418507'.substring(0,4) //"3f84"
# '3f845bcb59418507'.substring(4,8) //"5bcb"
# '3f845bcb59418507'.substring(8,12) // "5941"
# '3f845bcb59418507'.substring(12,16) // "8507"
# convert each obtained substring to an integer and divide it
# by the highest 16-bit number (2^16 = 65536), which should give 0 < results < 1.
# these are the relative coordinates of the crop rectangle (left,top,right,bottom):
# parseInt("3f84",16)/65536 //0.24810791015625 - left
# parseInt("5bcb",16)/65536 //0.3585662841796875 - top
# parseInt("5941",16)/65536 //0.3486480712890625 - right
# parseInt("8507",16)/65536 //0.5196380615234375 - bottom
# for absolute coordinates, multiply the left/right coordinates with
# the image width and the top/bottom coordinates with the image height
# A.1.2 FRACTIONAL FLOATS (!)
# floats between 0 and 1 with a precision of 6 digits, e.g. 0.306743.
# Often used to encode relative settings or mouse positions.
# A.1.3 FLOATS (!!)
# arbitrary floats with a precision of 6 digits
# A.1.4. COLORS (#)
# colors are stored as 32-bit hex string, e.g. ff5bfff3