Skip to main content
docs/logo/logo.png
Documentation Status License Python version PyPI version

Readme

This is a toolbox in form of a python package that contains algorithms to be used in dsp (digital signal processing) research projects.

This is kind of a “sandbox” project with many different experimental implementations across a variety of DSP-related topics. Some parts are more thoroughly tested and validated than others, so “caution” is advised. Please feel free to reach out in case you find bugs or want to talk about certain functionality.

It is under active development and it will take some time until it reaches a certain level of maturity. Beware that backwards compatibility is not an actual concern and significant changes to the API might come in the future. If you find some implementations interesting or useful, please feel free to use it for your projects and expand or change functionalities.

Getting Started

Refer to the documentation for the complete description of classes and functions.

import dsptoolbox as dsp

signal = dsp.Signal.from_file("recording.wav")
signal = signal.set_spectrum_parameters(method=dsp.SpectrumMethod.FFT)
frequencies_hz, spectrum = signal.get_spectrum()

lowpass = dsp.Filter.iir_filter(
    order=8,
    frequency_hz=2000.0,
    type_of_pass=dsp.FilterPassType.Lowpass,
    sampling_rate_hz=signal.sampling_rate_hz,
)
filtered = lowpass.filter_signal(signal)
filtered.plot_magnitude()
dsp.plots.show()

Installation

Use pip to install dsptoolbox

$ pip install dsptoolbox

# Or this for activating numba parallelization
$ pip install "dsptoolbox[use-numba]"

(Requires Python 3.11 or higher)

On Linux, install the native audio libraries used by the audio dependencies manually. sounddevice uses PortAudio for live audio input and output, while soundfile uses libsndfile for reading and writing audio files. Install them with the following command:

$ sudo apt-get install libasound-dev libportaudio2 libsndfile1

If this does not work properly for some reason, refer to the documentation for sounddevice, soundfile, or PortAudio.

Download files

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

Source Distribution

dsptoolbox-0.11.1.tar.gz (297.4 kB view details)

Uploaded Source

Built Distributions

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

dsptoolbox-0.11.1-cp314-cp314-win_arm64.whl (502.2 kB view details)

Uploaded CPython 3.14Windows ARM64

dsptoolbox-0.11.1-cp314-cp314-win_amd64.whl (513.4 kB view details)

Uploaded CPython 3.14Windows x86-64

dsptoolbox-0.11.1-cp314-cp314-manylinux_2_28_x86_64.whl (647.4 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64

dsptoolbox-0.11.1-cp314-cp314-macosx_11_0_arm64.whl (598.7 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

dsptoolbox-0.11.1-cp314-cp314-macosx_10_15_x86_64.whl (610.1 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

dsptoolbox-0.11.1-cp313-cp313-win_arm64.whl (501.0 kB view details)

Uploaded CPython 3.13Windows ARM64

dsptoolbox-0.11.1-cp313-cp313-win_amd64.whl (512.1 kB view details)

Uploaded CPython 3.13Windows x86-64

dsptoolbox-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl (647.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

dsptoolbox-0.11.1-cp313-cp313-macosx_11_0_arm64.whl (597.6 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

dsptoolbox-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl (608.6 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

dsptoolbox-0.11.1-cp312-cp312-win_arm64.whl (501.8 kB view details)

Uploaded CPython 3.12Windows ARM64

dsptoolbox-0.11.1-cp312-cp312-win_amd64.whl (512.8 kB view details)

Uploaded CPython 3.12Windows x86-64

dsptoolbox-0.11.1-cp312-cp312-manylinux_2_28_x86_64.whl (647.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

dsptoolbox-0.11.1-cp312-cp312-macosx_11_0_arm64.whl (598.2 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

dsptoolbox-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl (609.5 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

dsptoolbox-0.11.1-cp311-cp311-win_arm64.whl (504.7 kB view details)

Uploaded CPython 3.11Windows ARM64

dsptoolbox-0.11.1-cp311-cp311-win_amd64.whl (514.8 kB view details)

Uploaded CPython 3.11Windows x86-64

dsptoolbox-0.11.1-cp311-cp311-manylinux_2_28_x86_64.whl (650.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

dsptoolbox-0.11.1-cp311-cp311-macosx_11_0_arm64.whl (602.6 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

dsptoolbox-0.11.1-cp311-cp311-macosx_10_12_x86_64.whl (607.8 kB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file dsptoolbox-0.11.1.tar.gz.

File metadata

  • Download URL: dsptoolbox-0.11.1.tar.gz
  • Upload date:
  • Size: 297.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for dsptoolbox-0.11.1.tar.gz
Algorithm Hash digest
SHA256 bc0f2cad7cef0a7067c50131c871d9035ad4728b10120cc7af1b9ed9d62b8f37
MD5 e040db0f7301d613cd9a8bffd231102f
BLAKE2b-256 d0feb1f3b53194db229108df7e8367ee1d46d72f7d0dd604e0856fe594527167

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp314-cp314-win_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 11e496bc0ff1d49291f33af3c34a4cea83c255913605b91c5fab395e178c92f0
MD5 84a23bf8488a1beda9cf2dfb7ac2a08d
BLAKE2b-256 bbd396c9ac4c87a5424b74cd4a99635833cc63d23a28b4d8837cd72c87ad36c5

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 0a2ccd2f2c76cb161574743daea31fe418b13763192d1550732fdaab21c3f141
MD5 aa2f99f836518c0ee4bb1e7b3f61864d
BLAKE2b-256 dde413a00635dcf4ad8412ac37139fd7491799f318d5341aa5981f5460839df1

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp314-cp314-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp314-cp314-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a2cd6e600db7820b2015938409994dde9938ef48430be7e09179f836ad9fb8af
MD5 52b34f549f8188dfa61a39b63bb9fec2
BLAKE2b-256 2e3fe6d0806648d5e922e37e0aa542adf5e56dd1c11a393f5be7332f0fbf48f0

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6bed8d74bc325cd5455c169437303159311c60de005bfd4ba8c14e2069242722
MD5 8c75a4360784a54c98a1a44be63732f8
BLAKE2b-256 a6632fde194d385a0d840f52f3626b2b6d9078ad2e7f5aa67818bd58391c9948

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 c5a12641e03409d38849321a2d768df968c37869291318b3d2a313a1b92f1873
MD5 bba066a4d57788d7b0ed1ef223f0bf17
BLAKE2b-256 3cd5221bc1f7070f34695a48d96ef67ba2e7fe615d39fb206a2f429fbb483f8a

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp313-cp313-win_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 854bc364451067e568a85a7e264b65c474c7d441359a3adaf792bfe55028032c
MD5 42d8b7c1cfbd23491c1fb1c059600851
BLAKE2b-256 735ba89a963952dd242f7ec4e0a8e5d0b468f0bce7f9fc5c257f24be349cda53

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b2cc104332e9922865c2d77d2e6d66eb131c545bdd15f1fb15430e99e3126e8b
MD5 a1455d965006078ac885c4bc7a80a13d
BLAKE2b-256 31b7e565fcf5dd4ea8bf14a08854546ee9562301f79b8c91575ddde80ced45c0

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b318cbba92d3e77e3a09bc2b27e006365681bd8afa7b5bd8ce37ff9f96f6f9c9
MD5 e1329a3142000abd7201b71ae3aef4b3
BLAKE2b-256 b685712e01f48597d84e96f5f6386040f8daa526da5cce85baf7d85fc66509b0

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 672b62a19a962e68ff2d41eb71add645c1cdf7da24eaa3da02160571b9c3f581
MD5 594fd2ee2cc7642043ee3efa4651a22f
BLAKE2b-256 048b83a6a96cb6710aacc1a21731eefa7c55f35535670698d12d07fa26e90b35

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 abe4d0f8a11cf2c58a4f4247026db5141262f9731f5a6452cc7330d272da61ab
MD5 fc50e6622a0ee49792a6c70b01e6be6d
BLAKE2b-256 31271b01d864e6c1da121ff2d127a3bfdf8e72ebbce84acee2e193a678b70fb3

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp312-cp312-win_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 e5396d843f3b8006236168f860e5b4188d82b17d47cdeb1f418b9ac1ffe6867c
MD5 a14cc40c5a118dcb5ac0e3eeef6cee8b
BLAKE2b-256 9b7364b61105dd03869d47448d1eff69b7ee2309d6f47eed924e0ff9393e4c7b

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 f2ca578089fcdd759e55c7c09d346fab93dc2e9269bc31ffb351b890e1abf2a3
MD5 c594b0266fd1d605be69bd331ffbb884
BLAKE2b-256 2cf2dc074302d831736dcaed18740dec628e0bf89bbba8088b61d60509a54436

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9fdde63be35e6fd43b87e37c959abd531a66a50c43fdddab8973dcbf1e23382c
MD5 1b10308fd72049ff6a2ad6c1dc8da09a
BLAKE2b-256 6f7c283976d09ba6959bf38686bff399081f3825f5f88ac3b93151fc89ef75a8

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1de4c635273e60b76902fc9a368e465e8f21078e506b8dfce4aee7dba667b74b
MD5 cd12589c87c35bcb446c0ad63c2fe8b9
BLAKE2b-256 e4ffa8e3eb6fa4dad0c1ad38dc38ef118e417ac09386da24df284e68e55cb7e2

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f8965f8941be052994f8e6d5603b4b06295cd31b7c4718482ca656501c5bbec2
MD5 233dfc6af0c16e64d70c11c7c29b1764
BLAKE2b-256 339ec671c4bf99de0384b4ff08d498b38875eba6382082fa465172b75d417b60

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp311-cp311-win_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp311-cp311-win_arm64.whl
Algorithm Hash digest
SHA256 fb75ae54847736c88891e0750acbc91cbddfb61375a29a74245560bdd0b26f6e
MD5 0b8f7eed60084f03826c013a49505825
BLAKE2b-256 ce645c61a6ccf3bd7ff174f5b5e345127662de293f4c4590f6a7de671395067b

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 55260072043b02f4fe4e681c0a3a0ef0096ea1dfa31e1fea593bc5df2b2d59d9
MD5 338b1a7522e335f202ea7ea3cb0e81f2
BLAKE2b-256 069dd4e46b502dd0fd04d55b0ad719416794a2c3faf005a76d7c3a1cc891b6fe

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 44e3dc35bbc7df6452bc0c47eb2cc8db5fbba0d0ccc663f113908fac4c6b34aa
MD5 fcba5b1f9a883ccb8229268a27ff95d2
BLAKE2b-256 810f593751789dacf3db4a42ecae783b44c5aca3d06ca0d87eaffdebfbe4cf35

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e7c1b663f0bc61434943ee3707bb70971868f2e568ad0a535f1545f82de3cf10
MD5 c7ac4abe887540af6d97fd81f07d296d
BLAKE2b-256 3a29e90288431890e0792e449874f175243a1290c34cd655aff989ad0248bb74

See more details on using hashes here.

File details

Details for the file dsptoolbox-0.11.1-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for dsptoolbox-0.11.1-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b9196043afd799662109ac0b45b45dd823d3830ab61c696e5a614bf3d0ce4124
MD5 523eda3c5c2bb618d054ddf8f4bac7e2
BLAKE2b-256 5cda6fe9f8bb1eb99e397b03a852d10c79cb0f51be32cc879bd56d0f1d1a83a9

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.11.1 This release

21 files

0.11.0

21 files

0.10.3

2 files

0.10.2

2 files

0.10.1

2 files

0.10

2 files

0.9

2 files

0.8

2 files

0.7.4

2 files

0.7.3

2 files

0.7.2

2 files

0.7.1

1 file

0.7

2 files

0.6.2

2 files

0.6.1

2 files

0.6

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5

2 files

0.4.8

2 files

0.4.7

2 files

0.4.6

2 files

0.4.5

2 files

0.4.4

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.9

2 files

0.3.8

2 files

0.3.7

2 files

0.3.6

2 files

0.3.5

2 files

0.3.4

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

2 files

0.3.0

2 files

0.2.16

2 files

0.2.15

2 files

0.2.14

2 files

0.2.13

2 files

0.2.12

2 files

0.2.11

2 files

0.2.10

2 files

0.2.9

2 files

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page