diff --git a/abi-check/abi_dump/openjpeg/current/ef225/ABI.dump b/abi-check/abi_dump/openjpeg/current/ef225/ABI.dump
index 9e7445e6..8d31289f 100644
--- a/abi-check/abi_dump/openjpeg/current/ef225/ABI.dump
+++ b/abi-check/abi_dump/openjpeg/current/ef225/ABI.dump
@@ -207,7 +207,7 @@ $VAR1 = {
'Source' => 'cio.c',
'SourceLine' => '271'
},
- '171868' => {
+ '173846' => {
'Header' => 'openjpeg.h',
'Line' => '1096',
'Return' => '156',
@@ -215,13 +215,13 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '160'
},
- '172188' => {
+ '174166' => {
'Header' => 'openjpeg.h',
- 'Line' => '1621',
+ 'Line' => '1648',
'Param' => {
'0' => {
'name' => 'cstr_info',
- 'type' => '172206'
+ 'type' => '174184'
}
},
'Reg' => {
@@ -230,14 +230,14 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_destroy_cstr_info',
'Source' => 'openjpeg.c',
- 'SourceLine' => '966'
+ 'SourceLine' => '997'
},
- '234484' => {
+ '236722' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_callback',
@@ -258,12 +258,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '44'
},
- '234582' => {
+ '236820' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_callback',
@@ -284,12 +284,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '59'
},
- '234668' => {
+ '236906' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_callback',
@@ -310,28 +310,28 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '74'
},
- '234783' => {
+ '237021' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_format',
- 'type' => '223570'
+ 'type' => '225728'
}
},
'Reg' => {
'0' => 'rdi'
},
- 'Return' => '234570',
+ 'Return' => '236808',
'ShortName' => 'opj_create_decompress',
'Source' => 'openjpeg.c',
'SourceLine' => '168'
},
- '235005' => {
+ '237243' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'parameters',
- 'type' => '76835'
+ 'type' => '76948'
}
},
'Reg' => {
@@ -342,12 +342,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '364'
},
- '235136' => {
+ '237374' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'num_threads',
@@ -363,16 +363,16 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '387'
},
- '235254' => {
+ '237492' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'parameters',
- 'type' => '76835'
+ 'type' => '76948'
}
},
'Reg' => {
@@ -384,7 +384,7 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '398'
},
- '235396' => {
+ '237634' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
@@ -393,11 +393,11 @@ $VAR1 = {
},
'1' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'2' => {
'name' => 'p_image',
- 'type' => '76829'
+ 'type' => '76942'
}
},
'Reg' => {
@@ -410,12 +410,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '418'
},
- '235599' => {
+ '237837' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'numcomps',
@@ -423,7 +423,7 @@ $VAR1 = {
},
'2' => {
'name' => 'comps_indices',
- 'type' => '76847'
+ 'type' => '76960'
},
'3' => {
'name' => 'apply_color_transforms',
@@ -441,12 +441,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '442'
},
- '235841' => {
+ '238079' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -467,12 +467,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '471'
},
- '235995' => {
+ '238233' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_image',
@@ -508,12 +508,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '492'
},
- '236203' => {
+ '238441' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -569,12 +569,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '515'
},
- '236409' => {
+ '238647' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_tile_index',
@@ -605,12 +605,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '546'
},
- '236609' => {
+ '238847' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -636,12 +636,12 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '572'
},
- '236786' => {
+ '239024' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'res_factor',
@@ -657,28 +657,28 @@ $VAR1 = {
'Source' => 'openjpeg.c',
'SourceLine' => '596'
},
- '236895' => {
+ '239133' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_format',
- 'type' => '223570'
+ 'type' => '225728'
}
},
'Reg' => {
'0' => 'rdi'
},
- 'Return' => '234570',
+ 'Return' => '236808',
'ShortName' => 'opj_create_compress',
'Source' => 'openjpeg.c',
'SourceLine' => '614'
},
- '237120' => {
+ '239358' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'parameters',
- 'type' => '76858'
+ 'type' => '76971'
}
},
'Reg' => {
@@ -687,18 +687,18 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_set_default_encoder_parameters',
'Source' => 'openjpeg.c',
- 'SourceLine' => '712'
+ 'SourceLine' => '722'
},
- '237251' => {
+ '239489' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'parameters',
- 'type' => '76858'
+ 'type' => '76971'
},
'2' => {
'name' => 'p_image',
@@ -713,14 +713,35 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_setup_encoder',
'Source' => 'openjpeg.c',
- 'SourceLine' => '773'
+ 'SourceLine' => '783'
},
- '237389' => {
+ '239627' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
+ },
+ '1' => {
+ 'name' => 'options',
+ 'type' => '76977'
+ }
+ },
+ 'Reg' => {
+ '0' => 'rdi',
+ '1' => 'rsi'
+ },
+ 'Return' => '2747',
+ 'ShortName' => 'opj_encoder_set_extra_options',
+ 'Source' => 'openjpeg.c',
+ 'SourceLine' => '803'
+ },
+ '239742' => {
+ 'Header' => 'openjpeg.h',
+ 'Param' => {
+ '0' => {
+ 'name' => 'p_codec',
+ 'type' => '236808'
},
'1' => {
'name' => 'p_image',
@@ -739,14 +760,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_start_compress',
'Source' => 'openjpeg.c',
- 'SourceLine' => '791'
+ 'SourceLine' => '822'
},
- '237543' => {
+ '239896' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_info',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -760,14 +781,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_encode',
'Source' => 'openjpeg.c',
- 'SourceLine' => '810'
+ 'SourceLine' => '841'
},
- '237674' => {
+ '240027' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -781,14 +802,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_end_compress',
'Source' => 'openjpeg.c',
- 'SourceLine' => '827'
+ 'SourceLine' => '858'
},
- '237805' => {
+ '240158' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_stream',
@@ -802,14 +823,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_end_decompress',
'Source' => 'openjpeg.c',
- 'SourceLine' => '844'
+ 'SourceLine' => '875'
},
- '237936' => {
+ '240289' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'parameters',
- 'type' => '76858'
+ 'type' => '76971'
},
'1' => {
'name' => 'pEncodingMatrix',
@@ -833,14 +854,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_set_MCT',
'Source' => 'openjpeg.c',
- 'SourceLine' => '864'
+ 'SourceLine' => '895'
},
- '238282' => {
+ '240635' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'p_tile_index',
@@ -869,14 +890,14 @@ $VAR1 = {
'Return' => '2747',
'ShortName' => 'opj_write_tile',
'Source' => 'openjpeg.c',
- 'SourceLine' => '894'
+ 'SourceLine' => '925'
},
- '238482' => {
+ '240835' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
}
},
'Reg' => {
@@ -885,14 +906,14 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_destroy_codec',
'Source' => 'openjpeg.c',
- 'SourceLine' => '921'
+ 'SourceLine' => '952'
},
- '238583' => {
+ '240936' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
},
'1' => {
'name' => 'info_flag',
@@ -900,7 +921,7 @@ $VAR1 = {
},
'2' => {
'name' => 'output_stream',
- 'type' => '76864'
+ 'type' => '76988'
}
},
'Reg' => {
@@ -911,46 +932,46 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_dump_codec',
'Source' => 'openjpeg.c',
- 'SourceLine' => '939'
+ 'SourceLine' => '970'
},
- '238720' => {
+ '241073' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
}
},
'Reg' => {
'0' => 'rdi'
},
- 'Return' => '76870',
+ 'Return' => '76994',
'ShortName' => 'opj_get_cstr_info',
'Source' => 'openjpeg.c',
- 'SourceLine' => '955'
+ 'SourceLine' => '986'
},
- '238884' => {
+ '241237' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_codec',
- 'type' => '234570'
+ 'type' => '236808'
}
},
'Reg' => {
'0' => 'rdi'
},
- 'Return' => '74648',
+ 'Return' => '74696',
'ShortName' => 'opj_get_cstr_index',
'Source' => 'openjpeg.c',
- 'SourceLine' => '983'
+ 'SourceLine' => '1014'
},
- '238969' => {
+ '241322' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
'name' => 'p_cstr_index',
- 'type' => '239029'
+ 'type' => '241382'
}
},
'Reg' => {
@@ -959,9 +980,9 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_destroy_cstr_index',
'Source' => 'openjpeg.c',
- 'SourceLine' => '994'
+ 'SourceLine' => '1025'
},
- '239035' => {
+ '241388' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
@@ -985,9 +1006,9 @@ $VAR1 = {
'Return' => '14584',
'ShortName' => 'opj_stream_create_file_stream',
'Source' => 'openjpeg.c',
- 'SourceLine' => '1009'
+ 'SourceLine' => '1040'
},
- '239154' => {
+ '241507' => {
'Header' => 'openjpeg.h',
'Param' => {
'0' => {
@@ -1006,7 +1027,7 @@ $VAR1 = {
'Return' => '14584',
'ShortName' => 'opj_stream_create_default_file_stream',
'Source' => 'openjpeg.c',
- 'SourceLine' => '1002'
+ 'SourceLine' => '1033'
},
'3808' => {
'Header' => 'openjpeg.h',
@@ -1105,7 +1126,7 @@ $VAR1 = {
'Return' => '1',
'ShortName' => 'opj_image_data_free',
'Source' => 'openjpeg.c',
- 'SourceLine' => '1061'
+ 'SourceLine' => '1092'
},
'63643' => {
'Header' => 'openjpeg.h',
@@ -1122,7 +1143,7 @@ $VAR1 = {
'Return' => '130',
'ShortName' => 'opj_image_data_alloc',
'Source' => 'openjpeg.c',
- 'SourceLine' => '1054'
+ 'SourceLine' => '1085'
}
},
'SymbolVersion' => {
@@ -1145,6 +1166,7 @@ $VAR1 = {
'opj_destroy_cstr_info' => 1,
'opj_dump_codec' => 1,
'opj_encode' => 1,
+ 'opj_encoder_set_extra_options' => 1,
'opj_end_compress' => 1,
'opj_end_decompress' => 1,
'opj_get_cstr_index' => 1,
@@ -1418,8 +1440,8 @@ $VAR1 = {
'Size' => '1',
'Type' => 'Const'
},
- '172206' => {
- 'BaseType' => '76870',
+ '174184' => {
+ 'BaseType' => '76994',
'Name' => 'opj_codestream_info_v2_t**',
'Size' => '8',
'Type' => 'Pointer'
@@ -1911,47 +1933,6 @@ $VAR1 = {
'Size' => '8',
'Type' => 'Pointer'
},
- '223520' => {
- 'Header' => 'openjpeg.h',
- 'Line' => '322',
- 'Memb' => {
- '0' => {
- 'name' => 'OPJ_CODEC_UNKNOWN',
- 'value' => '18446744073709551615'
- },
- '1' => {
- 'name' => 'OPJ_CODEC_J2K',
- 'value' => '0'
- },
- '2' => {
- 'name' => 'OPJ_CODEC_JPT',
- 'value' => '1'
- },
- '3' => {
- 'name' => 'OPJ_CODEC_JP2',
- 'value' => '2'
- },
- '4' => {
- 'name' => 'OPJ_CODEC_JPP',
- 'value' => '3'
- },
- '5' => {
- 'name' => 'OPJ_CODEC_JPX',
- 'value' => '4'
- }
- },
- 'Name' => 'enum CODEC_FORMAT',
- 'Size' => '4',
- 'Type' => 'Enum'
- },
- '223570' => {
- 'BaseType' => '223520',
- 'Header' => 'openjpeg.h',
- 'Line' => '329',
- 'Name' => 'OPJ_CODEC_FORMAT',
- 'Size' => '4',
- 'Type' => 'Typedef'
- },
'2236' => {
'Name' => 'float',
'Size' => '4',
@@ -2117,7 +2098,48 @@ $VAR1 = {
'Size' => '216',
'Type' => 'Struct'
},
- '225327' => {
+ '225678' => {
+ 'Header' => 'openjpeg.h',
+ 'Line' => '322',
+ 'Memb' => {
+ '0' => {
+ 'name' => 'OPJ_CODEC_UNKNOWN',
+ 'value' => '18446744073709551615'
+ },
+ '1' => {
+ 'name' => 'OPJ_CODEC_J2K',
+ 'value' => '0'
+ },
+ '2' => {
+ 'name' => 'OPJ_CODEC_JPT',
+ 'value' => '1'
+ },
+ '3' => {
+ 'name' => 'OPJ_CODEC_JP2',
+ 'value' => '2'
+ },
+ '4' => {
+ 'name' => 'OPJ_CODEC_JPP',
+ 'value' => '3'
+ },
+ '5' => {
+ 'name' => 'OPJ_CODEC_JPX',
+ 'value' => '4'
+ }
+ },
+ 'Name' => 'enum CODEC_FORMAT',
+ 'Size' => '4',
+ 'Type' => 'Enum'
+ },
+ '225728' => {
+ 'BaseType' => '225678',
+ 'Header' => 'openjpeg.h',
+ 'Line' => '329',
+ 'Name' => 'OPJ_CODEC_FORMAT',
+ 'Size' => '4',
+ 'Type' => 'Typedef'
+ },
+ '227485' => {
'BaseType' => '130',
'Header' => 'openjpeg.h',
'Line' => '612',
@@ -2137,14 +2159,14 @@ $VAR1 = {
'Size' => '4',
'Type' => 'Const'
},
- '234570' => {
- 'BaseType' => '225327',
+ '236808' => {
+ 'BaseType' => '227485',
'Name' => 'opj_codec_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '239029' => {
- 'BaseType' => '74648',
+ '241382' => {
+ 'BaseType' => '74696',
'Name' => 'opj_codestream_index_t**',
'Size' => '8',
'Type' => 'Pointer'
@@ -2314,7 +2336,7 @@ $VAR1 = {
'Size' => '216',
'Type' => 'Typedef'
},
- '67535' => {
+ '67557' => {
'Header' => 'openjpeg.h',
'Line' => '276',
'Memb' => {
@@ -2339,15 +2361,15 @@ $VAR1 = {
'Size' => '4',
'Type' => 'Enum'
},
- '67575' => {
- 'BaseType' => '67535',
+ '67597' => {
+ 'BaseType' => '67557',
'Header' => 'openjpeg.h',
'Line' => '281',
'Name' => 'OPJ_RSIZ_CAPABILITIES',
'Size' => '4',
'Type' => 'Typedef'
},
- '67587' => {
+ '67609' => {
'Header' => 'openjpeg.h',
'Line' => '287',
'Memb' => {
@@ -2372,15 +2394,15 @@ $VAR1 = {
'Size' => '4',
'Type' => 'Enum'
},
- '67625' => {
- 'BaseType' => '67587',
+ '67647' => {
+ 'BaseType' => '67609',
'Header' => 'openjpeg.h',
'Line' => '292',
'Name' => 'OPJ_CINEMA_MODE',
'Size' => '4',
'Type' => 'Typedef'
},
- '68309' => {
+ '68331' => {
'Header' => 'openjpeg.h',
'Line' => '387',
'Memb' => {
@@ -2422,12 +2444,12 @@ $VAR1 = {
'15' => {
'name' => 'tcp_rates',
'offset' => '4800',
- 'type' => '69173'
+ 'type' => '69195'
},
'16' => {
'name' => 'tcp_distoratio',
'offset' => '5200',
- 'type' => '69173'
+ 'type' => '69195'
},
'17' => {
'name' => 'numresolution',
@@ -2477,22 +2499,22 @@ $VAR1 = {
'25' => {
'name' => 'prcw_init',
'offset' => '5632',
- 'type' => '69189'
+ 'type' => '69211'
},
'26' => {
'name' => 'prch_init',
'offset' => '5764',
- 'type' => '69189'
+ 'type' => '69211'
},
'27' => {
'name' => 'infile',
'offset' => '5896',
- 'type' => '69205'
+ 'type' => '69227'
},
'28' => {
'name' => 'outfile',
'offset' => '9992',
- 'type' => '69205'
+ 'type' => '69227'
},
'29' => {
'name' => 'index_on',
@@ -2507,7 +2529,7 @@ $VAR1 = {
'30' => {
'name' => 'index',
'offset' => '14092',
- 'type' => '69205'
+ 'type' => '69227'
},
'31' => {
'name' => 'image_offset_x0',
@@ -2552,7 +2574,7 @@ $VAR1 = {
'39' => {
'name' => 'jpwl_hprot_TPH_tileno',
'offset' => '18220',
- 'type' => '69222'
+ 'type' => '69244'
},
'4' => {
'name' => 'cp_tdy',
@@ -2562,22 +2584,22 @@ $VAR1 = {
'40' => {
'name' => 'jpwl_hprot_TPH',
'offset' => '18284',
- 'type' => '69222'
+ 'type' => '69244'
},
'41' => {
'name' => 'jpwl_pprot_tileno',
'offset' => '18348',
- 'type' => '69222'
+ 'type' => '69244'
},
'42' => {
'name' => 'jpwl_pprot_packno',
'offset' => '18412',
- 'type' => '69222'
+ 'type' => '69244'
},
'43' => {
'name' => 'jpwl_pprot',
'offset' => '18476',
- 'type' => '69222'
+ 'type' => '69244'
},
'44' => {
'name' => 'jpwl_sens_size',
@@ -2602,12 +2624,12 @@ $VAR1 = {
'48' => {
'name' => 'jpwl_sens_TPH_tileno',
'offset' => '18556',
- 'type' => '69222'
+ 'type' => '69244'
},
'49' => {
'name' => 'jpwl_sens_TPH',
'offset' => '18620',
- 'type' => '69222'
+ 'type' => '69244'
},
'5' => {
'name' => 'cp_disto_alloc',
@@ -2617,7 +2639,7 @@ $VAR1 = {
'50' => {
'name' => 'cp_cinema',
'offset' => '18684',
- 'type' => '67625'
+ 'type' => '67647'
},
'51' => {
'name' => 'max_comp_size',
@@ -2627,7 +2649,7 @@ $VAR1 = {
'52' => {
'name' => 'cp_rsiz',
'offset' => '18692',
- 'type' => '67575'
+ 'type' => '67597'
},
'53' => {
'name' => 'tp_on',
@@ -2677,7 +2699,7 @@ $VAR1 = {
'8' => {
'name' => 'cp_matrice',
'offset' => '32',
- 'type' => '69151'
+ 'type' => '69173'
},
'9' => {
'name' => 'cp_comment',
@@ -2689,45 +2711,45 @@ $VAR1 = {
'Size' => '18720',
'Type' => 'Struct'
},
- '69151' => {
+ '69173' => {
'BaseType' => '87',
'Name' => 'int*',
'Size' => '8',
'Type' => 'Pointer'
},
- '69173' => {
+ '69195' => {
'BaseType' => '2236',
'Name' => 'float[100]',
'Size' => '400',
'Type' => 'Array'
},
- '69189' => {
+ '69211' => {
'BaseType' => '87',
'Name' => 'int[33]',
'Size' => '132',
'Type' => 'Array'
},
- '69205' => {
+ '69227' => {
'BaseType' => '138',
'Name' => 'char[4096]',
'Size' => '4096',
'Type' => 'Array'
},
- '69222' => {
+ '69244' => {
'BaseType' => '87',
'Name' => 'int[16]',
'Size' => '64',
'Type' => 'Array'
},
- '69238' => {
- 'BaseType' => '68309',
+ '69260' => {
+ 'BaseType' => '68331',
'Header' => 'openjpeg.h',
'Line' => '538',
'Name' => 'opj_cparameters_t',
'Size' => '18720',
'Type' => 'Typedef'
},
- '69250' => {
+ '69272' => {
'Header' => 'openjpeg.h',
'Line' => '546',
'Memb' => {
@@ -2779,12 +2801,12 @@ $VAR1 = {
'2' => {
'name' => 'infile',
'offset' => '8',
- 'type' => '69205'
+ 'type' => '69227'
},
'3' => {
'name' => 'outfile',
'offset' => '4104',
- 'type' => '69205'
+ 'type' => '69227'
},
'4' => {
'name' => 'decod_format',
@@ -2821,15 +2843,15 @@ $VAR1 = {
'Size' => '8252',
'Type' => 'Struct'
},
- '69500' => {
- 'BaseType' => '69250',
+ '69522' => {
+ 'BaseType' => '69272',
'Header' => 'openjpeg.h',
'Line' => '606',
'Name' => 'opj_dparameters_t',
'Size' => '8252',
'Type' => 'Typedef'
},
- '70016' => {
+ '70038' => {
'Header' => 'openjpeg.h',
'Line' => '760',
'Memb' => {
@@ -2858,15 +2880,15 @@ $VAR1 = {
'Size' => '32',
'Type' => 'Struct'
},
- '70082' => {
- 'BaseType' => '70016',
+ '70104' => {
+ 'BaseType' => '70038',
'Header' => 'openjpeg.h',
'Line' => '769',
'Name' => 'opj_packet_info_t',
'Size' => '32',
'Type' => 'Typedef'
},
- '70094' => {
+ '70116' => {
'Header' => 'openjpeg.h',
'Line' => '776',
'Memb' => {
@@ -2890,27 +2912,27 @@ $VAR1 = {
'Size' => '24',
'Type' => 'Struct'
},
- '70147' => {
- 'BaseType' => '70094',
+ '70169' => {
+ 'BaseType' => '70116',
'Header' => 'openjpeg.h',
'Line' => '783',
'Name' => 'opj_marker_info_t',
'Size' => '24',
'Type' => 'Typedef'
},
- '70499' => {
- 'BaseType' => '70082',
+ '70521' => {
+ 'BaseType' => '70104',
'Name' => 'opj_packet_info_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '70505' => {
- 'BaseType' => '70147',
+ '70527' => {
+ 'BaseType' => '70169',
'Name' => 'opj_marker_info_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '70845' => {
+ '70867' => {
'Header' => 'openjpeg.h',
'Line' => '900',
'Memb' => {
@@ -2977,33 +2999,33 @@ $VAR1 = {
'8' => {
'name' => 'stepsizes_mant',
'offset' => '32',
- 'type' => '71047'
+ 'type' => '71069'
},
'9' => {
'name' => 'stepsizes_expn',
'offset' => '420',
- 'type' => '71047'
+ 'type' => '71069'
}
},
'Name' => 'struct opj_tccp_info',
'Size' => '1080',
'Type' => 'Struct'
},
- '71047' => {
+ '71069' => {
'BaseType' => '9048',
'Name' => 'OPJ_UINT32[97]',
'Size' => '388',
'Type' => 'Array'
},
- '71079' => {
- 'BaseType' => '70845',
+ '71101' => {
+ 'BaseType' => '70867',
'Header' => 'openjpeg.h',
'Line' => '930',
'Name' => 'opj_tccp_info_t',
'Size' => '1080',
'Type' => 'Typedef'
},
- '71091' => {
+ '71113' => {
'Header' => 'openjpeg.h',
'Line' => '935',
'Memb' => {
@@ -3035,28 +3057,28 @@ $VAR1 = {
'5' => {
'name' => 'tccp_info',
'offset' => '24',
- 'type' => '71183'
+ 'type' => '71205'
}
},
'Name' => 'struct opj_tile_v2_info',
'Size' => '32',
'Type' => 'Struct'
},
- '71183' => {
- 'BaseType' => '71079',
+ '71205' => {
+ 'BaseType' => '71101',
'Name' => 'opj_tccp_info_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '71189' => {
- 'BaseType' => '71091',
+ '71211' => {
+ 'BaseType' => '71113',
'Header' => 'openjpeg.h',
'Line' => '951',
'Name' => 'opj_tile_info_v2_t',
'Size' => '32',
'Type' => 'Typedef'
},
- '71201' => {
+ '71223' => {
'Header' => 'openjpeg.h',
'Line' => '956',
'Memb' => {
@@ -3098,33 +3120,33 @@ $VAR1 = {
'7' => {
'name' => 'm_default_tile_info',
'offset' => '32',
- 'type' => '71189'
+ 'type' => '71211'
},
'8' => {
'name' => 'tile_info',
'offset' => '64',
- 'type' => '71330'
+ 'type' => '71352'
}
},
'Name' => 'struct opj_codestream_info_v2',
'Size' => '72',
'Type' => 'Struct'
},
- '71330' => {
- 'BaseType' => '71189',
+ '71352' => {
+ 'BaseType' => '71211',
'Name' => 'opj_tile_info_v2_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '71336' => {
- 'BaseType' => '71201',
+ '71358' => {
+ 'BaseType' => '71223',
'Header' => 'openjpeg.h',
'Line' => '980',
'Name' => 'opj_codestream_info_v2_t',
'Size' => '72',
'Type' => 'Typedef'
},
- '71348' => {
+ '71370' => {
'Header' => 'openjpeg.h',
'Line' => '986',
'Memb' => {
@@ -3148,15 +3170,15 @@ $VAR1 = {
'Size' => '24',
'Type' => 'Struct'
},
- '71401' => {
- 'BaseType' => '71348',
+ '71423' => {
+ 'BaseType' => '71370',
'Header' => 'openjpeg.h',
'Line' => '994',
'Name' => 'opj_tp_index_t',
'Size' => '24',
'Type' => 'Typedef'
},
- '71413' => {
+ '71435' => {
'Header' => 'openjpeg.h',
'Line' => '999',
'Memb' => {
@@ -3183,7 +3205,7 @@ $VAR1 = {
'4' => {
'name' => 'tp_index',
'offset' => '16',
- 'type' => '71557'
+ 'type' => '71579'
},
'5' => {
'name' => 'marknum',
@@ -3193,7 +3215,7 @@ $VAR1 = {
'6' => {
'name' => 'marker',
'offset' => '32',
- 'type' => '70505'
+ 'type' => '70527'
},
'7' => {
'name' => 'maxmarknum',
@@ -3208,28 +3230,28 @@ $VAR1 = {
'9' => {
'name' => 'packet_index',
'offset' => '48',
- 'type' => '70499'
+ 'type' => '70521'
}
},
'Name' => 'struct opj_tile_index',
'Size' => '56',
'Type' => 'Struct'
},
- '71557' => {
- 'BaseType' => '71401',
+ '71579' => {
+ 'BaseType' => '71423',
'Name' => 'opj_tp_index_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '71563' => {
- 'BaseType' => '71413',
+ '71585' => {
+ 'BaseType' => '71435',
'Header' => 'openjpeg.h',
'Line' => '1026',
'Name' => 'opj_tile_index_t',
'Size' => '56',
'Type' => 'Typedef'
},
- '71575' => {
+ '71597' => {
'Header' => 'openjpeg.h',
'Line' => '1031',
'Memb' => {
@@ -3256,7 +3278,7 @@ $VAR1 = {
'4' => {
'name' => 'marker',
'offset' => '32',
- 'type' => '70505'
+ 'type' => '70527'
},
'5' => {
'name' => 'maxmarknum',
@@ -3271,21 +3293,21 @@ $VAR1 = {
'7' => {
'name' => 'tile_index',
'offset' => '48',
- 'type' => '71693'
+ 'type' => '71715'
}
},
'Name' => 'struct opj_codestream_index',
'Size' => '56',
'Type' => 'Struct'
},
- '71693' => {
- 'BaseType' => '71563',
+ '71715' => {
+ 'BaseType' => '71585',
'Name' => 'opj_tile_index_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '71699' => {
- 'BaseType' => '71575',
+ '71721' => {
+ 'BaseType' => '71597',
'Header' => 'openjpeg.h',
'Line' => '1054',
'Name' => 'opj_codestream_index_t',
@@ -3297,44 +3319,56 @@ $VAR1 = {
'Size' => '1',
'Type' => 'Intrinsic'
},
- '74648' => {
- 'BaseType' => '71699',
+ '74696' => {
+ 'BaseType' => '71721',
'Name' => 'opj_codestream_index_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '76829' => {
+ '76942' => {
'BaseType' => '21147',
'Name' => 'opj_image_t**',
'Size' => '8',
'Type' => 'Pointer'
},
- '76835' => {
- 'BaseType' => '69500',
+ '76948' => {
+ 'BaseType' => '69522',
'Name' => 'opj_dparameters_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '76847' => {
+ '76960' => {
'BaseType' => '23281',
'Name' => 'OPJ_UINT32 const*',
'Size' => '8',
'Type' => 'Pointer'
},
- '76858' => {
- 'BaseType' => '69238',
+ '76971' => {
+ 'BaseType' => '69260',
'Name' => 'opj_cparameters_t*',
'Size' => '8',
'Type' => 'Pointer'
},
- '76864' => {
+ '76977' => {
+ 'BaseType' => '76983',
+ 'Name' => 'char const*const*',
+ 'Size' => '8',
+ 'Type' => 'Pointer'
+ },
+ '76983' => {
+ 'BaseType' => '156',
+ 'Name' => 'char const*const',
+ 'Size' => '8',
+ 'Type' => 'Const'
+ },
+ '76988' => {
'BaseType' => '66818',
'Name' => 'FILE*',
'Size' => '8',
'Type' => 'Pointer'
},
- '76870' => {
- 'BaseType' => '71336',
+ '76994' => {
+ 'BaseType' => '71358',
'Name' => 'opj_codestream_info_v2_t*',
'Size' => '8',
'Type' => 'Pointer'
@@ -3443,6 +3477,7 @@ $VAR1 = {
'getrusage@GLIBC_2.2.5' => 0,
'malloc@GLIBC_2.2.5' => 0,
'memcpy@GLIBC_2.14' => 0,
+ 'memmove@GLIBC_2.2.5' => 0,
'memset@GLIBC_2.2.5' => 0,
'posix_memalign@GLIBC_2.2.5' => 0,
'pow@GLIBC_2.2.5' => 0,
diff --git a/abi-check/abi_dump/openjpeg/current/ef225/meta.json b/abi-check/abi_dump/openjpeg/current/ef225/meta.json
index 8ac88b25..e17fa2a2 100644
--- a/abi-check/abi_dump/openjpeg/current/ef225/meta.json
+++ b/abi-check/abi_dump/openjpeg/current/ef225/meta.json
@@ -1,7 +1,7 @@
{
"Object": "lib/libopenjp2.so.2.3.1",
"Lang": "C",
- "TotalSymbols": "49",
+ "TotalSymbols": "50",
"PublicABI": "1",
"Version": "1.7"
}
\ No newline at end of file
diff --git a/abi-check/changelog/openjpeg/current/log.html b/abi-check/changelog/openjpeg/current/log.html
index e9528994..f9721089 100644
--- a/abi-check/changelog/openjpeg/current/log.html
+++ b/abi-check/changelog/openjpeg/current/log.html
@@ -20,7 +20,74 @@
commit 64689d05dfaaf52105581d93fb1eb173b20829a4 +commit 1d358f25c8eabbc7c274bcc148f4f5d594ec13fe +Merge: 64689d0 4edb8c8 +Author: Even Rouault <even.rouault@spatialys.com> +Date: 2020-05-20 20:29:31 +0200 + + Merge pull request #1246 from rouault/write_plt + + Add support for generation of PLT markers in encoder + +commit 4edb8c83374f52cd6a8f2c7c875e8ffacccb5fa5 +Author: Even Rouault <even.rouault@spatialys.com> +Date: 2020-04-21 15:55:44 +0200 + + Add support for generation of PLT markers in encoder + + * -PLT switch added to opj_compress + * Add a opj_encoder_set_extra_options() function that + accepts a PLT=YES option, and could be expanded later + for other uses. + + ------- + + Testing with a Sentinel2 10m band, T36JTT_20160914T074612_B02.jp2, + coming from S2A_MSIL1C_20160914T074612_N0204_R135_T36JTT_20160914T081456.SAFE + + Decompress it to TIFF: + ``` + opj_uncompress -i T36JTT_20160914T074612_B02.jp2 -o T36JTT_20160914T074612_B02.tif + ``` + + Recompress it with similar parameters as original: + ``` + opj_compress -n 5 -c [256,256],[256,256],[256,256],[256,256],[256,256] -t 1024,1024 -PLT -i T36JTT_20160914T074612_B02.tif -o T36JTT_20160914T074612_B02_PLT.jp2 + ``` + + Dump codestream detail with GDAL dump_jp2.py utility (https://github.com/OSGeo/gdal/blob/master/gdal/swig/python/samples/dump_jp2.py) + ``` + python dump_jp2.py T36JTT_20160914T074612_B02.jp2 > /tmp/dump_sentinel2_ori.txt + python dump_jp2.py T36JTT_20160914T074612_B02_PLT.jp2 > /tmp/dump_sentinel2_openjpeg_plt.txt + ``` + + The diff between both show very similar structure, and identical number of packets in PLT markers + + Now testing with Kakadu (KDU803_Demo_Apps_for_Linux-x86-64_200210) + + Full file decompression: + ``` + kdu_expand -i T36JTT_20160914T074612_B02_PLT.jp2 -o tmp.tif + + Consumed 121 tile-part(s) from a total of 121 tile(s). + Consumed 80,318,806 codestream bytes (excluding any file format) = 5.329697 + bits/pel. + Processed using the multi-threaded environment, with + 8 parallel threads of execution + ``` + + Partial decompresson (presumably using PLT markers): + ``` + kdu_expand -i T36JTT_20160914T074612_B02.jp2 -o tmp.pgm -region "{0.5,0.5},{0.01,0.01}" + kdu_expand -i T36JTT_20160914T074612_B02_PLT.jp2 -o tmp2.pgm -region "{0.5,0.5},{0.01,0.01}" + diff tmp.pgm tmp2.pgm && echo "same !" + ``` + + ------- + + Funded by ESA for S2-MPC project + +commit 64689d05dfaaf52105581d93fb1eb173b20829a4 Author: Even Rouault <even.rouault@spatialys.com> Date: 2020-04-18 18:25:44 +0200 @@ -875,21 +942,6 @@ Date: 2018-08-11 16:59:30 -0400 Building under msys/mingw doesn't automatically install the pkg config files needed to build GDAL and other libraries -commit d2205ba2ee78faeea659263383446c4472b1f9df -Merge: fd205f4 4170681 -Author: Even Rouault <even.rouault@mines-paris.org> -Date: 2018-06-20 16:26:24 +0200 - - Merge pull request #1121 from rouault/fix_tnsot_zero - - Fix regression in reading files with TNsot == 0 (refs #1120) - -commit 4170681661126bc9c1348a0183633dc2f4fc8b05 -Author: Even Rouault <even.rouault@spatialys.com> -Date: 2018-06-20 15:06:16 +0200 - - Add test cases for https://github.com/uclouvain/openjpeg/issues/1120 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2785 - ...
diff --git a/abi-check/compat_report/openjpeg/2.3.1/current/daa7f/abi_compat_report.html b/abi-check/compat_report/openjpeg/2.3.1/current/daa7f/abi_compat_report.html index 9b28f6cd..c709b865 100644 --- a/abi-check/compat_report/openjpeg/2.3.1/current/daa7f/abi_compat_report.html +++ b/abi-check/compat_report/openjpeg/2.3.1/current/daa7f/abi_compat_report.html @@ -1,4 +1,4 @@ - +
@@ -287,7 +287,7 @@ function showContent(header, id)
-
Severity | Count | |
---|---|---|
Added Symbols | - | 0 |
Severity | Count | |
---|---|---|
Added Symbols | - | 1 |
Removed Symbols | High | 0 |
Problems with Data Types | High | 0 |
Medium | 0 | |
Problems with Constants | Low | 0 |
-
Severity | Count | |
---|---|---|
Added Symbols | - | 0 |
Severity | Count | |
---|---|---|
Added Symbols | - | 1 |
Removed Symbols | High | 0 |
Problems with Data Types | High | 0 |
Medium | 0 | |
Problems with Constants | Low | 0 |
-
Severity | Count | |||
---|---|---|---|---|
Added Symbols | - | 0 |
Severity | Count | |
---|---|---|
Added Symbols | - | 1 |
Removed Symbols | High | 0 |
Problems with Data Types | High | 0 |
Medium | 0 | |
Problems with Constants | Low | 0 |
diff --git a/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.a b/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.a index 0b7a2764..5e72adc1 100644 Binary files a/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.a and b/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.a differ diff --git a/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.so.2.3.1 b/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.so.2.3.1 index 4a663077..09a2782f 100644 Binary files a/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.so.2.3.1 and b/abi-check/installed/openjpeg/2.3.1/lib/libopenjp2.so.2.3.1 differ diff --git a/abi-check/installed/openjpeg/current/include/openjpeg-2.3/openjpeg.h b/abi-check/installed/openjpeg/current/include/openjpeg-2.3/openjpeg.h index 3b773e97..da84f399 100644 --- a/abi-check/installed/openjpeg/current/include/openjpeg-2.3/openjpeg.h +++ b/abi-check/installed/openjpeg/current/include/openjpeg-2.3/openjpeg.h @@ -1580,6 +1580,33 @@ OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_encoder(opj_codec_t *p_codec, opj_cparameters_t *parameters, opj_image_t *image); + +/** + * Specify extra options for the encoder. + * + * This may be called after opj_setup_encoder() and before opj_start_compress() + * + * This is the way to add new options in a fully ABI compatible way, without + * extending the opj_cparameters_t structure. + * + * Currently supported options are: + *
+ * + * @param p_codec Compressor handle + * @param p_options Compression options. This should be a NULL terminated + * array of strings. Each string is of the form KEY=VALUE. + * + * @return OPJ_TRUE in case of success. + * @since 2.3.2 + */ +OPJ_API OPJ_BOOL OPJ_CALLCONV opj_encoder_set_extra_options( + opj_codec_t *p_codec, + const char* const* p_options); + /** * Start to compress the current image. * @param p_codec Compressor handle diff --git a/abi-check/installed/openjpeg/current/lib/libopenjp2.a b/abi-check/installed/openjpeg/current/lib/libopenjp2.a index 6ad4dcb2..fc6bce6e 100644 Binary files a/abi-check/installed/openjpeg/current/lib/libopenjp2.a and b/abi-check/installed/openjpeg/current/lib/libopenjp2.a differ diff --git a/abi-check/installed/openjpeg/current/lib/libopenjp2.so.2.3.1 b/abi-check/installed/openjpeg/current/lib/libopenjp2.so.2.3.1 index f586f8a7..2bdb30d0 100644 Binary files a/abi-check/installed/openjpeg/current/lib/libopenjp2.so.2.3.1 and b/abi-check/installed/openjpeg/current/lib/libopenjp2.so.2.3.1 differ diff --git a/abi-check/objects_report/openjpeg/2.3.1/current/meta.json b/abi-check/objects_report/openjpeg/2.3.1/current/meta.json index cdabadd3..8f03018c 100644 --- a/abi-check/objects_report/openjpeg/2.3.1/current/meta.json +++ b/abi-check/objects_report/openjpeg/2.3.1/current/meta.json @@ -1,6 +1,6 @@ { "BC": "100", - "Added": 0, + "Added": 1, "Removed": 0, "TotalProblems": 0, "ObjectsAdded": 0, diff --git a/abi-check/objects_report/openjpeg/2.3.1/current/report.html b/abi-check/objects_report/openjpeg/2.3.1/current/report.html index fa3f9bcb..8f584145 100644 --- a/abi-check/objects_report/openjpeg/2.3.1/current/report.html +++ b/abi-check/objects_report/openjpeg/2.3.1/current/report.html @@ -30,7 +30,7 @@
diff --git a/abi-check/timeline/openjpeg/index.html b/abi-check/timeline/openjpeg/index.html index a68882e0..2e34b9d0 100644 --- a/abi-check/timeline/openjpeg/index.html +++ b/abi-check/timeline/openjpeg/index.html @@ -30,11 +30,11 @@
@@ -179,7 +179,7 @@
-
Maintained by OpenJPEG team. Last updated on Sat Apr 18 16:51:56 2020.
+
Maintained by OpenJPEG team. Last updated on Wed May 20 18:39:50 2020.