Update ABI/API compatibility reports after commit 3b1b067266
This commit is contained in:
parent
693d05e773
commit
a96041f7c7
File diff suppressed because it is too large
Load Diff
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"Object": "lib/libopenjp2.so.2.2.0",
|
||||
"Lang": "C",
|
||||
"TotalSymbols": "46",
|
||||
"TotalSymbols": "48",
|
||||
"PublicABI": "1",
|
||||
"Version": "1.7"
|
||||
}
|
|
@ -20,7 +20,204 @@
|
|||
<br/>
|
||||
<h1>Changelog from Git</h1><br/><br/>
|
||||
<div class='changelog'>
|
||||
<pre class='wrap'>commit 2fbd4bb0b9c6178f12c852dc40db6ab05734bfe2
|
||||
<pre class='wrap'>commit 3b1b0672663b59853b63d48f94b63ca497883527
|
||||
Merge: 2fbd4bb 9211469
|
||||
Author: Even Rouault <even.rouault@mines-paris.org>
|
||||
Date: 2017-08-07 20:17:36 +0200
|
||||
|
||||
Merge pull request #968 from rouault/reduce_memory_decoding
|
||||
|
||||
Reduce memory decoding
|
||||
|
||||
commit 92114694a48638e86c07e4adf11b78878045c8a9
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 19:34:21 +0200
|
||||
|
||||
Slight improvement in management of code block chunks
|
||||
|
||||
Instead of having the chunk array at the segment level, we can move it down to
|
||||
the codeblock itself since segments are filled in sequential order.
|
||||
Limit the number of memory allocation, and decrease slightly the memory usage.
|
||||
|
||||
On MAPA_005.jp2
|
||||
|
||||
n4: 1871312549 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
|
||||
n1: 1610689344 0x4E781E7: opj_aligned_malloc (opj_malloc.c:61)
|
||||
n1: 1610689344 0x4E71D1B: opj_alloc_tile_component_data (tcd.c:676)
|
||||
n1: 1610689344 0x4E726CF: opj_tcd_init_decode_tile (tcd.c:816)
|
||||
n1: 1610689344 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
|
||||
n1: 1610689344 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
|
||||
n1: 1610689344 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
|
||||
n1: 1610689344 0x4E53002: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
|
||||
n1: 219232541 0x4E4BC50: opj_j2k_read_tile_header (j2k.c:4683)
|
||||
n1: 219232541 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
|
||||
n1: 219232541 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
|
||||
n1: 219232541 0x4E53002: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 219232541 0x40374E: main (opj_decompress.c:1459)
|
||||
n1: 23893200 0x4E72735: opj_tcd_init_decode_tile (tcd.c:1225)
|
||||
n1: 23893200 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
|
||||
n1: 23893200 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
|
||||
n1: 23893200 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
|
||||
n1: 23893200 0x4E53002: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 23893200 0x40374E: main (opj_decompress.c:1459)
|
||||
n0: 17497464 in 52 places, all below massif's threshold (1.00%)
|
||||
|
||||
commit ca34d13e76a588a00171e57690c1deeaf068723a
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 16:11:11 +0200
|
||||
|
||||
Decoding: do not allocate memory for the codestream of each codeblock
|
||||
|
||||
Currently we allocate at least 8192 bytes for each codeblock, and copy
|
||||
the relevant parts of the codestream in that per-codeblock buffer as we
|
||||
decode packets.
|
||||
As the whole codestream for the tile is ingested in memory and alive
|
||||
during the decoding, we can directly point to it instead of copying. But
|
||||
to do that, we need an intermediate concept, a 'chunk' of code-stream segment,
|
||||
given that segments may be made of data at different places in the code-stream
|
||||
when quality layers are used.
|
||||
|
||||
With that change, the decoding of MAPA_005.jp2 goes down from the previous
|
||||
improvement of 2.7 GB down to 1.9 GB.
|
||||
|
||||
New profile:
|
||||
|
||||
n4: 1885648469 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
|
||||
n1: 1610689344 0x4E78287: opj_aligned_malloc (opj_malloc.c:61)
|
||||
n1: 1610689344 0x4E71D7B: opj_alloc_tile_component_data (tcd.c:676)
|
||||
n1: 1610689344 0x4E7272C: opj_tcd_init_decode_tile (tcd.c:816)
|
||||
n1: 1610689344 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
|
||||
n1: 1610689344 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
|
||||
n1: 1610689344 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
|
||||
n1: 1610689344 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
|
||||
n1: 219232541 0x4E4BBF0: opj_j2k_read_tile_header (j2k.c:4685)
|
||||
n1: 219232541 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
|
||||
n1: 219232541 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
|
||||
n1: 219232541 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 219232541 0x40374E: main (opj_decompress.c:1459)
|
||||
n1: 39822000 0x4E727A9: opj_tcd_init_decode_tile (tcd.c:1219)
|
||||
n1: 39822000 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
|
||||
n1: 39822000 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
|
||||
n1: 39822000 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
|
||||
n1: 39822000 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 39822000 0x40374E: main (opj_decompress.c:1459)
|
||||
n0: 15904584 in 52 places, all below massif's threshold (1.00%)
|
||||
|
||||
commit 373520db309430b68dd9ff09cba03a25f711a88e
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 13:23:29 +0200
|
||||
|
||||
Add documentation for magic values in the code
|
||||
|
||||
commit 434ace4ff74cc3eee401d4d3c02668c1d85f2a0d
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 02:17:26 +0200
|
||||
|
||||
opj_jp2_apply_pclr() also needs to use opj_image_data_alloc/opj_image_data_free
|
||||
|
||||
commit 0c1fc0593ef5b918068709fd74d76e4824c90e7c
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 02:02:25 +0200
|
||||
|
||||
Complementary fix to previous commit
|
||||
|
||||
commit f58aab9d6a57e48bdc60e15dd373c24de74719a9
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 01:47:40 +0200
|
||||
|
||||
Add opj_image_data_alloc() / opj_image_data_free()
|
||||
|
||||
As bin/common/color.c used to directly call malloc()/free(), we need
|
||||
to export functions dedicated to allocating/freeing image component data.
|
||||
|
||||
commit 61fb5dd7f81c2e3dfabbb99f59dc89572d59fa37
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-06 01:05:24 +0200
|
||||
|
||||
Fix crash on Windows due to b7594c0fcb9dd3aa6356d72c4a525d76168da689
|
||||
|
||||
b7594c0fcb9dd3aa6356d72c4a525d76168da689 may put opj_tcd_tilecomp_t->data
|
||||
allocated by opj_alloc_tile_component_data() as the image->comps[].data. As
|
||||
opj_alloc_tile_component_data() use opj_aligned_malloc() we must be sure to
|
||||
ue opj_alined_malloc()/_free() in all places where we alloc/free
|
||||
image->comps[].data.
|
||||
|
||||
Note: this might have some compatibility impact in case user code does itself
|
||||
the allocation/free of image->comps[].data
|
||||
|
||||
commit 793edc38e41700e9b4cda4b7f9c79aba95b8d989
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-05 23:48:28 +0200
|
||||
|
||||
Decrease memory consumption for whole image single tile decoding.
|
||||
|
||||
We can use the same buffer for the tile decoding and the final image, and
|
||||
save the intermediate buffer to transfer between those.
|
||||
|
||||
Effect on the decoding of MAPA (9944 x 13498 x 3 components of size byte)
|
||||
|
||||
Peak memory from 4.5 GB to 2.7 GB
|
||||
|
||||
Now:
|
||||
n5: 2699708767 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
|
||||
n1: 1610689344 0x4E77E07: opj_aligned_malloc (opj_malloc.c:61) <-- final image
|
||||
n1: 1610689344 0x4E7195B: opj_alloc_tile_component_data (tcd.c:676)
|
||||
n1: 1610689344 0x4E722D2: opj_tcd_init_decode_tile (tcd.c:816)
|
||||
n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
|
||||
n1: 1610689344 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
|
||||
n1: 1610689344 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 1610689344 0x4E52E42: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
|
||||
n1: 815554560 0x4E72231: opj_tcd_init_decode_tile (tcd.c:1217) <-- working memory for code blocks: 9944*13498/64/64*8192*3
|
||||
n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
|
||||
n1: 815554560 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
|
||||
n1: 815554560 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 815554560 0x4E52E42: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 815554560 0x40369E: main (opj_decompress.c:1459)
|
||||
n1: 219758391 0x4E4C0BF: opj_j2k_read_tile_header (j2k.c:4661) <-- ingestion of code stream
|
||||
n1: 219758391 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
|
||||
n1: 219758391 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 219758391 0x4E52E42: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 219758391 0x40369E: main (opj_decompress.c:1459)
|
||||
n1: 39822000 0x4E7224F: opj_tcd_init_decode_tile (tcd.c:1224) <-- OPJ_J2K_DEFAULT_NB_SEGS*sizeof(opj_tcd_seg_t) per codeblock
|
||||
n1: 39822000 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
|
||||
n1: 39822000 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
|
||||
n1: 39822000 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 39822000 0x4E52E42: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 39822000 0x40369E: main (opj_decompress.c:1459)
|
||||
n0: 13884472 in 49 places, all below massif's threshold (1.00%)
|
||||
|
||||
Before:
|
||||
n5: 4493329848 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
|
||||
n2: 1610709160 0x4E77C87: opj_aligned_malloc (opj_malloc.c:61)
|
||||
n1: 1610689344 0x4E717DB: opj_alloc_tile_component_data (tcd.c:676)
|
||||
n1: 1610689344 0x4E72152: opj_tcd_init_decode_tile (tcd.c:816)
|
||||
n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
|
||||
n1: 1610689344 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
|
||||
n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
|
||||
n0: 19816 in 2 places, all below massif's threshold (1.00%)
|
||||
n1: 1610689344 0x4E43F36: opj_j2k_update_image_data.isra.7 (j2k.c:8743)
|
||||
n1: 1610689344 0x4E4C5C1: opj_j2k_decode_tiles (j2k.c:10358)
|
||||
n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
|
||||
n1: 815554560 0x4E720B1: opj_tcd_init_decode_tile (tcd.c:1217)
|
||||
n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
|
||||
n1: 815554560 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
|
||||
n1: 815554560 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 815554560 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 815554560 0x40369E: main (opj_decompress.c:1459)
|
||||
n1: 402672336 0x4E4C545: opj_j2k_decode_tiles (j2k.c:10336)
|
||||
n1: 402672336 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
|
||||
n1: 402672336 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
|
||||
n0: 402672336 0x40369E: main (opj_decompress.c:1459)
|
||||
n0: 53704448 in 58 places, all below massif's threshold (1.00%)
|
||||
|
||||
commit 2fbd4bb0b9c6178f12c852dc40db6ab05734bfe2
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-08-04 18:01:29 +0200
|
||||
|
||||
|
@ -374,12 +571,6 @@ Date: 2017-07-06 12:11:37 +0200
|
|||
|
||||
Comment fix
|
||||
|
||||
commit a38c4496b631bb5d3f8d5ea42d394544523a9bc6
|
||||
Author: Even Rouault <even.rouault@spatialys.com>
|
||||
Date: 2017-07-05 21:33:42 +0200
|
||||
|
||||
Remove unused m_DA_x0, m_DA_y0, m_DA_x1, m_DA_y1 members from opj_j2k_dec structure
|
||||
|
||||
...</pre></div>
|
||||
|
||||
</body>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- verdict:compatible;affected:0;added:3;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!-- verdict:compatible;affected:0;added:5;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
|
@ -287,7 +287,7 @@ function showContent(header, id)
|
|||
</tr>
|
||||
</table>
|
||||
<h2>Problem Summary</h2><hr/>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>3</a></td></tr>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>5</a></td></tr>
|
||||
<tr><th>Removed Symbols</th><td>High</td><td>0</td></tr>
|
||||
<tr><th rowspan='3'>Problems with<br/>Data Types</th><td>High</td><td>0</td></tr>
|
||||
<tr><td>Medium</td><td>0</td></tr>
|
||||
|
@ -298,11 +298,13 @@ function showContent(header, id)
|
|||
<tr><th>Problems with<br/>Constants</th><td>Low</td><td>0</td></tr>
|
||||
</table>
|
||||
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 3 </span></h2><hr/>
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 5 </span></h2><hr/>
|
||||
<span class='h_name'>openjpeg.h</span>, <span class='lib_name'>libopenjp2.so.2.2.0</span><br/>
|
||||
<span class="iname">opj_codec_set_threads <span class='sym_p'>( opj_codec_t* <span class='color_p'>p_codec</span>, <span class='nowrap'>int <span class='color_p'>num_threads</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_get_num_cpus <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_has_thread_support <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_image_data_alloc <span class='sym_p'>( <span class='nowrap'>OPJ_SIZE_T <span class='color_p'>size</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_image_data_free <span class='sym_p'>( <span class='nowrap'>void* <span class='color_p'>ptr</span> )</span></span></span><br/>
|
||||
<br/>
|
||||
<a class='top_ref' href='#Top'>to the top</a><br/>
|
||||
<a name='Headers'></a><h2>Header Files <span class='gray'> 1 </span></h2><hr/>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"Affected": "0",
|
||||
"Added": 3,
|
||||
"Added": 5,
|
||||
"Removed": 0,
|
||||
"TotalProblems": 0,
|
||||
"Object1": "lib/libopenjp2.so.2.1.2",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- verdict:compatible;affected:0;added:3;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!-- verdict:compatible;affected:0;added:5;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
|
@ -287,7 +287,7 @@ function showContent(header, id)
|
|||
</tr>
|
||||
</table>
|
||||
<h2>Problem Summary</h2><hr/>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>3</a></td></tr>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>5</a></td></tr>
|
||||
<tr><th>Removed Symbols</th><td>High</td><td>0</td></tr>
|
||||
<tr><th rowspan='3'>Problems with<br/>Data Types</th><td>High</td><td>0</td></tr>
|
||||
<tr><td>Medium</td><td>0</td></tr>
|
||||
|
@ -298,11 +298,13 @@ function showContent(header, id)
|
|||
<tr><th>Problems with<br/>Constants</th><td>Low</td><td>0</td></tr>
|
||||
</table>
|
||||
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 3 </span></h2><hr/>
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 5 </span></h2><hr/>
|
||||
<span class='h_name'>openjpeg.h</span>, <span class='lib_name'>libopenjp2.so.2.2.0</span><br/>
|
||||
<span class="iname">opj_codec_set_threads <span class='sym_p'>( opj_codec_t* <span class='color_p'>p_codec</span>, <span class='nowrap'>int <span class='color_p'>num_threads</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_get_num_cpus <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_has_thread_support <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_image_data_alloc <span class='sym_p'>( <span class='nowrap'>OPJ_SIZE_T <span class='color_p'>size</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_image_data_free <span class='sym_p'>( <span class='nowrap'>void* <span class='color_p'>ptr</span> )</span></span></span><br/>
|
||||
<br/>
|
||||
<a class='top_ref' href='#Top'>to the top</a><br/>
|
||||
<a name='Headers'></a><h2>Header Files <span class='gray'> 1 </span></h2><hr/>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<!-- verdict:compatible;affected:0;added:3;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!-- verdict:compatible;affected:0;added:5;removed:0;type_problems_high:0;type_problems_medium:0;type_problems_low:0;interface_problems_high:0;interface_problems_medium:0;interface_problems_low:0;changed_constants:0;tool_version:1.99.21 -->
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
|
@ -287,7 +287,7 @@ function showContent(header, id)
|
|||
</tr>
|
||||
</table>
|
||||
<h2>Problem Summary</h2><hr/>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>3</a></td></tr>
|
||||
<table class='summary'><tr><th></th><th style='text-align:center;'>Severity</th><th style='text-align:center;'>Count</th></tr><tr><th>Added Symbols</th><td>-</td><td class='new'><a href='#Added' style='color:Blue;'>5</a></td></tr>
|
||||
<tr><th>Removed Symbols</th><td>High</td><td>0</td></tr>
|
||||
<tr><th rowspan='3'>Problems with<br/>Data Types</th><td>High</td><td>0</td></tr>
|
||||
<tr><td>Medium</td><td>0</td></tr>
|
||||
|
@ -298,11 +298,13 @@ function showContent(header, id)
|
|||
<tr><th>Problems with<br/>Constants</th><td>Low</td><td>0</td></tr>
|
||||
</table>
|
||||
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 3 </span></h2><hr/>
|
||||
<a name='Added'></a><h2>Added Symbols <span class='new'> 5 </span></h2><hr/>
|
||||
<span class='h_name'>openjpeg.h</span><br/>
|
||||
<span class="iname">opj_codec_set_threads <span class='sym_p'>( opj_codec_t* <span class='color_p'>p_codec</span>, <span class='nowrap'>int <span class='color_p'>num_threads</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_get_num_cpus <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_has_thread_support <span class='sym_p'>( )</span></span><br/>
|
||||
<span class="iname">opj_image_data_alloc <span class='sym_p'>( <span class='nowrap'>OPJ_SIZE_T <span class='color_p'>size</span> )</span></span></span><br/>
|
||||
<span class="iname">opj_image_data_free <span class='sym_p'>( <span class='nowrap'>void* <span class='color_p'>ptr</span> )</span></span></span><br/>
|
||||
<br/>
|
||||
<a class='top_ref' href='#Top'>to the top</a><br/>
|
||||
<a name='Headers'></a><h2>Header Files <span class='gray'> 1 </span></h2><hr/>
|
||||
|
|
|
@ -115,7 +115,7 @@ $VAR1 = {
|
|||
'Lang' => 'C',
|
||||
'Object' => 'lib/libopenjp2.so.2.2.0',
|
||||
'Path' => 'abi_dump/openjpeg/current/2c999/ABI.dump',
|
||||
'TotalSymbols' => '46',
|
||||
'TotalSymbols' => '48',
|
||||
'Version' => '1.7'
|
||||
}
|
||||
}
|
||||
|
@ -287,7 +287,7 @@ $VAR1 = {
|
|||
},
|
||||
'2.1.2' => {
|
||||
'current' => {
|
||||
'Added' => 3,
|
||||
'Added' => 5,
|
||||
'BC' => 100,
|
||||
'ChangedSoname' => 0,
|
||||
'ObjectsAdded' => 0,
|
||||
|
@ -455,7 +455,7 @@ $VAR1 = {
|
|||
'2.1.2' => {
|
||||
'current' => {
|
||||
'58361' => {
|
||||
'Added' => 3,
|
||||
'Added' => 5,
|
||||
'Affected' => 0,
|
||||
'Object1' => 'lib/libopenjp2.so.2.1.2',
|
||||
'Object2' => 'lib/libopenjp2.so.2.2.0',
|
||||
|
@ -496,7 +496,7 @@ $VAR1 = {
|
|||
'2.1' => '2014-04-29 12:58',
|
||||
'2.1.1' => '2016-07-05 14:54',
|
||||
'2.1.2' => '2016-09-28 18:18',
|
||||
'current' => '2017-08-04 18:01:29'
|
||||
'current' => '2017-08-07 20:17:36'
|
||||
},
|
||||
'HeadersDiff' => {
|
||||
'1.1' => {
|
||||
|
@ -574,7 +574,7 @@ $VAR1 = {
|
|||
'Maintainer' => 'OpenJPEG team',
|
||||
'MaintainerUrl' => 'http://www.openjpeg.org/',
|
||||
'PackageDiff' => {},
|
||||
'ScmUpdateTime' => '1501863199',
|
||||
'ScmUpdateTime' => '1502130566',
|
||||
'Soname' => {
|
||||
'1.1' => {
|
||||
'lib/libopenjpeg.so' => 'libopenjpeg.so'
|
||||
|
|
|
@ -1248,6 +1248,27 @@ w version of the library).</td><td class="lineno" valign="top"></td></tr>
|
|||
<tr><td class="lineno" valign="top"></td><td class="lblock">OPJ_API opj_image_t* OPJ_CALLCONV opj_image_tile_create(OPJ_UINT32 numcmpts</td><td> </td><td class="rblock">OPJ_API opj_image_t* OPJ_CALLCONV opj_image_tile_create(OPJ_UINT32 numcmpts</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock">, opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);</td><td> </td><td class="rblock">,</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"> opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"> </td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">/**</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * Allocator for opj_image_t->comps[].data</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * To be paired with opj_image_data_free.</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> *</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * @param size number of bytes to allocate</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> *</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * @return a new pointer if successful, NULL otherwise.</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * @since 2.2.0</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">*/</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">OPJ_API void* OPJ_CALLCONV opj_image_data_alloc(OPJ_SIZE_T size);</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"></span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">/**</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * Destructor for opj_image_t->comps[].data</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * To be paired with opj_image_data_alloc.</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> *</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * @param ptr Pointer to free</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> *</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert"> * @since 2.2.0</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">*/</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="lblock"></td><td> </td><td class="rblock"><span class="insert">OPJ_API void OPJ_CALLCONV opj_image_data_free(void* ptr);</span></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left">/*</td><td> </td><td class="right">/*</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left">==========================================================</td><td> </td><td class="right">==========================================================</td><td class="lineno" valign="top"></td></tr>
|
||||
|
@ -1780,7 +1801,7 @@ at);</td><td class="lineno" valign="top"></td></tr>
|
|||
<tr><td class="lineno" valign="top"></td><td class="left"><li>Size of precinct : 2^15 x 2^15 (means 1 precinct)</td><td> </td><td class="right"><li>Size of precinct : 2^15 x 2^15 (means 1 precinct)</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left"><li>Size of code-block : 64 x 64</td><td> </td><td class="right"><li>Size of code-block : 64 x 64</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno"></td><td class="left"></td><td> </td><td class="right"></td><td class="lineno"></td></tr>
|
||||
<tr bgcolor="gray" ><td></td><th><a name="part-l5" /><small>skipping to change at</small><em> line 1417</em></th><th> </th><th><a name="part-r5" /><small>skipping to change at</small><em> line 1454</em></th><td></td></tr>
|
||||
<tr bgcolor="gray" ><td></td><th><a name="part-l5" /><small>skipping to change at</small><em> line 1417</em></th><th> </th><th><a name="part-r5" /><small>skipping to change at</small><em> line 1475</em></th><td></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left"><li>No mode switch activated</td><td> </td><td class="right"><li>No mode switch activated</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left"><li>Progression order: LRCP</td><td> </td><td class="right"><li>Progression order: LRCP</td><td class="lineno" valign="top"></td></tr>
|
||||
<tr><td class="lineno" valign="top"></td><td class="left"><li>No index file</td><td> </td><td class="right"><li>No index file</td><td class="lineno" valign="top"></td></tr>
|
||||
|
@ -1994,7 +2015,7 @@ c);</td><td class="lineno" valign="top"></td></tr>
|
|||
|
||||
<tr><td></td><td class="left"></td><td> </td><td class="right"></td><td></td></tr>
|
||||
<tr bgcolor="gray"><th colspan="5" align="center"><a name="end"> End of changes. 158 change blocks. </a></th></tr>
|
||||
<tr class="stats"><td></td><th><i>949 lines changed or deleted</i></th><th><i> </i></th><th><i>929 lines changed or added</i></th><td></td></tr>
|
||||
<tr class="stats"><td></td><th><i>949 lines changed or deleted</i></th><th><i> </i></th><th><i>950 lines changed or added</i></th><td></td></tr>
|
||||
<tr><td colspan="5" align="center" class="small"></td></tr>
|
||||
</table>
|
||||
<br/><br/>
|
||||
|
|
|
@ -1093,6 +1093,27 @@ OPJ_API void OPJ_CALLCONV opj_image_destroy(opj_image_t *image);
|
|||
OPJ_API opj_image_t* OPJ_CALLCONV opj_image_tile_create(OPJ_UINT32 numcmpts,
|
||||
opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
|
||||
|
||||
/**
|
||||
* Allocator for opj_image_t->comps[].data
|
||||
* To be paired with opj_image_data_free.
|
||||
*
|
||||
* @param size number of bytes to allocate
|
||||
*
|
||||
* @return a new pointer if successful, NULL otherwise.
|
||||
* @since 2.2.0
|
||||
*/
|
||||
OPJ_API void* OPJ_CALLCONV opj_image_data_alloc(OPJ_SIZE_T size);
|
||||
|
||||
/**
|
||||
* Destructor for opj_image_t->comps[].data
|
||||
* To be paired with opj_image_data_alloc.
|
||||
*
|
||||
* @param ptr Pointer to free
|
||||
*
|
||||
* @since 2.2.0
|
||||
*/
|
||||
OPJ_API void OPJ_CALLCONV opj_image_data_free(void* ptr);
|
||||
|
||||
/*
|
||||
==========================================================
|
||||
stream functions definitions
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"BC": "100",
|
||||
"Added": 3,
|
||||
"Added": 5,
|
||||
"Removed": 0,
|
||||
"TotalProblems": 0,
|
||||
"ObjectsAdded": 0,
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
<tr>
|
||||
<td class='object'>libopenjp2.so.2.1.2</td>
|
||||
<td class='ok'><a href='../../../../compat_report/openjpeg/2.1.2/current/58361/abi_compat_report.html'>100%</a></td>
|
||||
<td class='added'><a class='num' href='../../../../compat_report/openjpeg/2.1.2/current/58361/abi_compat_report.html#Added'>3 new</a></td>
|
||||
<td class='added'><a class='num' href='../../../../compat_report/openjpeg/2.1.2/current/58361/abi_compat_report.html#Added'>5 new</a></td>
|
||||
<td class='ok'>0</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
|
|
@ -30,11 +30,11 @@
|
|||
<th>Headers<br/>Diff</th>
|
||||
</tr>
|
||||
<tr id='current'><td>current</td>
|
||||
<td>2017-08-04<br/>18:01</td>
|
||||
<td>2017-08-07<br/>20:17</td>
|
||||
<td>7</td>
|
||||
<td><a href='../../changelog/openjpeg/current/log.html'>changelog</a></td>
|
||||
<td class='ok'><a href='../../objects_report/openjpeg/2.1.2/current/report.html'>100%</a></td>
|
||||
<td class='added'><a class='num' href='../../objects_report/openjpeg/2.1.2/current/report.html'>3 new</a></td>
|
||||
<td class='added'><a class='num' href='../../objects_report/openjpeg/2.1.2/current/report.html'>5 new</a></td>
|
||||
<td class='ok'>0</td>
|
||||
<td><a href='../../headers_diff/openjpeg/2.1.2/current/diff.html'>2</a></td>
|
||||
</tr>
|
||||
|
@ -152,7 +152,7 @@
|
|||
<td>N/A</td>
|
||||
<td>N/A</td>
|
||||
</tr>
|
||||
</table><br/>Maintained by <a href='http://www.openjpeg.org/'>OpenJPEG team</a>. Last updated on Fri Aug 4 16:13:45 2017.<br/>
|
||||
</table><br/>Maintained by <a href='http://www.openjpeg.org/'>OpenJPEG team</a>. Last updated on Mon Aug 7 18:29:53 2017.<br/>
|
||||
<br/>
|
||||
<hr/>
|
||||
<div align='right'><a class='home' title="Andrey Ponomarenko's ABI laboratory" href='http://abi-laboratory.pro/'>abi-laboratory.pro</a></div>
|
||||
|
|
Loading…
Reference in New Issue