Index: ecwdataset.cpp
===================================================================
--- ecwdataset.cpp (revision 28040)
+++ ecwdataset.cpp (working copy)
@@ -2522,11 +2522,144 @@
}
}
- poDS->SetMetadataItem("COMPRESSION_RATE_TARGET", CPLString().Printf("%d", poDS->psFileInfo->nCompressionRate));
- poDS->SetMetadataItem("COLORSPACE", ECWGetColorSpaceName(poDS->psFileInfo->eColorSpace));
+ poDS->SetMetadataItem("COMPRESSION_RATE_TARGET", CPLString().Printf("%d", poDS->psFileInfo->nCompressionRate));
+ poDS->SetMetadataItem("COLORSPACE", ECWGetColorSpaceName(poDS->psFileInfo->eColorSpace));
#if ECWSDK_VERSION>=50
- poDS->SetMetadataItem("VERSION", CPLString().Printf("%d", poDS->psFileInfo->nFormatVersion));
- if ( poDS->psFileInfo->nFormatVersion >=3 ){
+ if( !bIsJPEG2000 )
+ poDS->SetMetadataItem("VERSION", CPLString().Printf("%d", poDS->psFileInfo->nFormatVersion));
+#if ECWSDK_VERSION>=51
+
+ // output jp2 header info
+ if( bIsJPEG2000 && poDS->poFileView ) {
+ // comments
+ char *csComments = NULL;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:COMMENTS", &csComments);
+ if (csComments) {
+ poDS->SetMetadataItem("ALL_COMMENTS", CPLString().Printf("%s", csComments));
+ NCSFree(csComments);
+ }
+
+ // Profile
+ UINT32 nProfile = 2;
+ UINT32 nRsiz = 0;
+ poDS->poFileView->GetParameter("JP2:COMPLIANCE:PROFILE:TYPE", &nRsiz);
+ if (nRsiz == 0)
+ nProfile = 2; // Profile 2 (no restrictions)
+ else if (nRsiz == 1)
+ nProfile = 0; // Profile 0
+ else if (nRsiz == 2)
+ nProfile = 1; // Profile 1, NITF_BIIF_NPJE, NITF_BIIF_EPJE
+ poDS->SetMetadataItem("PROFILE", CPLString().Printf("%d", nProfile), JPEG2000_DOMAIN_NAME);
+
+ // number of tiles on X axis
+ UINT32 nTileNrX = 1;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:TILENR:X", &nTileNrX);
+ poDS->SetMetadataItem("TILES_X", CPLString().Printf("%d", nTileNrX), JPEG2000_DOMAIN_NAME);
+
+ // number of tiles on X axis
+ UINT32 nTileNrY = 1;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:TILENR:Y", &nTileNrY);
+ poDS->SetMetadataItem("TILES_Y", CPLString().Printf("%d", nTileNrY), JPEG2000_DOMAIN_NAME);
+
+ // Tile Width
+ UINT32 nTileSizeX = 0;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:TILESIZE:X", &nTileSizeX);
+ poDS->SetMetadataItem("TILE_WIDTH", CPLString().Printf("%d", nTileSizeX), JPEG2000_DOMAIN_NAME);
+
+ // Tile Height
+ UINT32 nTileSizeY = 0;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:TILESIZE:Y", &nTileSizeY);
+ poDS->SetMetadataItem("TILE_HEIGHT", CPLString().Printf("%d", nTileSizeY), JPEG2000_DOMAIN_NAME);
+
+ // Precinct Sizes on X axis
+ char *csPreSizeX = NULL;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:PRECINCTSIZE:X", &csPreSizeX);
+ if (csPreSizeX) {
+ poDS->SetMetadataItem("PRECINCT_SIZE_X", CPLString().Printf("%s", csPreSizeX), JPEG2000_DOMAIN_NAME);
+ NCSFree(csPreSizeX);
+ }
+
+ // Precinct Sizes on Y axis
+ char *csPreSizeY = NULL;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:PRECINCTSIZE:Y", &csPreSizeY);
+ if (csPreSizeY) {
+ poDS->SetMetadataItem("PRECINCT_SIZE_Y", CPLString().Printf("%s", csPreSizeY), JPEG2000_DOMAIN_NAME);
+ NCSFree(csPreSizeY);
+ }
+
+ // Code Block Size on X axis
+ UINT32 nCodeBlockSizeX = 0;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:CODEBLOCK:X", &nCodeBlockSizeX);
+ poDS->SetMetadataItem("CODE_BLOCK_SIZE_X", CPLString().Printf("%d", nCodeBlockSizeX), JPEG2000_DOMAIN_NAME);
+
+ // Code Block Size on Y axis
+ UINT32 nCodeBlockSizeY = 0;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:CODEBLOCK:Y", &nCodeBlockSizeY);
+ poDS->SetMetadataItem("CODE_BLOCK_SIZE_Y", CPLString().Printf("%d", nCodeBlockSizeY), JPEG2000_DOMAIN_NAME);
+
+ // Bitdepth
+ char *csBitdepth = NULL;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:BITDEPTH", &csBitdepth);
+ if (csBitdepth) {
+ poDS->SetMetadataItem("PRECISION", CPLString().Printf("%s", csBitdepth), JPEG2000_DOMAIN_NAME);
+ NCSFree(csBitdepth);
+ }
+
+ // Resolution Levels
+ UINT32 nLevels = 0;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:RESOLUTION:LEVELS", &nLevels);
+ poDS->SetMetadataItem("RESOLUTION_LEVELS", CPLString().Printf("%d", nLevels), JPEG2000_DOMAIN_NAME);
+
+ // Qualaity Layers
+ UINT32 nLayers = 0;
+ poDS->poFileView->GetParameter("JP2:DECOMPRESS:LAYERS", &nLayers);
+ poDS->SetMetadataItem("QUALITY_LAYERS", CPLString().Printf("%d", nLayers), JPEG2000_DOMAIN_NAME);
+
+ // Progression Order
+ char *csOrder = NULL;
+ poDS->poFileView->GetParameter("JPC:DECOMPRESS:PROGRESSION:ORDER", &csOrder);
+ if (csOrder) {
+ poDS->SetMetadataItem("PROGRESSION_ORDER", CPLString().Printf("%s", csOrder), JPEG2000_DOMAIN_NAME);
+ NCSFree(csOrder);
+ }
+
+ // DWT Filter
+ const char *csFilter = NULL;
+ UINT32 nFilter;
+ poDS->poFileView->GetParameter("JP2:TRANSFORMATION:TYPE", &nFilter);
+ if (nFilter)
+ csFilter = "5x3";
+ else
+ csFilter = "9x7";
+ poDS->SetMetadataItem("TRANSFORMATION_TYPE", CPLString().Printf("%s", csFilter), JPEG2000_DOMAIN_NAME);
+
+ // SOP used?
+ bool bSOP = 0;
+ poDS->poFileView->GetParameter("JP2:DECOMPRESS:SOP:EXISTS", &bSOP);
+ if (bSOP)
+ poDS->SetMetadataItem("USE_SOP", CPLString().Printf("TRUE"), JPEG2000_DOMAIN_NAME);
+ else
+ poDS->SetMetadataItem("USE_SOP", CPLString().Printf("FALSE"), JPEG2000_DOMAIN_NAME);
+
+ // EPH used?
+ bool bEPH = 0;
+ poDS->poFileView->GetParameter("JP2:DECOMPRESS:EPH:EXISTS", &bEPH);
+ if (bEPH)
+ poDS->SetMetadataItem("USE_EPH", CPLString().Printf("TRUE"), JPEG2000_DOMAIN_NAME);
+ else
+ poDS->SetMetadataItem("USE_EPH", CPLString().Printf("FALSE"), JPEG2000_DOMAIN_NAME);
+
+ // GML JP2 data contained?
+ bool bGML = 0;
+ poDS->poFileView->GetParameter("JP2:GML:JP2:BOX:EXISTS", &bGML);
+ if (bGML)
+ poDS->SetMetadataItem("GML_JP2_DATA", CPLString().Printf("CONTAINED"), JPEG2000_DOMAIN_NAME);
+ else
+ poDS->SetMetadataItem("GML_JP2_DATA", CPLString().Printf("NOT_FOUND"), JPEG2000_DOMAIN_NAME);
+
+ }
+ #endif //ECWSDK_VERSION>=51
+ if ( !bIsJPEG2000 && poDS->psFileInfo->nFormatVersion >=3 ){
poDS->SetMetadataItem("COMPRESSION_RATE_ACTUAL", CPLString().Printf("%f", poDS->psFileInfo->fActualCompressionRate));
poDS->SetMetadataItem("CLOCKWISE_ROTATION_DEG", CPLString().Printf("%f", poDS->psFileInfo->fCWRotationDegrees));
poDS->SetMetadataItem("COMPRESSION_DATE", poDS->psFileInfo->sCompressionDate);
Index: frmt_ecw.html
===================================================================
--- frmt_ecw.html (revision 28040)
+++ frmt_ecw.html (working copy)
@@ -1,88 +1,33 @@
-ECW -- ERDAS Compress Wavelets (.ecw)
+ECW -- Enhanced Compressed Wavelets (.ecw)
-ECW -- ERDAS Compress Wavelets (.ecw)
+ECW -- Enhanced Compressed Wavelets (.ecw)
-GDAL supports .ecw format for read access and write. The current
-implementation reads any number of bands but returns only as eight bit
-image data. Coordinate system and georeferencing transformations are read,
-but in some cases coordinate systems may not translate.
+GDAL supports reading and writing ECW files using the ERDAS ECW/JP2 SDK developed by
+Hexagon Geospatial (formerly Intergraph, ERDAS, ERMapper). Support is optional and
+requires linking in the libraries available from the ECW/JP2 SDK Download page.
-Support for the ECW driver in GDAL is optional, and requires linking
-in external ECW SDK libraries provided by Intergraph (previously ERDAS).
+
Licensing
-In addition to ECW files, this driver also supports access to network
-image services using the "ECWP" protocol. Use the full ecwp:// url of
-the service as the dataset name. When built with SDK 4.1 or newer it
-is also possible to take advantage of
-
-RFC 24 style asynchronous access to ECWP services.
+The ERDAS ECW/JP2 SDK v5.x is available under multiple license types. For Desktop usage, decoding
+any sized ECW/JP2 image is made available free of charge. To compress, deploy on a Server platform, or decode
+unlimited sized files on Mobile platforms a license must be purchased from Hexagon Geospatial.
-Starting with GDAL 1.9.0, XMP metadata can be extracted from JPEG2000 files, and will be
-stored as XML raw content in the xml:XMP metadata domain.
-
ECW metadata domain / Georeferencing update
-
-(Starting with GDAL 1.9.0)
-
-The PROJ, DATUM and UNITS found in the ECW header are
-reported in the ECW metadata domain. They can also be set with the SetMetadataItem()
-method, in order to update the header information of an existing ECW file,
-opened in update mode, without modifying the imagery.
-
-The geotransform and projection can also be modified with the SetGeoTransform()
-and SetProjection() methods. If the projection is set with SetProjection() and
-the PROJ, DATUM or UNITS with SetMetadataItem(), the later values will override the values
-built from the projection string.
-
-
ECW Version 3 Files
-(Starting with GDAL 1.10.0)
-
-ECW 5.x SDK provides amended file format which allows to store data statistics, histograms,
-metadata, rpc metadata and supports UInt16 as band data type.
-
-Currently not everything is implemented:
+
History
-
-- Statistics and Histograms - full implementation for writing and reading. No ECW_OEM_KEY neccessary.
-
- File Metadata - read only support. Statistics will also be preserved/updated during CreateCopy.
-
- RPC Metadata - supported by file format, not supported by driver.
-
- Header Metadata - written by SDK itself. Reported by gdalinfo.
+
- v3.x - Last release, 2006
+- v4.x - Last release, 2012
+- v5.x - Active development, 2013 - current
+Creation Options
-File Metadata Keys:
-
-
-- FILE_METADATA_ACQUISITION_DATE
-
- FILE_METADATA_ACQUISITION_SENSOR_NAME
-
- FILE_METADATA_ADDRESS
-
- FILE_METADATA_AUTHOR
-
- FILE_METADATA_CLASSIFICATION
-
- FILE_METADATA_COMPANY - should be set to ECW_OEM_KEY
-
- FILE_METADATA_COMPRESSION_SOFTWARE - updated during recompression
-
- FILE_METADATA_COPYRIGHT
-
- FILE_METADATA_EMAIL
-
- FILE_METADATA_TELEPHONE
-
-
-Following Header Metadata will be reported:
-
-- CLOCKWISE_ROTATION_DEG
-
- COLORSPACE (reported for V2 files as well)
-
- COMPRESSION_DATE
-
- COMPRESSION_RATE_ACTUAL
-
- COMPRESSION_RATE_TARGET (reported for V2 files as well)
-
- VERSION (reported for V2 files as well)
-
-
-Creation Issues
-
-The ECW 4.x SDK from ERDAS is only free for image decompression. To
+The ERDAS ECW/JP2 v4.x and v5.x SDK is only free for image decompression. To
compress images it is necessary to build with the read/write SDK and to
provide an OEM licensing key at runtime which may be purchased from ERDAS.
@@ -100,10 +45,23 @@
ECW name for the coordinate system you can force it to be set at
creation time with the PROJ and DATUM creation options.
-Creation Options:
+ECW format does not support creation of overviews since the ECW format
+is already considered to be optimized for "arbitrary overviews".
+
Creation Options:
+
-ECW format does not support creation of overviews since the ECW format
-is already considered to be optimized for "arbitrary overviews".
-
Configuration Options
The ERDAS ECW SDK supports a variety of
@@ -184,21 +124,73 @@
available. Defaults to TRUE. If set to FALSE an invalid file will result
in an error.
-
ECW_ENCODE_KEY, ECW_ENCODE_COMPANY: These values, as described
-in the creation options, may also be set as configuration options. See above.
-
+
+
ECW Version 3 Files
+(Starting with GDAL 1.10.0)
+
+ECW 5.x SDK introduces a new file format version which,
+
+- Storage of data statistics, histograms, metadata, RPC information within the file header
+- Support for UInt16 data type
+- Ability to update regions within an existing ECW v3 file
+- Introduces other space saving optimizations
+
+
+Note: This version is not backward compatible and will fail to decode in v3.x or v4.x ECW/JP2 SDK's. The File VERSION Metadata will advertise whether the file is ECW v2 or ECW v3.
+
+ECWP
+In addition to local files, this driver also supports access to streaming network
+imagery services using the proprietary "ECWP" protocol from the ERDAS APOLLO product. Use the full ecwp:// prefixed dataset url
+as input. When built with ECW/JP2 SDK v4.1 or newer it
+is also possible to take advantage of
+
+RFC 24 for asynchronous / progressive streaming access to ECWP services.
+
+
Metadata / Georeferencing
+
+(Starting with GDAL 1.9.0)
+
+The PROJ, DATUM and UNITS found in the ECW header are
+reported in the ECW metadata domain. They can also be set with the SetMetadataItem()
+method, in order to update the header information of an existing ECW file,
+opened in update mode, without modifying the imagery.
+
+The geotransform and projection can also be modified with the SetGeoTransform()
+and SetProjection() methods. If the projection is set with SetProjection() and
+the PROJ, DATUM or UNITS with SetMetadataItem(), the later values will override the values
+built from the projection string.
+
+
File Metadata Keys:
+
+
+- FILE_METADATA_ACQUISITION_DATE
+
- FILE_METADATA_ACQUISITION_SENSOR_NAME
+
- FILE_METADATA_ADDRESS
+
- FILE_METADATA_AUTHOR
+
- FILE_METADATA_CLASSIFICATION
+
- FILE_METADATA_COMPANY - should be set to ECW_ENCODE_COMPANY
+
- FILE_METADATA_COMPRESSION_SOFTWARE - updated during recompression
+
- FILE_METADATA_COPYRIGHT
+
- FILE_METADATA_EMAIL
+
- FILE_METADATA_TELEPHONE
+
- CLOCKWISE_ROTATION_DEG
+
- COLORSPACE
+
- COMPRESSION_DATE
+
- COMPRESSION_RATE_ACTUAL
+
- COMPRESSION_RATE_TARGET
+
- VERSION
-See Also:
+See Also
Index: frmt_jp2ecw.html
===================================================================
--- frmt_jp2ecw.html (revision 28040)
+++ frmt_jp2ecw.html (working copy)
@@ -7,31 +7,46 @@
JP2ECW -- ERDAS JPEG2000 (.jp2)
-GDAL supports reading and writing JPEG2000 files using the ECW SDK from
-ERDAS.
+GDAL supports reading and writing JPEG2000 files using the ERDAS ECW/JP2 SDK developed by
+Hexagon Geospatial (formerly Intergraph, ERDAS, ERMapper). Support is optional and
+requires linking in the libraries available from the ECW/JP2 SDK Download page.
Coordinate system and georeferencing transformations are read, and
some degree of support is included for GeoJP2 (tm) (GeoTIFF-in-JPEG2000),
ERDAS GML-in-JPEG2000, and the new GML-in-JPEG2000 specification developed
at OGC.
-Support for the JP2ECW driver in GDAL is optional, and requires linking
-in external ECW SDK libraries provided by ERDAS.
+
Licensing
-Creation Issues
+The ERDAS ECW/JP2 SDK v5.x is available under multiple license types. For Desktop usage, decoding
+any sized ECW/JP2 image is made available free of charge. To compress, deploy on a Server platform, or decode
+unlimited sized files on Mobile platforms a license must be purchased from Hexagon Geospatial.
-The ECW 4.x SDK from ERDAS is only free for image decompression. To
-compress images it is necessary to build with the read/write SDK and to
-provide an OEM licensing key at runtime which may be purchased from ERDAS.
-For those still using the ECW 3.3 SDK, images less than 500MB may be
-compressed for free, while larger images require licensing from ERDAS. See
-the licensing agreement and the LARGE_OK option.
+
History
+
+- v3.x - Last release, 2006
+- v4.x - Last release, 2012
+- v5.x - Active development, 2013 - current
+
-Creation Options:
+
Creation Options:
+Note: Only Licensing and compression target need to be specified. The ECW/JP2 SDK will default all other options to recommended settings based on the input characteristics.
+Changing other options can substantially impact decoding speed and compatibility with other JPEG2000 toolkits.
+
+- LARGE_OK=YES: (v3.x SDK only) Allow compressing files larger than 500MB in accordance with EULA terms. Deprecated since v4.x and
+replaced by ECW_ENCODE_KEY & ECW_ENCODE_COMPANY.
+
+
- ECW_ENCODE_KEY=key: (v4.x SDK or higher) Provide the OEM encoding key to unlock encoding capability
+up to the licensed gigapixel limit. The key is is approximately 129 hex digits long. The Company and Key must match and must be re-generated with each minor release of the SDK. It may also be provided globally as a configuration option.
+
+
- ECW_ENCODE_COMPANY=name: (v4.x SDK or higher) Provide the name of the company in the issued
+OEM key (see ECW_ENCODE_KEY). The Company and Key must match and must be re-generated with each minor release of the SDK. It may also be provided
+globally as a configuration option.
+
- TARGET=percent: Set the target size reduction as a percentage of
the original. If not provided defaults to 75 for an 75% reduction. TARGET=0
uses lossless compression.
@@ -42,20 +57,6 @@
- DATUM=name: Name of the ECW datum string to use.
Common examples are WGS84 or NAD83.
-
- LARGE_OK=YES: When built with the ECW 3.x SDK this option can be
-set to allow compressing files larger than 500MB. It is the users
-responsibility to ensure that the licensing requirments for large file
-compression are being adhered to.
-
-
- ECW_ENCODE_KEY=key: Provide the OEM encoding key purchased from
-Erdas which permits encoding images. The key is is approximately 129 hex
-digits long. It may also be provided globally as a configuration option.
-
-
- ECW_ENCODE_COMPANY=name: Provide the name of the company ERDAS
-issued the OEM encoding key (see ECW_ENCODE_KEY) to. This must exactly match
-the name used by ERDAS in issuing the OEM key. It may also be provided
-globally as a configuration option.
-
- GMLJP2=YES/NO: Indicates whether a GML box conforming to the OGC GML in JPEG2000 specification should be included in the file. Defaults to YES.
- GeoJP2=YES/NO: Indicates whether a UUID/GeoTIFF box conforming to the GeoJP2 (GeoTIFF in JPEG2000) specification should be included in the file. Defaults to YES.
@@ -65,23 +66,23 @@
meanings.
- PROGRESSION=LRCP/RLCP/RPCL: Set the progression order with
-which the JPEG2000 codestream is written.
+which the JPEG2000 codestream is written. (Default, RPCL)
- CODESTREAM_ONLY=YES/NO: If set to YES, only the compressed
-imagery code stream will be written. If NO (the default) a JP2 package
+imagery code stream will be written. If NO a JP2 package
will be written around the code stream including a variety of meta
-information.
+information. (Default, NO)
-
- LEVELS=n: See ECW SDK for details.
-
- LAYERS=n: See ECW SDK for details.
-
- PRECINCT_WIDTH=n: See ECW SDK for details.
-
- PRECINCT_HEIGHT=n: See ECW SDK for details.
-
- TILE_WIDTH=n: See ECW SDK for details.
-
- TILE_HEIGHT=n: See ECW SDK for details.
-
- INCLUDE_SOP=YES/NO: See ECW SDK for details.
-
- INCLUDE_EPH=YES/NO: See ECW SDK for details.
-
- DECOMPRESS_LAYERS=n: See ECW SDK for details.
-
- DECOMPRESS_RECONSTRUCTION_PARAMETER=n: See ECW SDK for details.
+
- LEVELS=n: Levels in pyramid (default, r=0 <= 64x64)
+
- LAYERS=n: Quality layers (default, 1)
+
- PRECINCT_WIDTH=n: Precinct Width (default, 64)
+
- PRECINCT_HEIGHT=n: Precinct Height (default 64)
+
- TILE_WIDTH=n: Tile Width (default, file width eg. 1 tile)
+
- TILE_HEIGHT=n: Tile Height (default, file height eg. 1 tile)
+
- INCLUDE_SOP=YES/NO: Output Start of Packet Marker (default false)
+
- INCLUDE_EPH=YES/NO: Output End of Packet Header Marker (default true)
+
- DECOMPRESS_LAYERS=n: The number of quality layers to decode
+
- DECOMPRESS_RECONSTRUCTION_PARAMETER=n: IRREVERSIBLE_9x7 or REVERSIBLE_5x3
@@ -90,10 +91,10 @@
Configuration Options
-The ERDAS ECW SDK supports a variety of
+The ERDAS ECW/JP2 SDK supports a variety of
runtime configuration
options to control various features. Most of these are exposed as GDAL
-configuration options. See the ECW SDK documentation for full details on the
+configuration options. See the ECW/JP2 SDK documentation for full details on the
meaning of these options.
@@ -119,11 +120,34 @@
available. Defaults to TRUE. If set to FALSE an invalid file will result
in an error.
-
- ECW_ENCODE_KEY, ECW_ENCODE_COMPANY: These values, as described
-in the creation options, may also be set as configuration options. See above.
-
+
+Metadata
+Starting with GDAL 1.11.0, XMP metadata can be extracted from JPEG2000 files, and will be
+stored as XML raw content in the xml:XMP metadata domain.
+
+ECW/JP2 SDK v5.1+ also advertises JPEG2000 structural information as generic File Metadata reported under "JPEG2000" metadata domain (-mdd):
+
+- ALL_COMMENTS: Generic comment text field
+
- PROFILE: Profile type (0,1,2). Refer to ECW/JP2 SDK documentation for more info
+
- TILES_X: Number of tiles on X Axis
+
- TILES_Y: Number of tiles on Y Axis
+
- TILE_WIDTH: Tile size on X Axis
+
- TILE_HEIGHT: Tile size on Y Axis
+
- PRECINCT_SIZE_X: Precinct size for each resolution level (smallest to largest) on X Axis
+
- PRECINCT_SIZE_Y: Precinct size for each resolution level (smallest to largest) on Y Axis
+
- CODE_BLOCK_SIZE_X: Code block size on X Axis
+
- CODE_BLOCK_SIZE_Y: Code block size on Y Axis
+
- PRECISION: Precision / Bit-depth of each component eg. 8,8,8 for 8bit 3 band imagery.
+
- RESOLUTION_LEVELS: Number of resolution levels
+
- QUALITY_LAYERS: Number of quality layers
+
- PROGRESSION_ORDER: Progression order (RPCL, LRCP, CPRL, RLCP)
+
- TRANSFORMATION_TYPE: Filter transformation used (0=9x7, 1=5x3)
+
- USE_SOP: Start of Packet marker detected (True/False)
+
- USE_EPH: End of Packet header marker detected (True/False)
+
- GML_JP2_DATA: OGC GML GeoReferencing box detected (True/False)
+
- COMPRESSION_RATE_TARGET: Target compression rate used on encoding
See Also
@@ -131,8 +155,9 @@
Index: gdal_ecw.h
===================================================================
--- gdal_ecw.h (revision 28040)
+++ gdal_ecw.h (working copy)
@@ -79,6 +79,9 @@
#else
#if ECWSDK_VERSION>=50
+ #if ECWSDK_VERSION>=51
+ #define JPEG2000_DOMAIN_NAME "JPEG2000"
+ #endif
#include
#include "NCSEcw/SDK/Box.h"
#else