My Projects and Collaborations§
Most of my projects live on Github, where I have the user name @mgeier
Created and Maintained by Me§
sounddevice
Module for Python§
Play and record sound with Python.
The sounddevice
module provides bindings for the PortAudio library
and a few convenience functions to play and record
NumPy arrays containing audio signals.
https://python-sounddevice.readthedocs.io/
spatialaudio/python-sounddevice
For easier installation, I provide a pre-compiled PortAudio library for macOS and Windows (with and without ASIO):
rtmixer
Module for Python§
Reliable low-latency audio playback and recording with Python,
using PortAudio via the sounddevice
module.
https://python-rtmixer.readthedocs.io/
The rtmixer
module uses a Python wrapper for PortAudio’s ring buffer,
which I’ve published as a separate project:
jack
Module for Python§
Python bindings for the JACK Audio Connection Kit (JACK).
nbsphinx
Extension for Sphinx§
nbsphinx
is a Sphinx extension that provides a source parser for
*.ipynb
files.
Custom Sphinx directives are used to show Jupyter Notebook code cells (and of
course their results) in both HTML and LaTeX output.
Un-evaluated notebooks – i.e. notebooks without stored output cells – will be
automatically executed during the Sphinx build process.
sphinx_last_updated_by_git
Extension for Sphinx§
As the name suggests, this Sphinx extension uses Git to find out the date/time when each source file was last updated (which is typically displayed in the footer of each page).
An HTML theme for Sphinx: insipid
§
A mobile-friendly Sphinx theme that hopefully doesn’t suck.
Jupyter Notebooks About Python & Audio§
A collection of some more and some less finished Jupyter notebooks about signal processing in Python (and more).
https://nbviewer.jupyter.org/github/mgeier/python-audio/blob/master/index.ipynb
This “Homepage”§
A collection of notes about different topics.
jupyter_format
module for Python§
An experimental new serialization format for Jupyter notebooks
(as replacement for the .ipynb
format).
A Reusable Slice of References for Rust§
Rust FFI bindings to the libFLAC
library§
Rust FFI bindings to the minimp3_ex
library§
Audio Scene Description Format (ASDF) v0.4§
https://AudioSceneDescriptionFormat.readthedocs.io/
AudioSceneDescriptionFormat/asdf
Documentation about splines (incl. Python module)§
Collaborations§
The SoundScape Renderer§
The SoundScape Renderer (SSR) is a tool for real-time spatial audio reproduction providing a variety of rendering algorithms, e.g. Wave Field Synthesis, Higher-Order Ambisonics and binaural techniques.
The multi-threaded signal-processing core of the SSR is provided separately as a set of re-usable C++ libraries called “Audio Processing Framework”:
sfs
Module for Python§
A Python library for creating numercial simulations of sound field synthesis methods like Wave Field Synthesis (WFS) or Near-Field Compensated Higher Order Ambisonics (NFC-HOA).
soundfile
Module for Python§
The soundfile
module can read and write sound files.
File reading/writing is supported through libsndfile via CFFI.
Exercises for “Communication Acoustics” Lecture§
Course material (provided as Jupyter notebooks) for the exercises accompanying the lecture “Acoustics for Communications” (in German “Kommunikationsakustik”) at Institute of Communications Engineering/Faculty of Computer Science and Electrical Engineering/University of Rostock.
On nbviewer
:
https://nbviewer.jupyter.org/github/spatialaudio/communication-acoustics-exercises/blob/master/index.ipynb
Real-Time Ring Buffer for Rust§
A wait-free single-producer single-consumer ring buffer.
Minor Contributions§
The following links show some projects I have contributed to, with links to my “pull requests” and the issues I created for each project.
Jupyter Ecosystem§
https://github.com/jupyter/notebook – pull requests – issues
https://github.com/jupyterlab/jupyterlab – pull requests – issues
https://github.com/jupyter/nbconvert – pull requests – issues
https://github.com/jupyter-widgets/ipywidgets – pull requests – issues
https://github.com/jupyter/nbclient – pull requests – issues