From 3e553a3ea486b464e57c131b5aac0fe2733ef402 Mon Sep 17 00:00:00 2001 From: Oren Amsalem Date: Wed, 18 Aug 2021 10:14:06 +0300 Subject: [PATCH] seek and read require int When nbytes is multiplied with int the result is a float. --- sbxreader/reader.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sbxreader/reader.py b/sbxreader/reader.py index 1985537..b9e854f 100644 --- a/sbxreader/reader.py +++ b/sbxreader/reader.py @@ -165,8 +165,8 @@ def get_stack(self,offset_frame=0, nframes=100): nelements = np.int64(np.prod(s)) offset = offset_frame*np.int64(np.prod(s[:-1])) nbytes = np.uint64(2) # 2 bytes in uint16 - self._mmap.seek(nbytes*offset,0) - arr = self._mmap.read(nbytes*nelements) + self._mmap.seek(int(nbytes*offset),0) + arr = self._mmap.read(int(nbytes*nelements)) arr = UINTMAX - np.frombuffer(arr, dtype='uint16').reshape(s,order = 'F') return arr.transpose([4,3,0,2,1])