Skip to main content

Calculate multi-taper windowed and time-frequency reassignment spectrograms

Project description

ProjectStatus Version BuildStatus License PythonVersions DOI

Libtfr is a library for calculating multi-taper time-frequency reassignment (TFR) spectrograms. Time-frequency reassignment is a method that makes use of the instantaneous frequency and phase values in a spectrogram to ‘deconvolve’ the image, and can yield substantially sharper spectrograms with better signal-noise resolution than conventional windowed spectrograms (i.e. short-time Fourier transforms) or multi-taper spectrograms (using the discrete prolate spherical sequences).

The library will also calculate conventional windowed spectrograms and multitaper spectrograms.

Libtfr has C and Python APIs. The Python package has been tested on CPython 3.7-3.14 and PyPy 3.7-3.11, although wheels for some of these older versions may no longer be available.

Python package

To install from PyPI:

pip install libtfr

Wheels are built for most versions of linux and macosx using cibuildwheel. These are statically linked to generic LAPACK routines and a fairly old version of fftw, so if speed is a concern, consider compiling yourself against optimized libraries of your own following the instructions below. Windows wheels with statically linked FFTW and LAPACK libraries have kindly been developed by carlkl, but they very out of date now. Install with pip install -i https://pypi.anaconda.org/carlkl/simple libtfr

Installing from source

To build the python module, you’ll need to install some system dependencies first. On Debian:

sudo apt-get install libfftw3-dev liblapack-dev

On OS X with Macports:

sudo port install fftw-3

To build and install the python module from source:

pip install .

Use

To compute a time-frequency reassignment spectrogram in Python:

import libtfr
nfft = 256
Np = 201
shift = 10
K = 6
tm = 6.0
flock = 0.01
tlock = 5

# load signal of dimension (npoints,)
signal = ...
S = libtfr.tfr_spec(signal, nfft, shift, Np, K, tm, flock, tlock)

See below for more information on the parameters.

Mulitaper Spectral Analysis

Libtfr can also calculate multitaper and standard windowed Fourier transforms. For example, discrete prolate spherical sequences can be used to obtain multiple independent estimates of spectral statistics while maintaining optimal time-frequency tradeoffs (Prieto et al, 2007). The Python interface for MT calculations is somewhat different:

import libtfr

# load signal of dimension (npoints,)
signal = ...

# generate a transform object with size equal to signal length and 5 tapers
D = libtfr.mfft_dpss(npoints, 3, 5)
# complex windowed FFTs, one per taper
Z = D.mtfft(signal)
# power spectrum density estimate using adaptive method to average tapers
P = D.mtpsd(signal)

# generate a transform object with size 512 samples and 5 tapers for short-time analysis
D = libtfr.mfft_dpss(512, 3, 5)
# complex STFT with frame shift of 10 samples
Z = D.mtstft(signal, 10)
# spectrogram with frame shift of 10 samples
P = D.mtspec(signal, 10)

# generate a transform object with 200-sample hanning window padded to 256 samples
from numpy import hanning
D = libtfr.mfft_precalc(256, hanning(200))
# spectrogram with frame shift of 10 samples
P = D.mtspec(signal, 10)

C Library

To build the C library you will also need to have scons installed. You may need to edit the SConstruct file to make sure it points to the correct LAPACK libraries. To build the shared library:

scons lib

To install the libraries and header (default to /usr/local/lib and /usr/local/include):

scons install

A small test program, test_tfr, can be built with scons test. The program generates a signal with sinusoidally modulated frequency and then calculates a multitaper PSD, a multitaper spectrogram, and a time-frequency reassigned spectrogram. The results are output in ASCII format to tfr_in.dat, tfr_out_psd.dat, tfr_out_mtm.dat, and tfr_out_tfr.dat.

See src/test_tfr.c for an example of how to use the C API.

Documentation

The C header tfr.h and python module libtfr.pyx are both extensively documented.

Algorithm and usage notes

The software was assembled from various MATLAB sources, including the time-frequency toolkit, Xiao and Flandrin’s work on multitaper reassignment, and code from Gardner and Magnasco.

The basic principle is to use reassignment to increase the precision of the time-frequency localization, essentially by deconvolving the spectrogram with the TF representation of the window, recovering the center of mass of the spectrotemporal energy. Reassigned TFRs typically show a ‘froth’ for noise, and strong narrow lines for coherent signals like pure tones, chirps, and so forth. The use of multiple tapers reinforces the coherent signals while averaging out the froth, giving a very clean spectrogram with optimal precision and resolution properties.

Gardner & Magnasco (2006) calculate reassignment based on a different algorithm from Xiao and Flandrin (2007). The latter involves 3 different FFT operations on the signal windowed with the hermitian taper h(t), its derivative h’(t), and its time product t × h(t). The G&M algorithm only uses two FFTs, on the signal windowed with a Gaussian and its time derivative. If I understand their methods correctly, however, this derivation is based on properties of the fourier transform of the gaussian, and isn’t appropriate for window functions based on the Hermitian tapers, which have more optimal distribution of energy over the TF plane (i.e., it takes fewer Hermitian tapers than Gaussian tapers to achieve the same quality spectrogram)

Therefore, the algorithm is mostly from X&F, though I include time and frequency locking parameters from G&M, which specify how far energy is allowed to be reassigned in the TF plane. Large displacements generally arise from numerical errors, so this helps to sharpen the lines somewhat. I also included the time/frequency interpolation from Prieto et al (2007), which can be used to get higher precision (at the expense of less averaging) from smaller analysis windows.

Some fiddling with parameters is necessary to get the best spectrograms from a given sort of signal. Like the window size in an STFT, the taper parameters control the time-frequency resolution. However, in the reassignment spectrogram the precision (i.e. localization) is not affected by the taper size, so the effects of taper size will generally only be seen when two coherent signals are close to each other in time or frequency. Nh controls the size of the tapers; one can also adjust tm, the time support of the tapers, but depending on the number of tapers used, this shouldn’t get a whole lot smaller than 5. Increased values of Nh result in improved narrowband resolution (i.e. between pure tones) but closely spaced clicks can become smeared. Decreasing Nh increases the resolution between broadband components (i.e. clicks) but smears closely spaced narrowband components. The effect of smearing can be ameliorated to some extent by adjusting the frequency/time locking parameters.

The frequency zoom parameter can be used to speed up calculation quite a bit. Since calculating the multitaper reassigned spectrogram takes 3xNtapers FFT operations, smaller FFTs are generally better. The spectrogram can then be binned at a finer resolution during reassignment. These two sets of parameters should generate fairly similar results:

nfft=512, shift=10, tm=6, Nh=257, zoomf=1, zoomt=1 (default)
nfft=256, shift=10, tm=6, Nh=257, zoomf=2, zoomt=1

Increasing the order generally reduces the background ‘froth’, but interference between closely spaced components may increase.

Additional improvements in resolution may be achievable averaging across different window sizes, or by using other averaging methods (i.e. as in Xiao and Flandrin 2007)

License

libtfr was written by C Daniel Meliza and is licensed under the Gnu Public License (GPL) version 2; see COPYING for details.

some code is adapted from chronux (http://www.chronux.org), by Partha Mitra and Hemant Bokil, also licensed under GPL version 2

THE PROGRAMS ARE PROVIDED “AS IS” WITHOUT WARRANTY OF MERCANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE OR ANY OTHER WARRANTY, EXPRESS OR IMPLIED. IN NO EVENT SHALL THE UNIVERSITY OF CHICAGO OR DR. MELIZA BE LIABLE FOR ANY DIRECT OR CONSEQUENTIAL DAMAGES RESULTING FROM USE OF THE PROGRAMS. THE USER BEARS THE ENTIRE RISK FOR USE OF THE PROGRAMS.

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libtfr-2.1.10.tar.gz (245.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

libtfr-2.1.10-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.1 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

libtfr-2.1.10-pp311-pypy311_pp73-macosx_11_0_arm64.whl (546.5 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

libtfr-2.1.10-pp311-pypy311_pp73-macosx_10_15_x86_64.whl (605.1 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

libtfr-2.1.10-cp314-cp314-musllinux_1_2_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

libtfr-2.1.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

libtfr-2.1.10-cp314-cp314-macosx_11_0_arm64.whl (572.1 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

libtfr-2.1.10-cp314-cp314-macosx_10_15_x86_64.whl (628.7 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

libtfr-2.1.10-cp313-cp313-musllinux_1_2_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

libtfr-2.1.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

libtfr-2.1.10-cp313-cp313-macosx_11_0_arm64.whl (571.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

libtfr-2.1.10-cp313-cp313-macosx_10_13_x86_64.whl (628.9 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

libtfr-2.1.10-cp312-cp312-musllinux_1_2_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

libtfr-2.1.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

libtfr-2.1.10-cp312-cp312-macosx_11_0_arm64.whl (572.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

libtfr-2.1.10-cp312-cp312-macosx_10_13_x86_64.whl (629.3 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

libtfr-2.1.10-cp311-cp311-musllinux_1_2_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

libtfr-2.1.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

libtfr-2.1.10-cp311-cp311-macosx_11_0_arm64.whl (572.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

libtfr-2.1.10-cp311-cp311-macosx_10_9_x86_64.whl (631.9 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

libtfr-2.1.10-cp310-cp310-musllinux_1_2_x86_64.whl (10.5 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

libtfr-2.1.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

libtfr-2.1.10-cp310-cp310-macosx_11_0_arm64.whl (573.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

libtfr-2.1.10-cp310-cp310-macosx_10_9_x86_64.whl (633.6 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file libtfr-2.1.10.tar.gz.

File metadata

  • Download URL: libtfr-2.1.10.tar.gz
  • Upload date:
  • Size: 245.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for libtfr-2.1.10.tar.gz
Algorithm Hash digest
SHA256 de25bd2debf1670cf1c45997a086b2540ff324fceaea2ee3305c157d92edb436
MD5 9a4bbe2a0c14e8ef0e909d0500d1f262
BLAKE2b-256 7e74f1863c582a132b13baa3e98b3227f0bef270c4c9b344f17ac2709b7b776a

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10.tar.gz:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 da5a03ac5e5563984fef9cd5bde84f6cffbc4597f53b22678a25180a5668325d
MD5 e0a3542851430e82f8b85842ce31f9b6
BLAKE2b-256 cded12daca807558c5755d02fb5a2a89682461ad5c86a0dc53fae70c11559891

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-pp311-pypy311_pp73-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-pp311-pypy311_pp73-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-pp311-pypy311_pp73-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9fbcc967f9cabfa6d6afea6e93307236fc434e7031d6e703c9affdbd35855189
MD5 862f91e7357b54f96d431f99382e69ed
BLAKE2b-256 5194f9791243f5b4a8cf1a76ffbe0404955edd79126fb4b5c2e289efc54fceac

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-pp311-pypy311_pp73-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-pp311-pypy311_pp73-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-pp311-pypy311_pp73-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 9cb504cc6115a163bfe9255c436f32de2e0fe80c453032da4abc78672c2f4595
MD5 39fc1c51bc4a960a445a4e4ca5cc9731
BLAKE2b-256 dc2c7a1d164015cd7610073f6dfeb6967fcb6cf3b679809ae8a5411ff2590fb0

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-pp311-pypy311_pp73-macosx_10_15_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c4f777885fed20a883d89693d5467108a6ec2702a35436407587c58e6e5da8fd
MD5 b0acff1f2849ae95fb397bc38ae0dbe8
BLAKE2b-256 b9638bffcc61df4de3b417a0a019c6444399145a4b465e49a9e9e1ef025211f2

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 fe4c1b3edd25c79b32d93083d752c5a78d22837f40ca099323c464b037a780c1
MD5 e7be69970829d43bfd6a558758930a4c
BLAKE2b-256 a4fe48aa66e0912996f42da59620d2c5f7f55ca82dbef37950c8ed2bcb086fb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2ace2e2cedf0446dfb0400c0164df47b604ca261db56a646de568f086c0ca7b2
MD5 a30a1d1d9e93218e8fd0bd1d964b19e5
BLAKE2b-256 33a935ac2f93de308d3c7fc62be26876be81eb7efc2bc431f8d7c9422e6073a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3a590104ad4b7a999a2ca98aa181252e1002b831ad850ac3b30c7c8f065da033
MD5 f5737bbdbe5d7e80c92f3e1fbe64e0fe
BLAKE2b-256 16ebed6743928ad7fa6c0082489cf29e0d28176809c7501e0b51087fc501338f

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4faeb72b6efd41196e4a41c9dcbae3bc9f05381df7deff073f831b93284d4a4e
MD5 ff4f4f8349f4bcb1c66a4da98ad8268c
BLAKE2b-256 3313948ec17cba877705881b1e37057349cd69e5282346a43694b72da8d6f04a

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 dc9ac81b3ed7bfae433b8cc2a9e722629881b625766cabac6cb1e213e560aa6a
MD5 b56f0b016149486661195baa8fe200dc
BLAKE2b-256 5f3f3d03a537b0beb2a7ccc99969fd44ada17d35e459ecf0bbf0f3f6e709f757

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 42cdc83a7cc97a421d78897beae946b250262b359ee62ee82099ffc07edf3f04
MD5 aa528ed529409ac299517f60b1e754e5
BLAKE2b-256 574143301ccf4da4fbb21d4e8bbd1cdc41d4a79c25230af319c52d9900f73233

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 0ab624f390b870a1cdda0379f9ef1a4de6cfce3261a338d3da4bf4307a968156
MD5 f37e41379c2542c94aa1862babfd479d
BLAKE2b-256 9240c3f63fbb1a03cf0c84f639e5c2656b07ec35046698cee1728557fc12b90a

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8ea3753f8796e28e4912e35d5e1df29c2b47abfc8a5752f691f95aefff7e10c9
MD5 7ac0628def6b71faa09bd12bd51f8c9a
BLAKE2b-256 f8b1acbf13c048f2bb475e0b90ca30b10619de0a338f8f35efb0a4931e84b6fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 590d62114b0ce0638c5f17d6b354a8ab6fa4b3bcd5c605fd0ddf1fb55d9de8ee
MD5 1dfdc2de594cca28b5772d610a1c34e8
BLAKE2b-256 35deac1de55b4952869957fe2aed062269409c130e5cd40e441de84462c8d59d

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 28f40f226d9376d65f1b16e02abc940c8bbbc7037d3499c044a7173d899e7c22
MD5 43e6b019820d39961dbc1df7dbaccf79
BLAKE2b-256 a90e7db16b5a45d6523a549643ae2a6458eabcdb4019fc0bd16ff476af36b892

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a0db9a76c81325b2cd5157a7734e9d24896b74b08fef1755d11f6dd1db30b056
MD5 2eb4e2ed380f2a636396a1066bdcb45b
BLAKE2b-256 63eb2793f38d6bbacfab0c9dcc49d94cc65b0e95e989a684590a416deeacf7d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 86534669bd248ce920dda6cc5ebc30ff2125a7a32cad0a8a4a9050dda21e87a6
MD5 6d4c79d21ee877fa814123c64ca93140
BLAKE2b-256 ea444cca4d34e23f9e8df60f2764c069aaecea84f15c6b8a22941f67bbee6625

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp311-cp311-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6f6a43857a6ed91114d91be36ddcfc9882ca0da44c9bd1039df6240a03d3ce95
MD5 997c0ae89a8434258f4e6414d75182f8
BLAKE2b-256 17959873943dda63f8b83a0af57ac524074f585e4b2f8ce4c978de3a84541647

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 056f45727cef9cf92018fd386d64a825d293b5482680dfa8e3c3f9941bf712cb
MD5 9e7b67f42b98add6676ca0c356446420
BLAKE2b-256 de61676ed2c34d6d0720bd9db5fb101d8c54b57707d34189b84fbf5e7b35916d

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4b6c8dad52ff96e85e625cc3cffb718754a7113ad4b0bc4e4f8099e86c333aaa
MD5 b56f380e917b089788363adac34243bf
BLAKE2b-256 323825a0ab2f419e70eebf8f83e307e48eaa42c8fbdb538c5fbca6900e21b78c

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp311-cp311-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 91e7225381db00db4db4d6d9e8e4141e168aafd784c48ea03fb24989251854b2
MD5 6b9466cb6fc77bba653d155db5603792
BLAKE2b-256 8e2c421c666cb32e68dbca51a8bc310744ad5c7b30937b14d58c34f47007038c

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp310-cp310-musllinux_1_2_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 1da7871c9b9f56448f01461ea60b23095e0423f070dbd795399f964b3375d04d
MD5 5d7b73ec8b40dde1802a193f41a09fed
BLAKE2b-256 c4e67b733e0fa31215e7823b7dac6ccb36bd38367dd4e29eb750f54d867f4487

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 24d2a606b4e00a590b41a14a2e80cabd51aa9c0b8eb0b85981953c96e573975e
MD5 3d49e834b6e753bbbe520cf7722333b4
BLAKE2b-256 7160c85cab8ac14ab2be36f6eefc4edcbab3a14d6997dd94ad1ee672a4544687

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file libtfr-2.1.10-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for libtfr-2.1.10-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cb4fbad8d046996be5775906c3008d8dcd3dbd2ed6aea807c9bedf2840705633
MD5 f6079539ba2e3e8550c0370fe3c2aff6
BLAKE2b-256 121919819f8b624c2a446d2be179cd28a83a4704ee9f8fe169ff2bcdc76732e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for libtfr-2.1.10-cp310-cp310-macosx_10_9_x86_64.whl:

Publisher: build_wheels.yml on melizalab/libtfr

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page