exiftool 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/test/Droid X.jpg ADDED
Binary file
@@ -0,0 +1,89 @@
1
+ ---
2
+ :source_file: /Users/mrm/Dropbox/code/exiftoolr/test/Droid X.jpg
3
+ :exif_tool_version: 9.31
4
+ :file_name: Droid X.jpg
5
+ :directory: /Users/mrm/Dropbox/code/exiftoolr/test
6
+ :file_size: 2023 kB
7
+ :file_modify_date: 2012-02-23 05:22:17.000000000 +00:00
8
+ :file_access_date: 2013-07-14 20:25:41.000000000 +00:00
9
+ :file_inode_change_date: 2013-02-16 19:21:58.000000000 +00:00
10
+ :file_permissions: rwxr-xr-x
11
+ :file_type: JPEG
12
+ :mime_type: image/jpeg
13
+ :exif_byte_order: Little-endian (Intel, II)
14
+ :make: Motorola
15
+ :model: DROIDX 6d460001fff80000015d7d330e01c011
16
+ :orientation: Rotate 90 CW
17
+ :x_resolution: 300
18
+ :y_resolution: 300
19
+ :resolution_unit: inches
20
+ :software: 2.2
21
+ :modify_date: 2010-12-08 01:15:37.000000000 +00:00
22
+ :y_cb_cr_positioning: Centered
23
+ :exposure_time: !ruby/object:Rational
24
+ denominator: 15
25
+ numerator: 1
26
+ :f_number: 2.8
27
+ :exposure_program: Program AE
28
+ :iso: 637
29
+ :exif_version: '0220'
30
+ :date_time_original: 2010-12-08 01:15:37.000000000 +00:00
31
+ :create_date: 2010-12-08 01:15:37.000000000 +00:00
32
+ :components_configuration: Cb, Y, Cr, Y
33
+ :compressed_bits_per_pixel: 4
34
+ :shutter_speed_value: !ruby/object:Rational
35
+ denominator: 15
36
+ numerator: 1
37
+ :aperture_value: 2.8
38
+ :brightness_value: -0.8203125
39
+ :exposure_compensation: 0
40
+ :max_aperture_value: 2.8
41
+ :subject_distance: 0 m
42
+ :metering_mode: Center-weighted average
43
+ :light_source: Standard Light A
44
+ :flash: Auto, Did not fire
45
+ :focal_length: 5.0 mm
46
+ :user_comment: ''
47
+ :flashpix_version: '0100'
48
+ :color_space: sRGB
49
+ :exif_image_width: 3264
50
+ :exif_image_height: 1840
51
+ :interop_index: R98 - DCF basic file (sRGB)
52
+ :interop_version: '0100'
53
+ :exposure_index: 637
54
+ :sensing_method: One-chip color area
55
+ :file_source: Digital Camera
56
+ :scene_type: Directly photographed
57
+ :custom_rendered: Custom
58
+ :exposure_mode: Auto
59
+ :white_balance: Auto
60
+ :digital_zoom_ratio: 0
61
+ :focal_length_in35mm_format: 38 mm
62
+ :scene_capture_type: Standard
63
+ :gain_control: High gain up
64
+ :contrast: Normal
65
+ :saturation: Normal
66
+ :sharpness: Normal
67
+ :subject_distance_range: Unknown
68
+ :image_unique_id: ''
69
+ :compression: JPEG (old-style)
70
+ :thumbnail_offset: 2150
71
+ :thumbnail_length: 32586
72
+ :image_width: 3264
73
+ :image_height: 1840
74
+ :encoding_process: Baseline DCT, Huffman coding
75
+ :bits_per_sample: 8
76
+ :color_components: 3
77
+ :y_cb_cr_sub_sampling: YCbCr4:2:0 (2 2)
78
+ :aperture: 2.8
79
+ :image_size: 3264x1840
80
+ :scale_factor35efl: 7.6
81
+ :shutter_speed: !ruby/object:Rational
82
+ denominator: 15
83
+ numerator: 1
84
+ :thumbnail_image: (Binary data 32586 bytes)
85
+ :circle_of_confusion: 0.004 mm
86
+ :fov: 50.7 deg
87
+ :focal_length35efl: '5.0 mm (35 mm equivalent: 38.0 mm)'
88
+ :hyperfocal_distance: 2.24 m
89
+ :light_value: 4.2
data/test/IMG_2452.jpg ADDED
Binary file
@@ -0,0 +1,211 @@
1
+ ---
2
+ :source_file: /Users/mrm/Dropbox/code/exiftoolr/test/IMG_2452.jpg
3
+ :exif_tool_version: 9.31
4
+ :file_name: IMG_2452.jpg
5
+ :directory: /Users/mrm/Dropbox/code/exiftoolr/test
6
+ :file_size: 2.8 MB
7
+ :file_modify_date: 2013-07-14 17:51:04.000000000 +00:00
8
+ :file_access_date: 2013-07-14 20:25:41.000000000 +00:00
9
+ :file_inode_change_date: 2013-07-14 17:51:04.000000000 +00:00
10
+ :file_permissions: rw-r--r--
11
+ :file_type: JPEG
12
+ :mime_type: image/jpeg
13
+ :exif_byte_order: Big-endian (Motorola, MM)
14
+ :image_description: ' '
15
+ :make: Canon
16
+ :model: Canon PowerShot SD980 IS
17
+ :orientation: Horizontal (normal)
18
+ :x_resolution: 72
19
+ :y_resolution: 72
20
+ :resolution_unit: inches
21
+ :software: QuickTime 7.6.6
22
+ :modify_date: 2011-07-06 20:41:11.000000000 +00:00
23
+ :host_computer: Mac OS X 10.6.8
24
+ :y_cb_cr_positioning: Co-sited
25
+ :exposure_time: !ruby/object:Rational
26
+ denominator: 800
27
+ numerator: 1
28
+ :f_number: 2.8
29
+ :iso: 160
30
+ :exif_version: '0220'
31
+ :date_time_original: 2011-07-06 09:46:45.000000000 +00:00
32
+ :create_date: 2011-07-06 09:46:45.000000000 +00:00
33
+ :components_configuration: Y, Cb, Cr, -
34
+ :compressed_bits_per_pixel: 3
35
+ :shutter_speed_value: !ruby/object:Rational
36
+ denominator: 807
37
+ numerator: 1
38
+ :aperture_value: 2.8
39
+ :max_aperture_value: 2.8
40
+ :flash: Auto, Did not fire
41
+ :focal_length: 4.3 mm
42
+ :warning: '[minor] Adjusted MakerNotes base by 50'
43
+ :macro_mode: Normal
44
+ :self_timer: 'Off'
45
+ :quality: Fine
46
+ :canon_flash_mode: Red-eye reduction (Auto)
47
+ :continuous_drive: Single
48
+ :focus_mode: Single
49
+ :record_mode: JPEG
50
+ :canon_image_size: Widescreen
51
+ :easy_mode: Full auto
52
+ :digital_zoom: None
53
+ :contrast: Normal
54
+ :saturation: Normal
55
+ :sharpness: 0
56
+ :camera_iso: Auto
57
+ :metering_mode: Evaluative
58
+ :focus_range: Auto
59
+ :af_point: Face Detect
60
+ :canon_exposure_mode: Easy
61
+ :lens_type: Unknown (-1)
62
+ :max_focal_length: 21.5 mm
63
+ :min_focal_length: 4.3 mm
64
+ :focal_units: 1000/mm
65
+ :max_aperture: 2.8
66
+ :min_aperture: 8
67
+ :flash_bits: (none)
68
+ :focus_continuous: Continuous
69
+ :ae_setting: Normal AE
70
+ :image_stabilization: 'On'
71
+ :zoom_source_width: 4000
72
+ :zoom_target_width: 4000
73
+ :spot_metering_mode: Center
74
+ :manual_flash_output: n/a
75
+ :focal_type: Zoom
76
+ :focal_plane_x_size: 6.35 mm
77
+ :focal_plane_y_size: 3.56 mm
78
+ :auto_iso: 148
79
+ :base_iso: 100
80
+ :measured_ev: 13.25
81
+ :target_aperture: 2.8
82
+ :target_exposure_time: !ruby/object:Rational
83
+ denominator: 807
84
+ numerator: 1
85
+ :exposure_compensation: 0
86
+ :white_balance: Auto
87
+ :slow_shutter: 'Off'
88
+ :sequence_number: 0
89
+ :optical_zoom_code: 0
90
+ :flash_guide_number: 0
91
+ :flash_exposure_comp: 0
92
+ :auto_exposure_bracketing: 'Off'
93
+ :aeb_bracket_value: 0
94
+ :control_mode: Camera Local Control
95
+ :focus_distance_upper: 65.53 m
96
+ :focus_distance_lower: 0 m
97
+ :bulb_duration: 0
98
+ :camera_type: Compact
99
+ :auto_rotate: Rotate 270 CW
100
+ :nd_filter: 'Off'
101
+ :self_timer2: 0
102
+ :flash_output: 0
103
+ :canon_image_type: IMG:PowerShot SD980 IS JPEG
104
+ :canon_firmware_version: Firmware Version 1.01
105
+ :file_number: 132-2452
106
+ :owner_name: ''
107
+ :rotation: 270
108
+ :camera_temperature: 29 C
109
+ :canon_model_id: PowerShot SD980 IS / Digital IXUS 200 IS / IXY Digital 930 IS
110
+ :af_area_mode: Multi-point AF or AI AF
111
+ :num_af_points: 9
112
+ :valid_af_points: 9
113
+ :canon_image_width: 4000
114
+ :canon_image_height: 2248
115
+ :af_image_width: 1000
116
+ :af_image_height: 100
117
+ :af_area_widths: 135 135 135 135 135 135 135 135 135
118
+ :af_area_heights: 18 18 18 18 18 18 18 18 18
119
+ :af_area_x_positions: -135 0 135 -135 0 135 -135 0 135
120
+ :af_area_y_positions: -18 -18 -18 0 0 0 18 18 18
121
+ :af_points_in_focus: 4
122
+ :primary_af_point: 4
123
+ :thumbnail_image_valid_area: 0 159 15 104
124
+ :date_stamp_mode: 'Off'
125
+ :my_color_mode: 'Off'
126
+ :firmware_revision: 1.01 rev 3.00
127
+ :categories: (none)
128
+ :intelligent_contrast: 'Off'
129
+ :image_unique_id: a3154f6d7ed923fe22415586cb3f8922
130
+ :vrd_offset: 0
131
+ :user_comment: ''
132
+ :flashpix_version: '0100'
133
+ :color_space: sRGB
134
+ :exif_image_width: 4000
135
+ :exif_image_height: 2248
136
+ :focal_plane_x_resolution: 16393.44262
137
+ :focal_plane_y_resolution: 12284.15301
138
+ :focal_plane_resolution_unit: inches
139
+ :sensing_method: One-chip color area
140
+ :file_source: Digital Camera
141
+ :custom_rendered: Normal
142
+ :exposure_mode: Auto
143
+ :digital_zoom_ratio: 1
144
+ :scene_capture_type: Standard
145
+ :compression: JPEG (old-style)
146
+ :thumbnail_offset: 3480
147
+ :thumbnail_length: 4627
148
+ :comment: |
149
+ AppleMark
150
+ :image_width: 2248
151
+ :image_height: 4000
152
+ :encoding_process: Baseline DCT, Huffman coding
153
+ :bits_per_sample: 8
154
+ :color_components: 3
155
+ :y_cb_cr_sub_sampling: YCbCr4:2:2 (2 1)
156
+ :profile_cmm_type: Lino
157
+ :profile_version: 2.1.0
158
+ :profile_class: Display Device Profile
159
+ :color_space_data: 'RGB '
160
+ :profile_connection_space: 'XYZ '
161
+ :profile_date_time: 1998-02-09 06:49:00.000000000 +00:00
162
+ :profile_file_signature: acsp
163
+ :primary_platform: Microsoft Corporation
164
+ :cmm_flags: Not Embedded, Independent
165
+ :device_manufacturer: 'IEC '
166
+ :device_model: sRGB
167
+ :device_attributes: Reflective, Glossy, Positive, Color
168
+ :rendering_intent: Perceptual
169
+ :connection_space_illuminant: 0.9642 1 0.82491
170
+ :profile_creator: 'HP '
171
+ :profile_id: 0
172
+ :profile_copyright: Copyright (c) 1998 Hewlett-Packard Company
173
+ :profile_description: sRGB IEC61966-2.1
174
+ :media_white_point: 0.95045 1 1.08905
175
+ :media_black_point: 0 0 0
176
+ :red_matrix_column: 0.43607 0.22249 0.01392
177
+ :green_matrix_column: 0.38515 0.71687 0.09708
178
+ :blue_matrix_column: 0.14307 0.06061 0.7141
179
+ :device_mfg_desc: IEC http://www.iec.ch
180
+ :device_model_desc: IEC 61966-2.1 Default RGB colour space - sRGB
181
+ :viewing_cond_desc: Reference Viewing Condition in IEC61966-2.1
182
+ :viewing_cond_illuminant: 19.6445 20.3718 16.8089
183
+ :viewing_cond_surround: 3.92889 4.07439 3.36179
184
+ :viewing_cond_illuminant_type: D50
185
+ :luminance: 76.03647 80 87.12462
186
+ :measurement_observer: CIE 1931
187
+ :measurement_backing: 0 0 0
188
+ :measurement_geometry: Unknown (0)
189
+ :measurement_flare: 0.999%
190
+ :measurement_illuminant: D65
191
+ :technology: Cathode Ray Tube Display
192
+ :red_trc: (Binary data 2060 bytes)
193
+ :green_trc: (Binary data 2060 bytes)
194
+ :blue_trc: (Binary data 2060 bytes)
195
+ :aperture: 2.8
196
+ :drive_mode: Single-frame Shooting
197
+ :image_size: 2248x4000
198
+ :lens: 4.3 - 21.5 mm
199
+ :lens_id: Unknown 4-21mm
200
+ :scale_factor35efl: 5.6
201
+ :shooting_mode: Full auto
202
+ :shutter_speed: !ruby/object:Rational
203
+ denominator: 800
204
+ numerator: 1
205
+ :thumbnail_image: (Binary data 4627 bytes)
206
+ :circle_of_confusion: 0.005 mm
207
+ :fov: 73.7 deg
208
+ :focal_length35efl: '4.3 mm (35 mm equivalent: 24.0 mm)'
209
+ :hyperfocal_distance: 1.23 m
210
+ :lens35efl: '4.3 - 21.5 mm (35 mm equivalent: 24.0 - 120.1 mm)'
211
+ :light_value: 11.9
@@ -0,0 +1,87 @@
1
+ require 'test_helper'
2
+
3
+ describe Exiftool do
4
+
5
+ DUMP_RESULTS = false
6
+
7
+ it 'raises NoSuchFile for missing files' do
8
+ proc { Exiftool.new('no/such/file') }.must_raise Exiftool::NoSuchFile
9
+ end
10
+
11
+ it 'raises NotAFile for directories' do
12
+ proc { Exiftool.new('lib') }.must_raise Exiftool::NotAFile
13
+ end
14
+
15
+ it 'no-ops with no files' do
16
+ e = Exiftool.new([])
17
+ e.errors?.must_be_false
18
+ end
19
+
20
+ it 'has errors with files without EXIF headers' do
21
+ e = Exiftool.new('Gemfile')
22
+ e.errors?.must_be_true
23
+ end
24
+
25
+ describe 'single-get' do
26
+ it 'responds with known correct responses' do
27
+ Dir['test/*.jpg'].each do |filename|
28
+ e = Exiftool.new(filename)
29
+ validate_result(e, filename)
30
+ end
31
+ end
32
+ end
33
+
34
+ describe 'multi-get' do
35
+ def test_multi_matches
36
+ filenames = Dir['**/*.jpg'].to_a
37
+ e = Exiftool.new(filenames)
38
+ filenames.each { |f| validate_result(e.result_for(f), f) }
39
+ end
40
+ end
41
+
42
+ def validate_result(result, filename)
43
+ yaml_file = "#{filename}.yaml"
44
+ exif = result.to_hash
45
+ File.open(yaml_file, 'w') { |out| YAML.dump(exif, out) } if DUMP_RESULTS
46
+ e = File.open(yaml_file) { |f| YAML::load(f) }
47
+ exif.keys.each do |k|
48
+ next if ignorable_key?(k)
49
+ expected = e[k]
50
+ next if expected.nil? # older version of exiftool
51
+ actual = exif[k]
52
+ if expected.is_a?(String)
53
+ expected.downcase!
54
+ actual.downcase!
55
+ end
56
+ puts "Key '#{k}' was incorrect for #{filename}" if expected != actual
57
+ end
58
+ end
59
+
60
+ # These are expected to be different on travis, due to different paths, filesystems, or
61
+ # exiftool version differences.
62
+ # fov and hyperfocal_distance, for example, are different between v8 and v9.
63
+ IGNORABLE_KEYS = [
64
+ :circle_of_confusion,
65
+ :create_date,
66
+ :date_time_original,
67
+ :directory,
68
+ :exif_tool_version,
69
+ :file_access_date,
70
+ :file_modify_date,
71
+ :file_permissions,
72
+ :fov,
73
+ :hyperfocal_distance,
74
+ :modify_date,
75
+ :nd_filter,
76
+ :source_file
77
+ ]
78
+
79
+ IGNORABLE_PATTERNS = [
80
+ /.*\-ml-\w\w-\w\w$/, # < translatable
81
+ /35efl$/ # < 35mm Effective focal length, whose calculation was changed between v8 and v9.
82
+ ]
83
+
84
+ def ignorable_key?(key)
85
+ IGNORABLE_KEYS.include?(key) || IGNORABLE_PATTERNS.any? { |ea| key.to_s =~ ea }
86
+ end
87
+ end
data/test/faces.jpg ADDED
Binary file
@@ -0,0 +1,318 @@
1
+ ---
2
+ :source_file: /Users/mrm/Dropbox/code/exiftoolr/test/faces.jpg
3
+ :exif_tool_version: 9.31
4
+ :file_name: faces.jpg
5
+ :directory: /Users/mrm/Dropbox/code/exiftoolr/test
6
+ :file_size: 3.8 MB
7
+ :file_modify_date: 2013-07-14 06:00:41.000000000 +00:00
8
+ :file_access_date: 2013-07-14 20:25:41.000000000 +00:00
9
+ :file_inode_change_date: 2013-07-14 06:01:42.000000000 +00:00
10
+ :file_permissions: rw-r--r--
11
+ :file_type: JPEG
12
+ :mime_type: image/jpeg
13
+ :exif_byte_order: Little-endian (Intel, II)
14
+ :make: Canon
15
+ :model: Canon EOS 20D
16
+ :orientation: Horizontal (normal)
17
+ :x_resolution: 72
18
+ :y_resolution: 72
19
+ :resolution_unit: inches
20
+ :software: Picasa
21
+ :modify_date: 2012-02-15 22:58:07.000000000 +00:00
22
+ :y_cb_cr_positioning: Co-sited
23
+ :exposure_time: !ruby/object:Rational
24
+ denominator: 4000
25
+ numerator: 1
26
+ :f_number: 4.0
27
+ :exposure_program: Not Defined
28
+ :iso: 400
29
+ :exif_version: '0221'
30
+ :date_time_original: 2005-11-26 14:20:34.000000000 +00:00
31
+ :create_date: 2005-11-26 14:20:34.000000000 +00:00
32
+ :components_configuration: Y, Cb, Cr, -
33
+ :shutter_speed_value: !ruby/object:Rational
34
+ denominator: 4000
35
+ numerator: 1
36
+ :aperture_value: 4.0
37
+ :flash: Off, Did not fire
38
+ :focal_length: 17.0 mm
39
+ :macro_mode: Normal
40
+ :self_timer: 'Off'
41
+ :quality: Fine
42
+ :canon_flash_mode: 'Off'
43
+ :continuous_drive: Single
44
+ :focus_mode: One-shot AF
45
+ :record_mode: JPEG
46
+ :canon_image_size: Large
47
+ :easy_mode: Manual
48
+ :digital_zoom: None
49
+ :contrast: Normal
50
+ :saturation: Normal
51
+ :sharpness: 0
52
+ :metering_mode: Center-weighted average
53
+ :focus_range: Not Known
54
+ :canon_exposure_mode: Depth-of-field AE
55
+ :lens_type: Unknown (-1)
56
+ :max_focal_length: 40 mm
57
+ :min_focal_length: 17 mm
58
+ :focal_units: 1/mm
59
+ :flash_activity: 0
60
+ :flash_bits: (none)
61
+ :focus_continuous: Single
62
+ :zoom_source_width: 0
63
+ :zoom_target_width: 0
64
+ :photo_effect: 'Off'
65
+ :manual_flash_output: n/a
66
+ :focal_type: Zoom
67
+ :focal_plane_x_size: 23.04 mm
68
+ :focal_plane_y_size: 15.37 mm
69
+ :auto_iso: 100
70
+ :base_iso: 400
71
+ :measured_ev: 14.12
72
+ :target_aperture: 4
73
+ :target_exposure_time: !ruby/object:Rational
74
+ denominator: 4008
75
+ numerator: 1
76
+ :exposure_compensation: 0
77
+ :white_balance: Auto
78
+ :slow_shutter: None
79
+ :sequence_number: 0
80
+ :optical_zoom_code: n/a
81
+ :flash_guide_number: 0
82
+ :flash_exposure_comp: +2/3
83
+ :auto_exposure_bracketing: 'Off'
84
+ :aeb_bracket_value: 0
85
+ :control_mode: Camera Local Control
86
+ :measured_ev2: 14.125
87
+ :bulb_duration: 0
88
+ :camera_type: EOS Mid-range
89
+ :auto_rotate: None
90
+ :nd_filter: n/a
91
+ :self_timer2: 0
92
+ :canon_image_type: Canon EOS 20D
93
+ :canon_firmware_version: Firmware 2.0.3
94
+ :owner_name: unknown
95
+ :serial_number: 0720413239
96
+ :set_function_when_shooting: Change quality
97
+ :long_exposure_noise_reduction: 'On'
98
+ :flash_sync_speed_av: Auto
99
+ :shutter-ae_lock: AF/AE lock
100
+ :af_assist_beam: Emits
101
+ :exposure_level_increments: 1/3 Stop
102
+ :flash_firing: Fires
103
+ :iso_expansion: 'Off'
104
+ :aeb_sequence_auto_cancel: 0,-,+/Enabled
105
+ :superimposed_display: 'On'
106
+ :menu_button_display_position: Previous (top if power off)
107
+ :mirror_lockup: Disable
108
+ :af_point_selection_method: Normal
109
+ :ettlii: Evaluative
110
+ :shutter_curtain_sync: 1st-curtain sync
111
+ :safety_shift_in_av_or_tv: Enable
112
+ :lens_af_stop_button: ONE SHOT <-> AI SERVO
113
+ :add_original_decision_data: 'On'
114
+ :canon_model_id: EOS 20D
115
+ :num_af_points: 9
116
+ :valid_af_points: 9
117
+ :canon_image_width: 3504
118
+ :canon_image_height: 2336
119
+ :af_image_width: 3504
120
+ :af_image_height: 2336
121
+ :af_area_width: 78
122
+ :af_area_height: 78
123
+ :af_area_x_positions: 8 -555 571 -931 8 947 -555 571 8
124
+ :af_area_y_positions: 504 270 270 4 4 4 -262 -262 -496
125
+ :af_points_in_focus: 0,1,2,3,4,5,6,7,8
126
+ :thumbnail_image_valid_area: 0 159 7 112
127
+ :serial_number_format: Format 2
128
+ :original_decision_data_offset: 3968887
129
+ :file_number: 326-2647
130
+ :bracket_mode: 'Off'
131
+ :bracket_value: 0
132
+ :bracket_shot_number: 0
133
+ :long_exposure_noise_reduction2: 'Off'
134
+ :wb_bracket_mode: 'Off'
135
+ :wb_bracket_value_ab: 0
136
+ :wb_bracket_value_gm: 0
137
+ :filter_effect: None
138
+ :toning_effect: None
139
+ :tone_curve: Standard
140
+ :sharpness_frequency: n/a
141
+ :sensor_red_level: 0
142
+ :sensor_blue_level: 0
143
+ :white_balance_red: 0
144
+ :white_balance_blue: 0
145
+ :color_temperature: 4300
146
+ :picture_style: None
147
+ :digital_gain: 0
148
+ :wb_shift_ab: 0
149
+ :wb_shift_gm: 0
150
+ :measured_rggb: 641 1024 1024 660
151
+ :vrd_offset: 0
152
+ :sensor_width: 3596
153
+ :sensor_height: 2360
154
+ :sensor_left_border: 84
155
+ :sensor_top_border: 19
156
+ :sensor_right_border: 3587
157
+ :sensor_bottom_border: 2354
158
+ :black_mask_left_border: 0
159
+ :black_mask_top_border: 0
160
+ :black_mask_right_border: 0
161
+ :black_mask_bottom_border: 0
162
+ :wb_rggb_levels_as_shot: 1822 1015 1015 1709
163
+ :color_temp_as_shot: 4599
164
+ :wb_rggb_levels_auto: 1822 1023 1023 1709
165
+ :color_temp_auto: 4599
166
+ :wb_rggb_levels_daylight: 1933 1023 1023 1607
167
+ :color_temp_daylight: 5200
168
+ :wb_rggb_levels_shade: 2215 1023 1023 1341
169
+ :color_temp_shade: 7000
170
+ :wb_rggb_levels_cloudy: 2087 1023 1023 1459
171
+ :color_temp_cloudy: 6000
172
+ :wb_rggb_levels_tungsten: 1382 1023 1023 2574
173
+ :color_temp_tungsten: 3203
174
+ :wb_rggb_levels_fluorescent: 1743 1023 1023 2205
175
+ :color_temp_fluorescent: 3961
176
+ :wb_rggb_levels_flash: 2112 1023 1023 1414
177
+ :color_temp_flash: 6303
178
+ :wb_rggb_levels_custom1: 1096 1023 1023 2793
179
+ :color_temp_custom1: 2694
180
+ :wb_rggb_levels_custom2: 1734 1023 1023 1901
181
+ :color_temp_custom2: 4301
182
+ :color_tone: Normal
183
+ :user_comment: ''
184
+ :flashpix_version: '0100'
185
+ :color_space: sRGB
186
+ :exif_image_width: 3504
187
+ :exif_image_height: 2336
188
+ :interop_index: R98 - DCF basic file (sRGB)
189
+ :interop_version: '0100'
190
+ :focal_plane_x_resolution: 3959.322034
191
+ :focal_plane_y_resolution: 3959.322034
192
+ :focal_plane_resolution_unit: inches
193
+ :custom_rendered: Normal
194
+ :exposure_mode: Auto
195
+ :scene_capture_type: Standard
196
+ :compression: JPEG (old-style)
197
+ :thumbnail_offset: 4036
198
+ :thumbnail_length: 12170
199
+ :xmp_toolkit: XMP Core 5.1.2
200
+ :region_applied_to_dimensions_w: 3504
201
+ :region_applied_to_dimensions_h: 2336
202
+ :region_applied_to_dimensions_unit: pixel
203
+ :region_name:
204
+ - Matthew McEachen
205
+ - Karen McEachen
206
+ - Ruth McEachen
207
+ - James McEachen
208
+ - Jamie McEachen
209
+ :region_type:
210
+ - Face
211
+ - Face
212
+ - Face
213
+ - Face
214
+ - Face
215
+ :region_area_x:
216
+ - 0.549658
217
+ - 0.858162
218
+ - 0.730736
219
+ - 0.453196
220
+ - 0.118579
221
+ :region_area_y:
222
+ - 0.248716
223
+ - 0.486301
224
+ - 0.243365
225
+ - 0.360873
226
+ - 0.466182
227
+ :region_area_w:
228
+ - 0.0667808
229
+ - 0.103881
230
+ - 0.0687785
231
+ - 0.0753424
232
+ - 0.11387
233
+ :region_area_h:
234
+ - 0.119007
235
+ - 0.1875
236
+ - 0.12286
237
+ - 0.101884
238
+ - 0.189212
239
+ :region_area_unit:
240
+ - normalized
241
+ - normalized
242
+ - normalized
243
+ - normalized
244
+ - normalized
245
+ :profile_cmm_type: appl
246
+ :profile_version: 2.2.0
247
+ :profile_class: Input Device Profile
248
+ :color_space_data: 'RGB '
249
+ :profile_connection_space: 'XYZ '
250
+ :profile_date_time: 2003-07-01 00:00:00.000000000 +00:00
251
+ :profile_file_signature: acsp
252
+ :primary_platform: Apple Computer Inc.
253
+ :cmm_flags: Not Embedded, Independent
254
+ :device_manufacturer: appl
255
+ :device_model: ''
256
+ :device_attributes: Reflective, Glossy, Positive, Color
257
+ :rendering_intent: Perceptual
258
+ :connection_space_illuminant: 0.9642 1 0.82491
259
+ :profile_creator: appl
260
+ :profile_id: 0
261
+ :red_matrix_column: 0.45427 0.24263 0.01482
262
+ :green_matrix_column: 0.35332 0.67441 0.09042
263
+ :blue_matrix_column: 0.15662 0.08336 0.71953
264
+ :media_white_point: 0.95047 1 1.0891
265
+ :chromatic_adaptation: 1.04788 0.02292 -0.0502 0.02957 0.99049 -0.01706 -0.00923 0.01508
266
+ 0.75165
267
+ :red_trc: (Binary data 14 bytes)
268
+ :green_trc: (Binary data 14 bytes)
269
+ :blue_trc: (Binary data 14 bytes)
270
+ :profile_description: Camera RGB Profile
271
+ :profile_copyright: Copyright 2003 Apple Computer Inc., all rights reserved.
272
+ :profile_description_ml: Camera RGB Profile
273
+ :profile_description_ml-es-es: Perfil RGB para Cámara
274
+ :profile_description_ml-da-dk: RGB-beskrivelse til Kamera
275
+ :profile_description_ml-de-de: RGB-Profil für Kameras
276
+ :profile_description_ml-fi-fi: Kameran RGB-profiili
277
+ :profile_description_ml-fr-fu: Profil RVB de l’appareil-photo
278
+ :profile_description_ml-it-it: Profilo RGB Fotocamera
279
+ :profile_description_ml-nl-nl: RGB-profiel Camera
280
+ :profile_description_ml-no-no: RGB-kameraprofil
281
+ :profile_description_ml-pt-br: Perfil RGB de Câmera
282
+ :profile_description_ml-sv-se: RGB-profil för Kamera
283
+ :profile_description_ml-ja-jp: カメラ RGB プロファイル
284
+ :profile_description_ml-ko-kr: 카메라 RGB 프로파일
285
+ :profile_description_ml-zh-tw: 數位相機 RGB 色彩描述
286
+ :profile_description_ml-zh-cn: 相机 RGB 描述文件
287
+ :current_iptc_digest: b443520a10119da99c2550175e6d0efb
288
+ :envelope_record_version: 4
289
+ :coded_character_set: UTF8
290
+ :application_record_version: 4
291
+ :iptc_digest: b443520a10119da99c2550175e6d0efb
292
+ :image_width: 3504
293
+ :image_height: 2336
294
+ :encoding_process: Baseline DCT, Huffman coding
295
+ :bits_per_sample: 8
296
+ :color_components: 3
297
+ :y_cb_cr_sub_sampling: YCbCr4:2:2 (2 1)
298
+ :aperture: 4.0
299
+ :drive_mode: Single-frame Shooting
300
+ :image_size: 3504x2336
301
+ :lens: 17.0 - 40.0 mm
302
+ :lens_id: Unknown 17-40mm
303
+ :warning: Invalid original decision data
304
+ :scale_factor35efl: 1.6
305
+ :shooting_mode: Depth-of-field AE
306
+ :shutter_speed: !ruby/object:Rational
307
+ denominator: 4000
308
+ numerator: 1
309
+ :thumbnail_image: (Binary data 12170 bytes)
310
+ :wb_rggb_levels: 1822 1015 1015 1709
311
+ :blue_balance: 1.683744
312
+ :circle_of_confusion: 0.019 mm
313
+ :fov: 66.9 deg
314
+ :focal_length35efl: '17.0 mm (35 mm equivalent: 27.2 mm)'
315
+ :hyperfocal_distance: 3.85 m
316
+ :lens35efl: '17.0 - 40.0 mm (35 mm equivalent: 27.2 - 64.1 mm)'
317
+ :light_value: 14.0
318
+ :red_balance: 1.795074