soft-matter/pims

java.io.IOException: block[ 0 ] already removed

antonkulaga opened this issue · 1 comments

When converting zvi files for some files I get the following exception (no idea how to deal with it):

java.io.IOException: block[ 0 ] already removed

Exception Traceback (most recent call last)
/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.ChannelSeparator.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.ReaderWrapper.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.ChannelFiller.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.ReaderWrapper.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.ImageReader.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.FormatReader.setId()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.in.ZeissZVIReader.initFile()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.in.BaseZeissReader.initFileMain()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.in.ZeissZVIReader.initVars()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.in.ZeissZVIReader.initPOIService()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.services.POIServiceImpl.initialize()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.formats.services.POIServiceImpl.initialize()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.filesystem.POIFSFileSystem.()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.filesystem.POIFSFileSystem.processProperties()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.filesystem.POIFSFileSystem.processProperties()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.filesystem.POIFSFileSystem.processProperties()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.storage.RawDataBlockList.fetchBlocks()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.storage.BlockListImpl.fetchBlocks()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.storage.BlockAllocationTableReader.fetchBlocks()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.storage.RawDataBlockList.remove()

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/_jpype.cpython-38-x86_64-linux-gnu.so in loci.poi.poifs.storage.BlockListImpl.remove()

Exception: Java Exception

The above exception was the direct cause of the following exception:

java.io.IOException Traceback (most recent call last)
in
----> 1 process(input_folder, output_folder, True, 10)
2 print("All conversions finished!")

in process(folder, output, skip_if_exists, fps)
14 else:
15 print(f"converting {f.absolute()} to {to}")
---> 16 convert(f, to, fps)
17 return folder

in convert(from_file, to_file, fps)
1 def convert(from_file: Path, to_file: Path, fps: int):
----> 2 worm = pims.Bioformats(from_file, java_memory='1024m')
3 frame = worm[0]
4 height, width = frame.shape
5 video = cv2.VideoWriter(str(to_file.absolute()), cv2.VideoWriter_fourcc(*'mp4v'), fps, (width, height), False)

/data/miniconda3/envs/microscope_video_conversion/lib/python3.8/site-packages/pims/bioformats.py in init(self, filename, meta, java_memory, read_mode, series)
369 self._metadata = loci.formats.MetadataTools.createOMEXMLMetadata()
370 self.rdr.setMetadataStore(self._metadata)
--> 371 self.rdr.setId(self.filename)
372 if meta:
373 self.metadata = MetadataRetrieve(self._metadata)

java.io.IOException: java.io.IOException: block[ 0 ] already removed