@img/sharp-libvips-dev 1.2.0-rc.2 → 1.2.0-rc.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.
- package/include/fontconfig/fontconfig.h +12 -2
- package/include/glib-2.0/girepository/girepository.h +3 -0
- package/include/glib-2.0/glib/gmarkup.h +4 -0
- package/include/libheif/heif.h +16 -2603
- package/include/libheif/heif_aux_images.h +182 -0
- package/include/libheif/heif_brands.h +373 -0
- package/include/libheif/heif_color.h +357 -0
- package/include/libheif/heif_context.h +329 -0
- package/include/libheif/heif_cxx.h +6 -6
- package/include/libheif/heif_decoding.h +162 -0
- package/include/libheif/heif_encoding.h +391 -0
- package/include/libheif/heif_entity_groups.h +60 -0
- package/include/libheif/heif_error.h +302 -0
- package/include/libheif/heif_image.h +352 -0
- package/include/libheif/heif_image_handle.h +120 -0
- package/include/libheif/heif_items.h +45 -45
- package/include/libheif/heif_library.h +216 -0
- package/include/libheif/heif_metadata.h +133 -0
- package/include/libheif/heif_plugin.h +53 -41
- package/include/libheif/heif_properties.h +73 -36
- package/include/libheif/heif_regions.h +95 -95
- package/include/libheif/heif_security.h +102 -0
- package/include/libheif/heif_sequences.h +577 -0
- package/include/libheif/heif_tai_timestamps.h +202 -0
- package/include/libheif/heif_tiling.h +137 -0
- package/include/libheif/heif_uncompressed.h +109 -0
- package/include/libheif/heif_version.h +2 -2
- package/include/libpng16/png.h +35 -16
- package/include/libpng16/pngconf.h +1 -1
- package/include/libpng16/pnglibconf.h +1 -1
- package/include/libxml2/libxml/parser.h +2 -2
- package/include/libxml2/libxml/xmlerror.h +2 -1
- package/include/libxml2/libxml/xmlversion.h +4 -4
- package/include/pango-1.0/pango/pango-attributes.h +1 -1
- package/include/pango-1.0/pango/pango-features.h +2 -2
- package/include/png.h +35 -16
- package/include/pngconf.h +1 -1
- package/include/pnglibconf.h +1 -1
- package/include/vips/version.h +4 -4
- package/package.json +1 -1
- package/versions.json +7 -7
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* HEIF codec.
|
|
3
|
+
* Copyright (c) 2025 Dirk Farin <dirk.farin@gmail.com>
|
|
4
|
+
*
|
|
5
|
+
* This file is part of libheif.
|
|
6
|
+
*
|
|
7
|
+
* libheif is free software: you can redistribute it and/or modify
|
|
8
|
+
* it under the terms of the GNU Lesser General Public License as
|
|
9
|
+
* published by the Free Software Foundation, either version 3 of
|
|
10
|
+
* the License, or (at your option) any later version.
|
|
11
|
+
*
|
|
12
|
+
* libheif is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
+
* GNU Lesser General Public License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
18
|
+
* along with libheif. If not, see <http://www.gnu.org/licenses/>.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
#ifndef LIBHEIF_HEIF_TAI_TIMESTAMPS_H
|
|
22
|
+
#define LIBHEIF_HEIF_TAI_TIMESTAMPS_H
|
|
23
|
+
|
|
24
|
+
#include <libheif/heif.h>
|
|
25
|
+
|
|
26
|
+
#ifdef __cplusplus
|
|
27
|
+
extern "C" {
|
|
28
|
+
#endif
|
|
29
|
+
|
|
30
|
+
typedef struct heif_tai_clock_info
|
|
31
|
+
{
|
|
32
|
+
uint8_t version;
|
|
33
|
+
|
|
34
|
+
// --- version 1
|
|
35
|
+
|
|
36
|
+
// Standard deviation for timestamp generation process.
|
|
37
|
+
// May be `heif_tai_clock_info_time_uncertainty_unknown` if unknown.
|
|
38
|
+
uint64_t time_uncertainty;
|
|
39
|
+
|
|
40
|
+
// Receptor clock resolution in nanoseconds.
|
|
41
|
+
uint32_t clock_resolution;
|
|
42
|
+
|
|
43
|
+
// Clock drift rate in picoseconds/second when synchronization is stopped.
|
|
44
|
+
// Maybe `heif_tai_clock_info_clock_drift_rate_unknown` if unknown.
|
|
45
|
+
int32_t clock_drift_rate;
|
|
46
|
+
|
|
47
|
+
// Whether clock is synchronized to an atomic source,
|
|
48
|
+
// see the clock_type defines below.
|
|
49
|
+
uint8_t clock_type;
|
|
50
|
+
} heif_tai_clock_info;
|
|
51
|
+
|
|
52
|
+
#define heif_tai_clock_info_time_uncertainty_unknown UINT64_C(0xFFFFFFFFFFFFFFFF)
|
|
53
|
+
#define heif_tai_clock_info_clock_drift_rate_unknown INT32_C(0x7FFFFFFF)
|
|
54
|
+
#define heif_tai_clock_info_clock_type_unknown 0
|
|
55
|
+
#define heif_tai_clock_info_clock_type_not_synchronized_to_atomic_source 1
|
|
56
|
+
#define heif_tai_clock_info_clock_type_synchronized_to_atomic_source 2
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Allocate a new heif_tai_clock_info object and initialize with default values.
|
|
61
|
+
*/
|
|
62
|
+
LIBHEIF_API
|
|
63
|
+
heif_tai_clock_info* heif_tai_clock_info_alloc(void);
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Copies the source object into the destination object.
|
|
67
|
+
* Only the fields that are present in both objects are copied.
|
|
68
|
+
* The version property has to be set in both structs.
|
|
69
|
+
*/
|
|
70
|
+
LIBHEIF_API
|
|
71
|
+
void heif_tai_clock_info_copy(heif_tai_clock_info* dst, const heif_tai_clock_info* src);
|
|
72
|
+
|
|
73
|
+
LIBHEIF_API
|
|
74
|
+
void heif_tai_clock_info_release(heif_tai_clock_info* clock_info);
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
typedef struct heif_tai_timestamp_packet
|
|
78
|
+
{
|
|
79
|
+
uint8_t version;
|
|
80
|
+
|
|
81
|
+
// --- version 1
|
|
82
|
+
|
|
83
|
+
// number of nanoseconds since TAI epoch (1958-01-01T00:00:00.0)
|
|
84
|
+
uint64_t tai_timestamp;
|
|
85
|
+
|
|
86
|
+
// whether the remote and receiptor clocks are in sync
|
|
87
|
+
uint8_t synchronization_state; // bool
|
|
88
|
+
|
|
89
|
+
// whether the receptor clock failed to generate a timestamp
|
|
90
|
+
uint8_t timestamp_generation_failure; // bool
|
|
91
|
+
|
|
92
|
+
// whether the original clock value has been modified
|
|
93
|
+
uint8_t timestamp_is_modified; // bool
|
|
94
|
+
} heif_tai_timestamp_packet;
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Allocate a new heif_tai_timestamp_packet object and initialize with default values.
|
|
98
|
+
*/
|
|
99
|
+
LIBHEIF_API
|
|
100
|
+
heif_tai_timestamp_packet* heif_tai_timestamp_packet_alloc(void);
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Copies the source object into the destination object.
|
|
104
|
+
* Only the fields that are present in both objects are copied.
|
|
105
|
+
* The version property has to be set in both structs.
|
|
106
|
+
*/
|
|
107
|
+
LIBHEIF_API
|
|
108
|
+
void heif_tai_timestamp_packet_copy(heif_tai_timestamp_packet* dst, const heif_tai_timestamp_packet* src);
|
|
109
|
+
|
|
110
|
+
LIBHEIF_API
|
|
111
|
+
void heif_tai_timestamp_packet_release(heif_tai_timestamp_packet*);
|
|
112
|
+
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Creates a new clock info property if it doesn't exist yet.
|
|
117
|
+
* You can only add one tai_clock_info to an image.
|
|
118
|
+
*
|
|
119
|
+
* @param clock_info The TAI clock info to set for the item. This object will be copied.
|
|
120
|
+
* @param out_optional_propertyId Output parameter for the property ID of the tai_clock_info.
|
|
121
|
+
* This parameter may be NULL if the info is not required.
|
|
122
|
+
*/
|
|
123
|
+
LIBHEIF_API
|
|
124
|
+
heif_error heif_item_set_property_tai_clock_info(heif_context* ctx,
|
|
125
|
+
heif_item_id itemId,
|
|
126
|
+
const heif_tai_clock_info* clock_info,
|
|
127
|
+
heif_property_id* out_optional_propertyId);
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Get the heif_tai_clock_info attached to the item.
|
|
131
|
+
* This function allocates a new heif_tai_clock_info and returns it through out_clock.
|
|
132
|
+
*
|
|
133
|
+
* @param out_clock This parameter must not be nullptr. The object returned through this parameter must
|
|
134
|
+
* be released with heif_tai_clock_info_release().
|
|
135
|
+
* If no tai_clock_info property exists for the item, out_clock is set to NULL and
|
|
136
|
+
* no error is returned.
|
|
137
|
+
*/
|
|
138
|
+
LIBHEIF_API
|
|
139
|
+
heif_error heif_item_get_property_tai_clock_info(const heif_context* ctx,
|
|
140
|
+
heif_item_id itemId,
|
|
141
|
+
heif_tai_clock_info** out_clock);
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Creates a new TAI timestamp property if it doesn't exist yet.
|
|
146
|
+
* You can only add one tai_timestamp to an image.
|
|
147
|
+
*
|
|
148
|
+
* @param timestamp The TAI timestamp to set for the item. This object will be copied.
|
|
149
|
+
* @param out_optional_propertyId Output parameter for the property ID of the TAI timestamp.
|
|
150
|
+
* This parameter may be NULL if the info is not required.
|
|
151
|
+
*/
|
|
152
|
+
LIBHEIF_API
|
|
153
|
+
heif_error heif_item_set_property_tai_timestamp(heif_context* ctx,
|
|
154
|
+
heif_item_id itemId,
|
|
155
|
+
const heif_tai_timestamp_packet* timestamp,
|
|
156
|
+
heif_property_id* out_optional_propertyId);
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Get the heif_tai_timestamp_packet attached to the item.
|
|
160
|
+
* This function allocates a new heif_tai_timestamp_packet and returns it through out_timestamp.
|
|
161
|
+
*
|
|
162
|
+
* @param out_timestamp This parameter must not be NULL. The object returned through this parameter must
|
|
163
|
+
* be released with heif_tai_timestamp_packet_release().
|
|
164
|
+
* If no tai_timestamp_packet property exists for the item, *out_timestamp is set to NULL and
|
|
165
|
+
* no error is returned.
|
|
166
|
+
*/
|
|
167
|
+
LIBHEIF_API
|
|
168
|
+
heif_error heif_item_get_property_tai_timestamp(const heif_context* ctx,
|
|
169
|
+
heif_item_id itemId,
|
|
170
|
+
heif_tai_timestamp_packet** out_timestamp);
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* Attach a TAI timestamp to the image.
|
|
174
|
+
* The main use of this function is for image sequences, but it can also be used for still images.
|
|
175
|
+
* If used for still images, note that you also have to set the heif_tai_clock_info to the image item
|
|
176
|
+
* through heif_item_set_property_tai_clock_info().
|
|
177
|
+
*
|
|
178
|
+
* @param timestamp The TAI timestamp to set to the image. This object will be copied.
|
|
179
|
+
*/
|
|
180
|
+
LIBHEIF_API
|
|
181
|
+
heif_error heif_image_set_tai_timestamp(heif_image* img,
|
|
182
|
+
const heif_tai_timestamp_packet* timestamp);
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Get the heif_tai_timestamp_packet attached to the image.
|
|
186
|
+
* The main use of this function is for image sequences, but it can also be used for still images.
|
|
187
|
+
* This function allocates a new heif_tai_timestamp_packet and returns it through out_timestamp.
|
|
188
|
+
*
|
|
189
|
+
* @param out_timestamp This parameter must not be NULL. The object returned through this parameter must
|
|
190
|
+
* be released with heif_tai_timestamp_packet_release().
|
|
191
|
+
* If no tai_timestamp_packet property exists for the image, *out_timestamp is set to NULL and
|
|
192
|
+
* no error is returned.
|
|
193
|
+
*/
|
|
194
|
+
LIBHEIF_API
|
|
195
|
+
heif_error heif_image_get_tai_timestamp(const heif_image* img,
|
|
196
|
+
heif_tai_timestamp_packet** out_timestamp);
|
|
197
|
+
|
|
198
|
+
#ifdef __cplusplus
|
|
199
|
+
}
|
|
200
|
+
#endif
|
|
201
|
+
|
|
202
|
+
#endif //LIBHEIF_HEIF_TAI_TIMESTAMPS_H
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* HEIF codec.
|
|
3
|
+
* Copyright (c) 2017-2025 Dirk Farin <dirk.farin@gmail.com>
|
|
4
|
+
*
|
|
5
|
+
* This file is part of libheif.
|
|
6
|
+
*
|
|
7
|
+
* libheif is free software: you can redistribute it and/or modify
|
|
8
|
+
* it under the terms of the GNU Lesser General Public License as
|
|
9
|
+
* published by the Free Software Foundation, either version 3 of
|
|
10
|
+
* the License, or (at your option) any later version.
|
|
11
|
+
*
|
|
12
|
+
* libheif is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
+
* GNU Lesser General Public License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
18
|
+
* along with libheif. If not, see <http://www.gnu.org/licenses/>.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
#ifndef LIBHEIF_HEIF_TILING_H
|
|
22
|
+
#define LIBHEIF_HEIF_TILING_H
|
|
23
|
+
|
|
24
|
+
#ifdef __cplusplus
|
|
25
|
+
extern "C" {
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
#include <libheif/heif_library.h>
|
|
29
|
+
#include <libheif/heif_error.h>
|
|
30
|
+
#include <libheif/heif_image.h>
|
|
31
|
+
|
|
32
|
+
// forward declaration from other headers
|
|
33
|
+
typedef struct heif_encoder heif_encoder;
|
|
34
|
+
typedef struct heif_encoding_options heif_encoding_options;
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
typedef struct heif_image_tiling
|
|
38
|
+
{
|
|
39
|
+
int version;
|
|
40
|
+
|
|
41
|
+
// --- version 1
|
|
42
|
+
|
|
43
|
+
uint32_t num_columns;
|
|
44
|
+
uint32_t num_rows;
|
|
45
|
+
uint32_t tile_width;
|
|
46
|
+
uint32_t tile_height;
|
|
47
|
+
|
|
48
|
+
uint32_t image_width;
|
|
49
|
+
uint32_t image_height;
|
|
50
|
+
|
|
51
|
+
// Position of the top left tile.
|
|
52
|
+
// Usually, this is (0;0), but if a tiled image is rotated or cropped, it may be that the top left tile should be placed at a negative position.
|
|
53
|
+
// The offsets define this negative shift.
|
|
54
|
+
uint32_t top_offset;
|
|
55
|
+
uint32_t left_offset;
|
|
56
|
+
|
|
57
|
+
uint8_t number_of_extra_dimensions; // 0 for normal images, 1 for volumetric (3D), ...
|
|
58
|
+
uint32_t extra_dimension_size[8]; // size of extra dimensions (first 8 dimensions)
|
|
59
|
+
} heif_image_tiling;
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
// --- decoding ---
|
|
63
|
+
|
|
64
|
+
// If 'process_image_transformations' is true, this returns modified sizes.
|
|
65
|
+
// If it is false, the top_offset and left_offset will always be (0;0).
|
|
66
|
+
LIBHEIF_API
|
|
67
|
+
heif_error heif_image_handle_get_image_tiling(const heif_image_handle* handle, int process_image_transformations, struct heif_image_tiling* out_tiling);
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
// For grid images, return the image item ID of a specific grid tile.
|
|
71
|
+
// If 'process_image_transformations' is true, the tile positions are given in the transformed image coordinate system and
|
|
72
|
+
// are internally mapped to the original image tile positions.
|
|
73
|
+
LIBHEIF_API
|
|
74
|
+
heif_error heif_image_handle_get_grid_image_tile_id(const heif_image_handle* handle,
|
|
75
|
+
int process_image_transformations,
|
|
76
|
+
uint32_t tile_x, uint32_t tile_y,
|
|
77
|
+
heif_item_id* out_tile_item_id);
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
typedef struct heif_decoding_options heif_decoding_options;
|
|
81
|
+
|
|
82
|
+
// The tile position is given in tile indices, not in pixel coordinates.
|
|
83
|
+
// If the image transformations are processed (option->ignore_image_transformations==false), the tile position
|
|
84
|
+
// is given in the transformed coordinates.
|
|
85
|
+
LIBHEIF_API
|
|
86
|
+
heif_error heif_image_handle_decode_image_tile(const heif_image_handle* in_handle,
|
|
87
|
+
heif_image** out_img,
|
|
88
|
+
enum heif_colorspace colorspace,
|
|
89
|
+
enum heif_chroma chroma,
|
|
90
|
+
const heif_decoding_options* options,
|
|
91
|
+
uint32_t tile_x, uint32_t tile_y);
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
// --- encoding ---
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* @brief Encodes an array of images into a grid.
|
|
98
|
+
*
|
|
99
|
+
* @param ctx The file context
|
|
100
|
+
* @param tiles User allocated array of images that will form the grid.
|
|
101
|
+
* @param rows The number of rows in the grid.
|
|
102
|
+
* @param columns The number of columns in the grid.
|
|
103
|
+
* @param encoder Defines the encoder to use. See heif_context_get_encoder_for_format()
|
|
104
|
+
* @param input_options Optional, may be nullptr.
|
|
105
|
+
* @param out_image_handle Returns a handle to the grid. The caller is responsible for freeing it.
|
|
106
|
+
* @return Returns an error if ctx, tiles, or encoder is nullptr. If rows or columns is 0.
|
|
107
|
+
*/
|
|
108
|
+
LIBHEIF_API
|
|
109
|
+
heif_error heif_context_encode_grid(heif_context* ctx,
|
|
110
|
+
heif_image** tiles,
|
|
111
|
+
uint16_t rows,
|
|
112
|
+
uint16_t columns,
|
|
113
|
+
heif_encoder* encoder,
|
|
114
|
+
const heif_encoding_options* input_options,
|
|
115
|
+
heif_image_handle** out_image_handle);
|
|
116
|
+
|
|
117
|
+
LIBHEIF_API
|
|
118
|
+
heif_error heif_context_add_grid_image(heif_context* ctx,
|
|
119
|
+
uint32_t image_width,
|
|
120
|
+
uint32_t image_height,
|
|
121
|
+
uint32_t tile_columns,
|
|
122
|
+
uint32_t tile_rows,
|
|
123
|
+
const heif_encoding_options* encoding_options,
|
|
124
|
+
heif_image_handle** out_grid_image_handle);
|
|
125
|
+
|
|
126
|
+
LIBHEIF_API
|
|
127
|
+
heif_error heif_context_add_image_tile(heif_context* ctx,
|
|
128
|
+
heif_image_handle* tiled_image,
|
|
129
|
+
uint32_t tile_x, uint32_t tile_y,
|
|
130
|
+
const heif_image* image,
|
|
131
|
+
heif_encoder* encoder);
|
|
132
|
+
|
|
133
|
+
#ifdef __cplusplus
|
|
134
|
+
}
|
|
135
|
+
#endif
|
|
136
|
+
|
|
137
|
+
#endif
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* HEIF codec.
|
|
3
|
+
* Copyright (c) 2024-2025 Dirk Farin <dirk.farin@gmail.com>
|
|
4
|
+
*
|
|
5
|
+
* This file is part of libheif.
|
|
6
|
+
*
|
|
7
|
+
* libheif is free software: you can redistribute it and/or modify
|
|
8
|
+
* it under the terms of the GNU Lesser General Public License as
|
|
9
|
+
* published by the Free Software Foundation, either version 3 of
|
|
10
|
+
* the License, or (at your option) any later version.
|
|
11
|
+
*
|
|
12
|
+
* libheif is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
+
* GNU Lesser General Public License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
18
|
+
* along with libheif. If not, see <http://www.gnu.org/licenses/>.
|
|
19
|
+
*/
|
|
20
|
+
|
|
21
|
+
#ifndef LIBHEIF_HEIF_UNCOMPRESSED_H
|
|
22
|
+
#define LIBHEIF_HEIF_UNCOMPRESSED_H
|
|
23
|
+
|
|
24
|
+
#include "libheif/heif.h"
|
|
25
|
+
|
|
26
|
+
#ifdef __cplusplus
|
|
27
|
+
extern "C" {
|
|
28
|
+
#endif
|
|
29
|
+
|
|
30
|
+
/* @file heif_uncompressed.h
|
|
31
|
+
* @brief Functions for adding ISO 23001-17 (uncompressed) images to a HEIF file.
|
|
32
|
+
* Despite its name, this is not limited to uncompressed images.
|
|
33
|
+
* It is also possible to add images with lossless compression methods.
|
|
34
|
+
* See heif_metadata_compression for more information.
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
// --- 'unci' images
|
|
38
|
+
|
|
39
|
+
// This is similar to heif_metadata_compression. We should try to keep the integers compatible, but each enum will just
|
|
40
|
+
// contain the allowed values.
|
|
41
|
+
enum heif_unci_compression
|
|
42
|
+
{
|
|
43
|
+
heif_unci_compression_off = 0,
|
|
44
|
+
//heif_unci_compression_auto = 1,
|
|
45
|
+
//heif_unci_compression_unknown = 2, // only used when reading unknown method from input file
|
|
46
|
+
heif_unci_compression_deflate = 3,
|
|
47
|
+
heif_unci_compression_zlib = 4,
|
|
48
|
+
heif_unci_compression_brotli = 5
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
typedef struct heif_unci_image_parameters
|
|
53
|
+
{
|
|
54
|
+
int version;
|
|
55
|
+
|
|
56
|
+
// --- version 1
|
|
57
|
+
|
|
58
|
+
uint32_t image_width;
|
|
59
|
+
uint32_t image_height;
|
|
60
|
+
|
|
61
|
+
uint32_t tile_width;
|
|
62
|
+
uint32_t tile_height;
|
|
63
|
+
|
|
64
|
+
enum heif_unci_compression compression;
|
|
65
|
+
|
|
66
|
+
// TODO: interleave type, padding
|
|
67
|
+
} heif_unci_image_parameters;
|
|
68
|
+
|
|
69
|
+
LIBHEIF_API
|
|
70
|
+
heif_unci_image_parameters* heif_unci_image_parameters_alloc(void);
|
|
71
|
+
|
|
72
|
+
LIBHEIF_API
|
|
73
|
+
void heif_unci_image_parameters_copy(heif_unci_image_parameters* dst,
|
|
74
|
+
const heif_unci_image_parameters* src);
|
|
75
|
+
|
|
76
|
+
LIBHEIF_API
|
|
77
|
+
void heif_unci_image_parameters_release(heif_unci_image_parameters*);
|
|
78
|
+
|
|
79
|
+
|
|
80
|
+
/*
|
|
81
|
+
* This adds an empty iso23001-17 (uncompressed) image to the HEIF file.
|
|
82
|
+
* The actual image data is added later using heif_context_add_image_tile().
|
|
83
|
+
* If you do not need tiling, you can use heif_context_encode_image() instead.
|
|
84
|
+
* However, this will by default disable any compression and any control about
|
|
85
|
+
* the data layout.
|
|
86
|
+
*
|
|
87
|
+
* @param ctx The file context
|
|
88
|
+
* @param parameters The parameters for the image, must not be NULL.
|
|
89
|
+
* @param encoding_options Optional, may be NULL.
|
|
90
|
+
* @param prototype An image with the same channel configuration as the image data
|
|
91
|
+
* that will be later inserted. The image size need not match this.
|
|
92
|
+
* Must not be NULL.
|
|
93
|
+
* @param out_unci_image_handle Returns a handle to the image. The caller is responsible for freeing it.
|
|
94
|
+
* Must not be NULL because this is required to fill in image data.
|
|
95
|
+
* @return Returns an error if the passed parameters are incorrect.
|
|
96
|
+
* If ISO23001-17 images are not supported, returns heif_error_Unsupported_feature.
|
|
97
|
+
*/
|
|
98
|
+
LIBHEIF_API
|
|
99
|
+
heif_error heif_context_add_empty_unci_image(heif_context* ctx,
|
|
100
|
+
const heif_unci_image_parameters* parameters,
|
|
101
|
+
const heif_encoding_options* encoding_options,
|
|
102
|
+
const heif_image* prototype,
|
|
103
|
+
heif_image_handle** out_unci_image_handle);
|
|
104
|
+
|
|
105
|
+
#ifdef __cplusplus
|
|
106
|
+
}
|
|
107
|
+
#endif
|
|
108
|
+
|
|
109
|
+
#endif
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
#define LIBHEIF_HEIF_VERSION_H
|
|
29
29
|
|
|
30
30
|
/* Numeric representation of the version */
|
|
31
|
-
#define LIBHEIF_NUMERIC_VERSION ((1<<24) | (
|
|
31
|
+
#define LIBHEIF_NUMERIC_VERSION ((1<<24) | (20<<16) | (1<<8) | 0)
|
|
32
32
|
|
|
33
33
|
/* Version string */
|
|
34
|
-
#define LIBHEIF_VERSION "1.
|
|
34
|
+
#define LIBHEIF_VERSION "1.20.1"
|
|
35
35
|
|
|
36
36
|
#define LIBHEIF_PLUGIN_DIRECTORY "/target/lib/libheif"
|
|
37
37
|
|
package/include/libpng16/png.h
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* png.h - header file for PNG reference library
|
|
2
2
|
*
|
|
3
|
-
* libpng version 1.6.
|
|
3
|
+
* libpng version 1.6.50
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2018-2025 Cosmin Truta
|
|
6
6
|
* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
|
|
15
15
|
* libpng versions 0.97, January 1998, through 1.6.35, July 2018:
|
|
16
16
|
* Glenn Randers-Pehrson
|
|
17
|
-
* libpng versions 1.6.36, December 2018, through 1.6.
|
|
17
|
+
* libpng versions 1.6.36, December 2018, through 1.6.50, July 2025:
|
|
18
18
|
* Cosmin Truta
|
|
19
19
|
* See also "Contributing Authors", below.
|
|
20
20
|
*/
|
|
@@ -238,7 +238,7 @@
|
|
|
238
238
|
* ...
|
|
239
239
|
* 1.5.30 15 10530 15.so.15.30[.0]
|
|
240
240
|
* ...
|
|
241
|
-
* 1.6.
|
|
241
|
+
* 1.6.50 16 10650 16.so.16.50[.0]
|
|
242
242
|
*
|
|
243
243
|
* Henceforth the source version will match the shared-library major and
|
|
244
244
|
* minor numbers; the shared-library major version number will be used for
|
|
@@ -274,7 +274,7 @@
|
|
|
274
274
|
*/
|
|
275
275
|
|
|
276
276
|
/* Version information for png.h - this should match the version in png.c */
|
|
277
|
-
#define PNG_LIBPNG_VER_STRING "1.6.
|
|
277
|
+
#define PNG_LIBPNG_VER_STRING "1.6.50"
|
|
278
278
|
#define PNG_HEADER_VERSION_STRING " libpng version " PNG_LIBPNG_VER_STRING "\n"
|
|
279
279
|
|
|
280
280
|
/* The versions of shared library builds should stay in sync, going forward */
|
|
@@ -285,7 +285,7 @@
|
|
|
285
285
|
/* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
|
|
286
286
|
#define PNG_LIBPNG_VER_MAJOR 1
|
|
287
287
|
#define PNG_LIBPNG_VER_MINOR 6
|
|
288
|
-
#define PNG_LIBPNG_VER_RELEASE
|
|
288
|
+
#define PNG_LIBPNG_VER_RELEASE 50
|
|
289
289
|
|
|
290
290
|
/* This should be zero for a public release, or non-zero for a
|
|
291
291
|
* development version.
|
|
@@ -316,7 +316,7 @@
|
|
|
316
316
|
* From version 1.0.1 it is:
|
|
317
317
|
* XXYYZZ, where XX=major, YY=minor, ZZ=release
|
|
318
318
|
*/
|
|
319
|
-
#define PNG_LIBPNG_VER
|
|
319
|
+
#define PNG_LIBPNG_VER 10650 /* 1.6.50 */
|
|
320
320
|
|
|
321
321
|
/* Library configuration: these options cannot be changed after
|
|
322
322
|
* the library has been built.
|
|
@@ -426,7 +426,7 @@ extern "C" {
|
|
|
426
426
|
/* This triggers a compiler error in png.c, if png.c and png.h
|
|
427
427
|
* do not agree upon the version number.
|
|
428
428
|
*/
|
|
429
|
-
typedef char*
|
|
429
|
+
typedef char* png_libpng_version_1_6_50;
|
|
430
430
|
|
|
431
431
|
/* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
|
|
432
432
|
*
|
|
@@ -3303,26 +3303,45 @@ PNG_EXPORT(245, int, png_image_write_to_memory, (png_imagep image, void *memory,
|
|
|
3303
3303
|
* selected at run time.
|
|
3304
3304
|
*/
|
|
3305
3305
|
#ifdef PNG_SET_OPTION_SUPPORTED
|
|
3306
|
+
|
|
3307
|
+
/* HARDWARE: ARM Neon SIMD instructions supported */
|
|
3306
3308
|
#ifdef PNG_ARM_NEON_API_SUPPORTED
|
|
3307
|
-
# define PNG_ARM_NEON
|
|
3309
|
+
# define PNG_ARM_NEON 0
|
|
3308
3310
|
#endif
|
|
3309
|
-
|
|
3310
|
-
|
|
3311
|
+
|
|
3312
|
+
/* SOFTWARE: Force maximum window */
|
|
3313
|
+
#define PNG_MAXIMUM_INFLATE_WINDOW 2
|
|
3314
|
+
|
|
3315
|
+
/* SOFTWARE: Check ICC profile for sRGB */
|
|
3316
|
+
#define PNG_SKIP_sRGB_CHECK_PROFILE 4
|
|
3317
|
+
|
|
3318
|
+
/* HARDWARE: MIPS MSA SIMD instructions supported */
|
|
3311
3319
|
#ifdef PNG_MIPS_MSA_API_SUPPORTED
|
|
3312
|
-
# define PNG_MIPS_MSA
|
|
3320
|
+
# define PNG_MIPS_MSA 6
|
|
3313
3321
|
#endif
|
|
3322
|
+
|
|
3323
|
+
/* SOFTWARE: Disable Adler32 check on IDAT */
|
|
3314
3324
|
#ifdef PNG_DISABLE_ADLER32_CHECK_SUPPORTED
|
|
3315
|
-
# define PNG_IGNORE_ADLER32 8
|
|
3325
|
+
# define PNG_IGNORE_ADLER32 8
|
|
3316
3326
|
#endif
|
|
3327
|
+
|
|
3328
|
+
/* HARDWARE: PowerPC VSX SIMD instructions supported */
|
|
3317
3329
|
#ifdef PNG_POWERPC_VSX_API_SUPPORTED
|
|
3318
|
-
# define PNG_POWERPC_VSX
|
|
3319
|
-
* supported */
|
|
3330
|
+
# define PNG_POWERPC_VSX 10
|
|
3320
3331
|
#endif
|
|
3332
|
+
|
|
3333
|
+
/* HARDWARE: MIPS MMI SIMD instructions supported */
|
|
3321
3334
|
#ifdef PNG_MIPS_MMI_API_SUPPORTED
|
|
3322
|
-
# define PNG_MIPS_MMI
|
|
3335
|
+
# define PNG_MIPS_MMI 12
|
|
3336
|
+
#endif
|
|
3337
|
+
|
|
3338
|
+
/* HARDWARE: RISC-V RVV SIMD instructions supported */
|
|
3339
|
+
#ifdef PNG_RISCV_RVV_API_SUPPORTED
|
|
3340
|
+
# define PNG_RISCV_RVV 14
|
|
3323
3341
|
#endif
|
|
3324
3342
|
|
|
3325
|
-
|
|
3343
|
+
/* Next option - numbers must be even */
|
|
3344
|
+
#define PNG_OPTION_NEXT 16
|
|
3326
3345
|
|
|
3327
3346
|
/* Return values: NOTE: there are four values and 'off' is *not* zero */
|
|
3328
3347
|
#define PNG_OPTION_UNSET 0 /* Unset - defaults to off */
|
|
@@ -275,7 +275,7 @@ struct _xmlParserCtxt {
|
|
|
275
275
|
/* Node analysis stack only used for DOM building */
|
|
276
276
|
|
|
277
277
|
/* Current parsed Node */
|
|
278
|
-
xmlNodePtr node
|
|
278
|
+
xmlNodePtr node;
|
|
279
279
|
/* Depth of the parsing stack */
|
|
280
280
|
int nodeNr XML_DEPRECATED_MEMBER;
|
|
281
281
|
/* Max depth of the parsing stack */
|
|
@@ -331,7 +331,7 @@ struct _xmlParserCtxt {
|
|
|
331
331
|
/* ugly but ... */
|
|
332
332
|
int keepBlanks XML_DEPRECATED_MEMBER;
|
|
333
333
|
/* SAX callbacks are disabled */
|
|
334
|
-
int disableSAX
|
|
334
|
+
int disableSAX;
|
|
335
335
|
/* Parsing is in int 1/ext 2 subset */
|
|
336
336
|
int inSubset;
|
|
337
337
|
/* name of subset */
|
|
@@ -15,21 +15,21 @@
|
|
|
15
15
|
*
|
|
16
16
|
* the version string like "1.2.3"
|
|
17
17
|
*/
|
|
18
|
-
#define LIBXML_DOTTED_VERSION "2.14.
|
|
18
|
+
#define LIBXML_DOTTED_VERSION "2.14.4"
|
|
19
19
|
|
|
20
20
|
/**
|
|
21
21
|
* LIBXML_VERSION:
|
|
22
22
|
*
|
|
23
23
|
* the version number: 1.2.3 value is 10203
|
|
24
24
|
*/
|
|
25
|
-
#define LIBXML_VERSION
|
|
25
|
+
#define LIBXML_VERSION 21404
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* LIBXML_VERSION_STRING:
|
|
29
29
|
*
|
|
30
30
|
* the version number string, 1.2.3 value is "10203"
|
|
31
31
|
*/
|
|
32
|
-
#define LIBXML_VERSION_STRING "
|
|
32
|
+
#define LIBXML_VERSION_STRING "21404"
|
|
33
33
|
|
|
34
34
|
/**
|
|
35
35
|
* LIBXML_VERSION_EXTRA:
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
* Macro to check that the libxml version in use is compatible with
|
|
45
45
|
* the version the software has been compiled against
|
|
46
46
|
*/
|
|
47
|
-
#define LIBXML_TEST_VERSION xmlCheckVersion(
|
|
47
|
+
#define LIBXML_TEST_VERSION xmlCheckVersion(21404);
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
50
|
* LIBXML_THREAD_ENABLED:
|
|
@@ -288,7 +288,7 @@ typedef enum {
|
|
|
288
288
|
#define PANGO_ATTR_INDEX_TO_TEXT_END ((guint)(G_MAXUINT + 0))
|
|
289
289
|
|
|
290
290
|
/**
|
|
291
|
-
* PangoAttribute:
|
|
291
|
+
* PangoAttribute: (copy-func pango_attribute_copy) (free-func pango_attribute_destroy)
|
|
292
292
|
* @klass: the class structure holding information about the type of the attribute
|
|
293
293
|
* @start_index: the start index of the range (in bytes).
|
|
294
294
|
* @end_index: end index of the range (in bytes). The character at this index
|