jp2 file doesn't open

Bugs found in XnView Classic. Please report only one bug per topic!

Moderators: XnTriq, helmut, xnview

lower elkmont
Posts: 5
Joined: Fri Jul 07, 2017 5:37 am

jp2 file doesn't open

Post by lower elkmont »

Jp2 file at

https://prd-tnm.s3.amazonaws.com/Staged ... 151123.jp2

doesn't open. I get eror message "format of the file could not be determined."

This is a large 23 MB USGS area photoimage.

I have tried some even larger such files and got the same message. I got the error message quicker with the larger file.

I can open smaller .jpg images, 150 KB, with no problem.

I have nView 2.40 full.

I have openjp2.dll, 273 KB 1/12/17.
cday
XnThusiast
Posts: 4169
Joined: Sun Apr 29, 2012 9:45 am
Location: Cheltenham, U.K.

Re: jp2 file doesn't open

Post by cday »

Possibly due to the limit on addressable memory for 32-bit software, could you try using XnView MP 64-bit if you are able to...
lower elkmont
Posts: 5
Joined: Fri Jul 07, 2017 5:37 am

Re: jp2 file doesn't open

Post by lower elkmont »

I have only 32-bit Windows 7.

Can anybody open this file?
iknowtheanswer

Re: jp2 file doesn't open

Post by iknowtheanswer »

Grab Xjp2.dll plugin. I opened your image with xnview 2.36 using xjp2.dll v 1.98.3 from November 14 2011. Peak memory amount used while decoding did not rise higher than 700 mb. Decoding took around 1 min on weak cpu. Picture is b/w view on the city from above and some dark area which seems to be river. You don't need to remove openjp2 plugin to get xjp2 working.
lower elkmont
Posts: 5
Joined: Fri Jul 07, 2017 5:37 am

Re: jp2 file doesn't open

Post by lower elkmont »

Results not good.

I downloaded xjp2.dll. It was version 1.37, 192 KB.

I copied it to the plugin directory.

I tried to open the file. This time I got a not enough memory message. I have 4 GB in my system with 3.49 available. I turned task manager on and opened the file again. My physical memory used was 61% just before I got the not enough memory message.

I tried it a few more times and sometimes got the unknown format message that I got before. I tried another larger file that I have and got the same message.

I never understood how the program handled two plugins, xjp2.dll and openjp2.dll. I dummied out the extension on openjp2 and restarted Windows. I verified in XnView plugins that I had only one jp2 plugin. I opened the file again. Thus time I got the unknown format message, not the memory message. So replacing openjp2.dll with xjp2.dll got the same result that I got with openjp2.dll alone. Screwy.

Now the bad news.

I saw some a number of posts that all said to try IrfanView for jp2 problems. I downloaded it. Lo and behold IrfinView opened both of my files quickly and without difficulty.

I looked in the IrfanView plugins directory and discovered a file jpeg2000.dll. I also noticed that Irfan had a personal copyright on the file. Has Irfan discovered some secret about jpeg2000 files? It almost looks that way.

It looks like XnView has a limited jp2 plugin and needs a new one.
User avatar
xnview
Author of XnView
Posts: 44761
Joined: Mon Oct 13, 2003 7:31 am
Location: France

Re: jp2 file doesn't open

Post by xnview »

For JP2000, i use OpenJpeg SDK, and it detect a problem with the file format. Xjp2 is the old plugin based on Jasper implementation.
Pierre.
iknowtheanswer

Re: jp2 file doesn't open

Post by iknowtheanswer »

Glad you found solution for your problem, but where did you find so old version of Xjp2? Working plugin is located here http://www.xnview.com/download/plugins/jp2000.zip
lower elkmont
Posts: 5
Joined: Fri Jul 07, 2017 5:37 am

Re: jp2 file doesn't open

Post by lower elkmont »

I downloaded xjp2.dll from XnView, product version 1.98.3, 11/14/2011/ 224 KB. I copied it to the XnView plugin directory.

I dummied out openjp2.dll so I had only one jp2 plugin.

I started XnView. I went to plug in information. I did not see openjp2.dll. I saw xjp2.dll as JPEG-2000 format (read/write).

I opened a small .jp2 file. It worked.

I tried opening the 23 MB file. I immediately got the format of the file could not be determined message.

I undummied openjp2.dll so I had two jp2 plugins. I restarted Windows.

I verified at plug information information that I had both plugins.

I opened a small .jp2 file. It worked as usual.

I then tried the file. This time, the program started processing and I watched it in task manager and saw cycles and memory being used. After a few seconds I got the out of memory message.

It looks like you need both plugins for some reason.

I have another .jp2 file that I didn't post that is 187 MB in size. I tried it and got the format could not be determined message. Even with both plugins, the program did not start processing that file.

Though iknowtheanswer said he could open the picture with 1 98 3 and Xnview 2.36, Xjp2 1.98.3 did not fix the problem for me. I have 2.40 under Win 7 SP1, 4 GB memory, 3.49 available. He said that the picture was b/w. Actually the picture is color has has lots of green trees and grass in it. I don't know if that difference has any significance or not. It may not.

Bottom line: I can't open the file in XnView though I can in IrfanView.
User avatar
XnTriq
Moderator & Librarian
Posts: 6386
Joined: Sun Sep 25, 2005 3:00 am
Location: Ref Desk

Re: jp2 file doesn't open

Post by XnTriq »

Welcome to the forum, le.

I was able to partially open m_3408625_nw_16_1_20150617_20151123.jp2 with XnView v2.40 by downloading jpg2000_lwf.zip and extracting lwf_jp2.dll to the Plugins subdirectory of my XnView installation. (You might have to remove openjp2.dll and Xjp2.dll to avoid conflicts.)
p143761.png
XnView.com (XnView Classic → Additional Downloads → [url=http://www.xnview.com/en/xnview/#addons]I/O Plugins[/url]) wrote:JPEG 2000 LWF | JPEG-2000 JP2/JPC File format (read/write) (Can only save images up to 4096x4096 pixels)
You do not have the required permissions to view the files attached to this post.
User avatar
XnTriq
Moderator & Librarian
Posts: 6386
Joined: Sun Sep 25, 2005 3:00 am
Location: Ref Desk

Re: jp2 file doesn't open

Post by XnTriq »

Updated screenshots:
p143765_1.png
p143765_2.png
You do not have the required permissions to view the files attached to this post.
User avatar
XnTriq
Moderator & Librarian
Posts: 6386
Joined: Sun Sep 25, 2005 3:00 am
Location: Ref Desk

Re: jp2 file doesn't open

Post by XnTriq »

As already indicated by Pierre, …
xnview wrote:For JP2000, i use OpenJpeg SDK, and it detect a problem with the file format.
… the file seems to be damaged.
[color=green]jpylyzer.exe --verbose m_3408625_nw_16_1_20150617_20151123.jp2[/color] wrote:

Code: Select all

<?xml version='1.0' encoding='UTF-8'?>
<jpylyzer xmlns="http://openpreservation.org/ns/jpylyzer/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://openpreservation.org/ns/jpylyzer/ http://jpylyzer.openpreservation.org/jpylyzer-v-1-1.xsd">
    <toolInfo>
        <toolName>jpylyzer.exe</toolName>
        <toolVersion>1.17.0</toolVersion>
    </toolInfo>
    <fileInfo>
        <fileName>m_3408625_nw_16_1_20150617_20151123.jp2</fileName>
        <filePath>X:\Test\m_3408625_nw_16_1_20150617_20151123.jp2</filePath>
        <fileSizeInBytes>23752813</fileSizeInBytes>
        <fileLastModified>Fri Aug 12 21:48:25 2016</fileLastModified>
    </fileInfo>
    <statusInfo>
        <success>True</success>
    </statusInfo>
    <isValidJP2>False</isValidJP2>
    <tests>
        <signatureBox>
            <boxLengthIsValid>True</boxLengthIsValid>
            <signatureIsValid>True</signatureIsValid>
        </signatureBox>
        <fileTypeBox>
            <boxLengthIsValid>True</boxLengthIsValid>
            <brandIsValid>True</brandIsValid>
            <minorVersionIsValid>True</minorVersionIsValid>
            <compatibilityListIsValid>True</compatibilityListIsValid>
        </fileTypeBox>
        <jp2HeaderBox>
            <imageHeaderBox>
                <boxLengthIsValid>True</boxLengthIsValid>
                <heightIsValid>True</heightIsValid>
                <widthIsValid>True</widthIsValid>
                <nCIsValid>True</nCIsValid>
                <bPCIsValid>True</bPCIsValid>
                <cIsValid>True</cIsValid>
                <unkCIsValid>True</unkCIsValid>
                <iPRIsValid>True</iPRIsValid>
            </imageHeaderBox>
            <colourSpecificationBox>
                <methIsValid>True</methIsValid>
                <precIsValid>True</precIsValid>
                <approxIsValid>True</approxIsValid>
                <enumCSIsValid>True</enumCSIsValid>
            </colourSpecificationBox>
            <containsImageHeaderBox>True</containsImageHeaderBox>
            <containsColourSpecificationBox>True</containsColourSpecificationBox>
            <firstJP2HeaderBoxIsImageHeaderBox>True</firstJP2HeaderBoxIsImageHeaderBox>
            <noMoreThanOneImageHeaderBox>True</noMoreThanOneImageHeaderBox>
            <noMoreThanOneBitsPerComponentBox>True</noMoreThanOneBitsPerComponentBox>
            <noMoreThanOnePaletteBox>True</noMoreThanOnePaletteBox>
            <noMoreThanOneComponentMappingBox>True</noMoreThanOneComponentMappingBox>
            <noMoreThanOneChannelDefinitionBox>True</noMoreThanOneChannelDefinitionBox>
            <noMoreThanOneResolutionBox>True</noMoreThanOneResolutionBox>
            <colourSpecificationBoxesAreContiguous>True</colourSpecificationBoxesAreContiguous>
            <paletteAndComponentMappingBoxesOnlyTogether>True</paletteAndComponentMappingBoxesOnlyTogether>
        </jp2HeaderBox>
        <uuidBox>
            <boxLengthIsValid>True</boxLengthIsValid>
        </uuidBox>
        <uuidBox>
            <boxLengthIsValid>True</boxLengthIsValid>
        </uuidBox>
        <uuidBox>
            <boxLengthIsValid>True</boxLengthIsValid>
        </uuidBox>
        <contiguousCodestreamBox>
            <codestreamStartsWithSOCMarker>True</codestreamStartsWithSOCMarker>
            <foundSIZMarker>True</foundSIZMarker>
            <siz>
                <lsizIsValid>True</lsizIsValid>
                <rsizIsValid>True</rsizIsValid>
                <xsizIsValid>True</xsizIsValid>
                <ysizIsValid>True</ysizIsValid>
                <xOsizIsValid>True</xOsizIsValid>
                <yOsizIsValid>True</yOsizIsValid>
                <xTsizIsValid>True</xTsizIsValid>
                <yTsizIsValid>True</yTsizIsValid>
                <xTOsizIsValid>True</xTOsizIsValid>
                <yTOsizIsValid>True</yTOsizIsValid>
                <csizIsValid>True</csizIsValid>
                <lsizConsistentWithCsiz>True</lsizConsistentWithCsiz>
                <ssizIsValid>True</ssizIsValid>
                <xRsizIsValid>True</xRsizIsValid>
                <yRsizIsValid>True</yRsizIsValid>
                <ssizIsValid>True</ssizIsValid>
                <xRsizIsValid>True</xRsizIsValid>
                <yRsizIsValid>True</yRsizIsValid>
                <ssizIsValid>True</ssizIsValid>
                <xRsizIsValid>True</xRsizIsValid>
                <yRsizIsValid>True</yRsizIsValid>
                <ssizIsValid>True</ssizIsValid>
                <xRsizIsValid>True</xRsizIsValid>
                <yRsizIsValid>True</yRsizIsValid>
            </siz>
            <cod>
                <lcodIsValid>True</lcodIsValid>
                <orderIsValid>True</orderIsValid>
                <layersIsValid>True</layersIsValid>
                <multipleComponentTransformationIsValid>True</multipleComponentTransformationIsValid>
                <levelsIsValid>True</levelsIsValid>
                <lcodConsistentWithLevelsPrecincts>True</lcodConsistentWithLevelsPrecincts>
                <codeBlockWidthExponentIsValid>True</codeBlockWidthExponentIsValid>
                <codeBlockHeightExponentIsValid>True</codeBlockHeightExponentIsValid>
                <sumHeightWidthExponentIsValid>True</sumHeightWidthExponentIsValid>
                <transformationIsValid>True</transformationIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
                <precinctSizeXIsValid>True</precinctSizeXIsValid>
                <precinctSizeYIsValid>True</precinctSizeYIsValid>
            </cod>
            <qcd>
                <lqcdIsValid>True</lqcdIsValid>
                <qStyleIsValid>True</qStyleIsValid>
            </qcd>
            <com>
                <lcomIsValid>True</lcomIsValid>
                <rcomIsValid>True</rcomIsValid>
                <commentIsValid>True</commentIsValid>
            </com>
            <com>
                <lcomIsValid>True</lcomIsValid>
                <rcomIsValid>True</rcomIsValid>
                <commentIsValid>True</commentIsValid>
            </com>
            <foundCODMarker>True</foundCODMarker>
            <foundQCDMarker>True</foundQCDMarker>
            <quantizationConsistentWithLevels>True</quantizationConsistentWithLevels>
            <foundExpectedNumberOfTiles>False</foundExpectedNumberOfTiles>
            <foundExpectedNumberOfTileParts>False</foundExpectedNumberOfTileParts>
            <tileParts>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>True</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>True</foundNextTilePartOrEOC>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsotIsValid>True</lsotIsValid>
                        <isotIsValid>True</isotIsValid>
                        <psotIsValid>False</psotIsValid>
                        <tpsotIsValid>True</tpsotIsValid>
                    </sot>
                    <foundSODMarker>True</foundSODMarker>
                    <foundNextTilePartOrEOC>False</foundNextTilePartOrEOC>
                </tilePart>
            </tileParts>
            <foundEOCMarker>True</foundEOCMarker>
        </contiguousCodestreamBox>
        <containsSignatureBox>True</containsSignatureBox>
        <containsFileTypeBox>True</containsFileTypeBox>
        <containsJP2HeaderBox>True</containsJP2HeaderBox>
        <containsContiguousCodestreamBox>True</containsContiguousCodestreamBox>
        <firstBoxIsSignatureBox>True</firstBoxIsSignatureBox>
        <secondBoxIsFileTypeBox>True</secondBoxIsFileTypeBox>
        <locationJP2HeaderBoxIsValid>True</locationJP2HeaderBoxIsValid>
        <noMoreThanOneSignatureBox>True</noMoreThanOneSignatureBox>
        <noMoreThanOneFileTypeBox>True</noMoreThanOneFileTypeBox>
        <noMoreThanOneJP2HeaderBox>True</noMoreThanOneJP2HeaderBox>
        <heightConsistentWithSIZ>True</heightConsistentWithSIZ>
        <widthConsistentWithSIZ>True</widthConsistentWithSIZ>
        <nCConsistentWithSIZ>True</nCConsistentWithSIZ>
        <bPCSignConsistentWithSIZ>True</bPCSignConsistentWithSIZ>
        <bPCDepthConsistentWithSIZ>True</bPCDepthConsistentWithSIZ>
    </tests>
    <properties>
        <signatureBox/>
        <fileTypeBox>
            <br>jp2 </br>
            <minV>0</minV>
            <cL>jp2 </cL>
        </fileTypeBox>
        <jp2HeaderBox>
            <imageHeaderBox>
                <height>8458</height>
                <width>6963</width>
                <nC>4</nC>
                <bPCSign>unsigned</bPCSign>
                <bPCDepth>8</bPCDepth>
                <c>jpeg2000</c>
                <unkC>yes</unkC>
                <iPR>no</iPR>
            </imageHeaderBox>
            <colourSpecificationBox>
                <meth>Enumerated</meth>
                <prec>0</prec>
                <approx>0</approx>
                <enumCS>greyscale</enumCS>
            </colourSpecificationBox>
        </jp2HeaderBox>
        <uuidBox>
            <uuid>a3599699-1815-ec4f-827e-945600e719b7</uuid>
        </uuidBox>
        <uuidBox>
            <uuid>96a9f1f1-dc98-402d-a7ae-d68e34451809</uuid>
        </uuidBox>
        <uuidBox>
            <uuid>b14bf8bd-083d-4b43-a5ae-8cd7d5a6ce03</uuid>
        </uuidBox>
        <contiguousCodestreamBox>
            <siz>
                <lsiz>50</lsiz>
                <rsiz>ISO/IEC 15444-1</rsiz>
                <xsiz>6963</xsiz>
                <ysiz>8458</ysiz>
                <xOsiz>0</xOsiz>
                <yOsiz>0</yOsiz>
                <xTsiz>4096</xTsiz>
                <yTsiz>4096</yTsiz>
                <xTOsiz>0</xTOsiz>
                <yTOsiz>0</yTOsiz>
                <numberOfTiles>6</numberOfTiles>
                <csiz>4</csiz>
                <ssizSign>unsigned</ssizSign>
                <ssizDepth>8</ssizDepth>
                <xRsiz>1</xRsiz>
                <yRsiz>1</yRsiz>
                <ssizSign>unsigned</ssizSign>
                <ssizDepth>8</ssizDepth>
                <xRsiz>1</xRsiz>
                <yRsiz>1</yRsiz>
                <ssizSign>unsigned</ssizSign>
                <ssizDepth>8</ssizDepth>
                <xRsiz>1</xRsiz>
                <yRsiz>1</yRsiz>
                <ssizSign>unsigned</ssizSign>
                <ssizDepth>8</ssizDepth>
                <xRsiz>1</xRsiz>
                <yRsiz>1</yRsiz>
            </siz>
            <cod>
                <lcod>20</lcod>
                <precincts>yes</precincts>
                <sop>no</sop>
                <eph>no</eph>
                <order>RPCL</order>
                <layers>30</layers>
                <multipleComponentTransformation>no</multipleComponentTransformation>
                <levels>7</levels>
                <codeBlockWidth>64</codeBlockWidth>
                <codeBlockHeight>64</codeBlockHeight>
                <codingBypass>no</codingBypass>
                <resetOnBoundaries>no</resetOnBoundaries>
                <termOnEachPass>no</termOnEachPass>
                <vertCausalContext>no</vertCausalContext>
                <predTermination>no</predTermination>
                <segmentationSymbols>no</segmentationSymbols>
                <transformation>5-3 reversible</transformation>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
                <precinctSizeX>256</precinctSizeX>
                <precinctSizeY>256</precinctSizeY>
            </cod>
            <qcd>
                <lqcd>25</lqcd>
                <qStyle>no quantization</qStyle>
                <guardBits>1</guardBits>
                <epsilon>10</epsilon>
                <epsilon>11</epsilon>
                <epsilon>11</epsilon>
                <epsilon>12</epsilon>
                <epsilon>11</epsilon>
                <epsilon>11</epsilon>
                <epsilon>12</epsilon>
            </qcd>
            <com>
                <lcom>15</lcom>
                <rcom>ISO/IEC 8859-15 (Latin)</rcom>
                <comment>Kakadu-v6.0</comment>
            </com>
            <com>
                <lcom>582</lcom>
                <rcom>ISO/IEC 8859-15 (Latin)</rcom>
                <comment>Kdu-Layer-Info: log_2{Delta-D(MSE)/[2^16*Delta-L(bytes)]}, L(bytes)
 -38.0,  6.8e+03
 -38.2,  1.2e+04
 -38.5,  1.8e+04
 -40.0,  2.4e+04
 -40.7,  3.0e+04
 -41.3,  3.6e+04
 -41.8,  4.4e+04
 -42.4,  5.2e+04
 -42.9,  6.2e+04
 -43.2,  7.4e+04
 -43.7,  8.8e+04
 -44.2,  1.1e+05
 -44.8,  1.3e+05
 -45.2,  1.6e+05
 -45.9,  2.0e+05
 -46.7,  2.6e+05
 -47.0,  3.4e+05
 -47.6,  4.6e+05
 -48.4,  6.1e+05
 -49.0,  8.3e+05
 -49.5,  1.1e+06
 -50.6,  1.6e+06
 -50.9,  2.2e+06
 -51.5,  3.0e+06
 -52.6,  4.3e+06
 -53.0,  6.0e+06
 -53.7,  8.4e+06
 -54.5,  1.2e+07
 -55.1,  1.7e+07
 -56.0,  2.4e+07
</comment>
            </com>
            <tlm/>
            <tileParts>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>3981</psot>
                        <tpsot>0</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>2576</psot>
                        <tpsot>0</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>11054</psot>
                        <tpsot>1</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>5710</psot>
                        <tpsot>1</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>40992</psot>
                        <tpsot>2</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>18912</psot>
                        <tpsot>2</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>147294</psot>
                        <tpsot>3</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>59116</psot>
                        <tpsot>3</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>427586</psot>
                        <tpsot>4</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>127972</psot>
                        <tpsot>4</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>1239279</psot>
                        <tpsot>5</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>347526</psot>
                        <tpsot>5</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>2639568</psot>
                        <tpsot>6</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>1</isot>
                        <psot>752782</psot>
                        <tpsot>6</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>4436138</psot>
                        <tpsot>7</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                    <plt/>
                </tilePart>
                <tilePart>
                    <sot>
                        <lsot>10</lsot>
                        <isot>0</isot>
                        <psot>12</psot>
                        <tpsot>8</tpsot>
                        <tnsot>255</tnsot>
                    </sot>
                </tilePart>
            </tileParts>
        </contiguousCodestreamBox>
        <compressionRatio>9.92</compressionRatio>
    </properties>
</jpylyzer>
Open Preservation Foundation ([url=http://jpylyzer.openpreservation.org/]jpylyzer[/url] → [url=http://wiki.opf-labs.org/display/TR/Effects+of+bit+and+byte+corruption]Effects of bit and byte corruption[/url]) wrote:foundExpectedNumberOfTiles: Number of encountered tiles is consistent with expected number of tiles
foundExpectedNumberOfTileParts: For all tiles, number of encountered tile parts is consistent with expected number of tile parts
lower elkmont
Posts: 5
Joined: Fri Jul 07, 2017 5:37 am

Re: jp2 file doesn't open

Post by lower elkmont »

I have noticed that when I have both openjp2.dll and xjp2.dll, I can open a small jp2 file with no problems, but when I close the file, I get a spinner for a minute or so.

I got lwf_jp2.dll and got the same image as above with it, just the top half of the image.

But with xjp2.dll, file version 198.0, product version 1.98.3, 224 KB, modified 11/14/2011, 3:29 PM, I still get the format cannot determined message.