signal_tools

Tools for handling pod5 signals

vbz_compress_signal(signal: ndarray[Any, dtype[int16]]) ndarray[Any, dtype[uint8]][source]

Compress a numpy array of signal data

Parameters:

signal (numpy.ndarray[int16]) – The array of signal data to compress.

Returns:

compressed_signal – The compressed signal data as a numpy.ndarray[uint8] (byte array)

Return type:

numpy.array[uint8]

vbz_compress_signal_chunked(signal: ndarray[Any, dtype[int16]], signal_chunk_size: int = 102400) Tuple[List[ndarray[Any, dtype[uint8]]], List[int]][source]

Compress a numpy array of signal data into chunks

Parameters:
  • signal (numpy.ndarray[int16]) – The array of signal data to compress.

  • signal_chunk_size (int) – The number of signal samples in a chunk

Returns:

  • compressed_signal_chunks (List[numpy.array[uint8]]) – A List of chunks of compressed signal data as numpy.ndarray[uint8] (byte arrays)

  • signal_chunk_lengths (List[int]) – The number of uncompressed signal samples in each chunk

vbz_decompress_signal(compressed_signal: Union[ndarray[Any, dtype[uint8]], memoryview], sample_count: int) ndarray[Any, dtype[int16]][source]

Decompress a contiguous (not-chunked) numpy array of compressed signal data

Parameters:
  • compressed_signal (numpy.ndarray[uint8]) – The array of compressed signal data to decompress.

  • sample_count (int) – The number of samples in the original signal

Return type:

A decompressed signal array numpy.ndarray[int16]

vbz_decompress_signal_chunked(compressed_signal_chunks: List[ndarray[Any, dtype[uint8]]], sample_counts: List[int]) ndarray[Any, dtype[int16]][source]

Decompress a chunks of numpy array of compressed signal data

Parameters:
  • compressed_signal_chunks (List[numpy.ndarray[uint8]]) – A list of compressed signal data chunks to decompress.

  • sample_counts (List[int]) – The number of samples in the original signal chunks

Return type:

A decompressed signal array numpy.ndarray[int16]

Raises:

ValueError – Inconsistent parameter lengths

vbz_decompress_signal_into(compressed_signal: Union[ndarray[Any, dtype[uint8]], memoryview], output_array: ndarray[Any, dtype[int16]]) ndarray[Any, dtype[int16]][source]

Decompress a numpy array of compressed signal data into the destination “output_array”

Parameters:
  • compressed_signal (numpy.ndarray[uint8]) – The array of compressed signal data to decompress.

  • output_array (numpy.ndarray[int16]) – The destination location for signal

Return type:

A decompressed signal array numpy.ndarray[int16]