exif 2.2.2 → 2.2.4
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.
- checksums.yaml +4 -4
- data/ext/exif/data.c +22 -1
- data/ext/exif/exif.c +1 -0
- data/ext/exif/exif_entry_to_ivar.c +22 -18
- data/ext/exif/extconf.rb +16 -0
- data/lib/exif/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94166b206954d71046f6efdc63da23894aac94d69880d3c54370a78eb8e9f2fc
|
4
|
+
data.tar.gz: bebff85412e1f9efabbcee638f48e74b4ce2b68e81e1783d62eac2a8c0fc8258
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c5f19c8fdbfb4cc0b0bf0112c881b93cadf5abf76f98a4100ae03aa4ee31457f9e6c163a8efe00c22d4cec263cf4aab4a9a5297afe1756cebdb1251aad987040
|
7
|
+
data.tar.gz: af9cbecf6b07dd72f721eea8eb8ee7a56ac84cb94dc4b015dfd366648b3cf24c5e1f943d79aac8e3c0ddc2b8d5144a50915a1f11298b294525b2bddcb8e38ded
|
data/ext/exif/data.c
CHANGED
@@ -161,7 +161,27 @@ static const char *attr_readers[] = {"ifds",
|
|
161
161
|
"y_resolution",
|
162
162
|
"ycbcr_coefficients",
|
163
163
|
"ycbcr_positioning",
|
164
|
-
"ycbcr_sub_sampling"
|
164
|
+
"ycbcr_sub_sampling"
|
165
|
+
"body_serial_number",
|
166
|
+
"camera_owner_name",
|
167
|
+
"composite_image",
|
168
|
+
"gps_h_positioning_error",
|
169
|
+
"image_depth",
|
170
|
+
"iso_speed",
|
171
|
+
"iso_speedlatitudeyyy",
|
172
|
+
"iso_speedlatitudezzz",
|
173
|
+
"lens_make",
|
174
|
+
"lens_model",
|
175
|
+
"lens_serial_number",
|
176
|
+
"lens_specification",
|
177
|
+
"offset_time",
|
178
|
+
"offset_time_digitized",
|
179
|
+
"offset_time_original",
|
180
|
+
"recommended_exposure_index",
|
181
|
+
"sensitivity_type",
|
182
|
+
"source_exposure_times_of_composite_image",
|
183
|
+
"source_image_number_of_composite_image",
|
184
|
+
"standard_output_sensitivity"};
|
165
185
|
|
166
186
|
static VALUE new (VALUE self, VALUE input);
|
167
187
|
static VALUE dump(VALUE self);
|
@@ -185,6 +205,7 @@ void init_data(void) {
|
|
185
205
|
int length;
|
186
206
|
|
187
207
|
rb_cExifData = rb_define_class_under(rb_mExif, "Data", rb_cObject);
|
208
|
+
rb_undef_alloc_func(rb_cExifData);
|
188
209
|
length = sizeof(attr_readers) / sizeof(char *);
|
189
210
|
for (int i = 0; i < length; ++i)
|
190
211
|
rb_define_attr(rb_cExifData, attr_readers[i], 1, 0);
|
data/ext/exif/exif.c
CHANGED
@@ -24,5 +24,6 @@ void Init_exif(void) {
|
|
24
24
|
rb_define_class_under(rb_mExif, "UnknownDataType", rb_eError);
|
25
25
|
rb_define_singleton_method(rb_mExif, "const_missing", rb_exif_const_missing,
|
26
26
|
1);
|
27
|
+
rb_define_const(rb_mExif, "LIBEXIF_VERSION", rb_str_new2(LIBEXIF_VERSION));
|
27
28
|
init_data();
|
28
29
|
}
|
@@ -447,6 +447,7 @@ const char *exif_entry_to_ivar(ExifEntry *ee) {
|
|
447
447
|
case EXIF_TAG_GPS_DIFFERENTIAL:
|
448
448
|
return "@gps_differential";
|
449
449
|
break;
|
450
|
+
#ifdef LIBEXIF_0_6_22_OR_HIGHER
|
450
451
|
case EXIF_TAG_BODY_SERIAL_NUMBER:
|
451
452
|
return "@body_serial_number";
|
452
453
|
break;
|
@@ -459,18 +460,6 @@ const char *exif_entry_to_ivar(ExifEntry *ee) {
|
|
459
460
|
case EXIF_TAG_GPS_H_POSITIONING_ERROR:
|
460
461
|
return "@gps_h_positioning_error";
|
461
462
|
break;
|
462
|
-
case EXIF_TAG_IMAGE_DEPTH:
|
463
|
-
return "@image_depth";
|
464
|
-
break;
|
465
|
-
case EXIF_TAG_ISO_SPEED:
|
466
|
-
return "@iso_speed";
|
467
|
-
break;
|
468
|
-
case EXIF_TAG_ISO_SPEEDLatitudeYYY:
|
469
|
-
return "@iso_speedlatitudeyyy";
|
470
|
-
break;
|
471
|
-
case EXIF_TAG_ISO_SPEEDLatitudeZZZ:
|
472
|
-
return "@iso_speedlatitudezzz";
|
473
|
-
break;
|
474
463
|
case EXIF_TAG_LENS_MAKE:
|
475
464
|
return "@lens_make";
|
476
465
|
break;
|
@@ -483,6 +472,26 @@ const char *exif_entry_to_ivar(ExifEntry *ee) {
|
|
483
472
|
case EXIF_TAG_LENS_SPECIFICATION:
|
484
473
|
return "@lens_specification";
|
485
474
|
break;
|
475
|
+
case EXIF_TAG_SOURCE_EXPOSURE_TIMES_OF_COMPOSITE_IMAGE:
|
476
|
+
return "@source_exposure_times_of_composite_image";
|
477
|
+
break;
|
478
|
+
case EXIF_TAG_SOURCE_IMAGE_NUMBER_OF_COMPOSITE_IMAGE:
|
479
|
+
return "@source_image_number_of_composite_image";
|
480
|
+
break;
|
481
|
+
#endif
|
482
|
+
#ifdef LIBEXIF_0_6_23_OR_HIGHER
|
483
|
+
case EXIF_TAG_IMAGE_DEPTH:
|
484
|
+
return "@image_depth";
|
485
|
+
break;
|
486
|
+
case EXIF_TAG_ISO_SPEED:
|
487
|
+
return "@iso_speed";
|
488
|
+
break;
|
489
|
+
case EXIF_TAG_ISO_SPEEDLatitudeYYY:
|
490
|
+
return "@iso_speedlatitudeyyy";
|
491
|
+
break;
|
492
|
+
case EXIF_TAG_ISO_SPEEDLatitudeZZZ:
|
493
|
+
return "@iso_speedlatitudezzz";
|
494
|
+
break;
|
486
495
|
case EXIF_TAG_OFFSET_TIME:
|
487
496
|
return "@offset_time";
|
488
497
|
break;
|
@@ -498,15 +507,10 @@ const char *exif_entry_to_ivar(ExifEntry *ee) {
|
|
498
507
|
case EXIF_TAG_SENSITIVITY_TYPE:
|
499
508
|
return "@sensitivity_type";
|
500
509
|
break;
|
501
|
-
case EXIF_TAG_SOURCE_EXPOSURE_TIMES_OF_COMPOSITE_IMAGE:
|
502
|
-
return "@source_exposure_times_of_composite_image";
|
503
|
-
break;
|
504
|
-
case EXIF_TAG_SOURCE_IMAGE_NUMBER_OF_COMPOSITE_IMAGE:
|
505
|
-
return "@source_image_number_of_composite_image";
|
506
|
-
break;
|
507
510
|
case EXIF_TAG_STANDARD_OUTPUT_SENSITIVITY:
|
508
511
|
return "@standard_output_sensitivity";
|
509
512
|
break;
|
513
|
+
#endif
|
510
514
|
}
|
511
515
|
return 0;
|
512
516
|
}
|
data/ext/exif/extconf.rb
CHANGED
@@ -5,4 +5,20 @@ $CFLAGS << ' -std=c99 '
|
|
5
5
|
pkg_config('libexif')
|
6
6
|
have_library('exif')
|
7
7
|
have_header('libexif/exif-data.h')
|
8
|
+
|
9
|
+
checking_for 'libexif >= 0.6.22' do
|
10
|
+
if try_const(%w[EXIF_TAG_LENS_SPECIFICATION ExifTag], 'libexif/exif-tag.h')
|
11
|
+
append_cflags('-D LIBEXIF_0_6_22_OR_HIGHER')
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
checking_for 'libexif >= 0.6.23' do
|
16
|
+
if try_const(%w[EXIF_TAG_IMAGE_DEPTH ExifTag], 'libexif/exif-tag.h')
|
17
|
+
append_cflags('-D LIBEXIF_0_6_23_OR_HIGHER')
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
libexif_version = pkg_config('libexif', 'modversion') || 'unknown'
|
22
|
+
append_cflags("-D LIBEXIF_VERSION='\"#{libexif_version}\"'")
|
23
|
+
|
8
24
|
create_makefile('exif/exif')
|
data/lib/exif/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: exif
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jian Weihang
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-01-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -85,7 +85,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
85
85
|
- !ruby/object:Gem::Version
|
86
86
|
version: '0'
|
87
87
|
requirements: []
|
88
|
-
rubygems_version: 3.
|
88
|
+
rubygems_version: 3.4.2
|
89
89
|
signing_key:
|
90
90
|
specification_version: 4
|
91
91
|
summary: Ruby EXIF reader written in C extension.
|