nbplay
let's play!
Overview
[!WARNING] This library is in early development and the API is subject to change without deprecation. Feedback and contributions are very welcome!
nbplay provides composable Jupyter widgets for a browser-backed DAW: synths, samplers, sequencers, keyboards, pads, transport, timeline recording, and mixer/session routing. Mixer channels and the master bus support Web Audio insert chains with built-in gain, filter, compressor, limiter, delay, and reverb effects, plus custom browser plugin factories. Custom effect descriptors must be JSON-safe; built-in effect names are reserved. Widgets render non-crashing fallback states when Web Audio or Web MIDI is unavailable.
import nbplay as nb
session = nb.Session()
seq = nb.SequencerWidget(num_voices=2)
sampler = nb.SamplerWidget()
track = session.add_track("Drums", seq, sampler)
session.mixer.add_channel_effect(
track.mixer_channel,
nb.EffectPlugin("compressor", threshold=-18, ratio=4),
)
session.mixer.add_master_effect(nb.EffectPlugin("limiter", threshold=-1))
session.timeline.length = 64
session.timeline.count_in_bars = 1
session.timeline.auto_extend_recording = True
session.timeline.recording_extend_bars = 16
session.timeline.arm_track(track.mixer_channel, True, exclusive=True)
timeline_tracks = [dict(track) for track in session.timeline.tracks]
timeline_tracks[track.mixer_channel]["monitor"] = True
session.timeline.tracks = timeline_tracks
session.timeline.add_clip("Kick loop", track_index=track.mixer_channel, start=0, duration=4)
[!NOTE] This library was generated using copier from the Base Python Project Template repository.
Metadata
Release files for nbplay 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nbplay-0.1.1.tar.gz | 498.8 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nbplay-0.1.1-cp311-abi3-manylinux_2_28_x86_64.whl | CPython 3.11 | abi3 | Linux glibc 2.28+ x86-64 | Details |
| nbplay-0.1.1-cp310-abi3-win_amd64.whl | CPython 3.10 | abi3 | Windows x86-64 | Details |
| nbplay-0.1.1-cp310-abi3-macosx_11_0_arm64.whl | CPython 3.10 | abi3 | macOS 11.0+ ARM64 | Details |
Total release size: 2.9 MB
Release files / nbplay-0.1.1.tar.gz
| Download URL | nbplay-0.1.1.tar.gz |
|---|---|
| Size | 498.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
455956bacf2d48d7bcb457e3f1ae8a9e1b1634feebc3328254ed1950a891e450
|
|
BLAKE2b-256 checksum How to use checksums |
c9071343437353a725bb4563ce46086553d9e217a5da29504c07c63d793a1310
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / nbplay-0.1.1-cp311-abi3-manylinux_2_28_x86_64.whl
| Download URL | nbplay-0.1.1-cp311-abi3-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.11 Linux glibc 2.28+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
b0384131928570e290c514a2963fc998d4c3d2ca50ead83111c66a323133247f
|
|
BLAKE2b-256 checksum How to use checksums |
3a53fb68a55a49696133533f25db95229da099b7cef0f551b10731ce964b9ffb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / nbplay-0.1.1-cp310-abi3-win_amd64.whl
| Download URL | nbplay-0.1.1-cp310-abi3-win_amd64.whl |
|---|---|
| Size | 589.2 kB |
| Tags | CPython 3.10 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
bc29a45af2dd1a752331ccb19b7e2ab13ef34f2c0ec6b911351405d247294059
|
|
BLAKE2b-256 checksum How to use checksums |
f3999b3f4e521bc0ebacdda62dfd40b4830a95ed3d221344a1141d3eedab2bb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / nbplay-0.1.1-cp310-abi3-macosx_11_0_arm64.whl
| Download URL | nbplay-0.1.1-cp310-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 669.9 kB |
| Tags | CPython 3.10 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
926f9e97d227268099d267eaa2c7d5e7e0e365413b50cb1828b07e774ce5f3b6
|
|
BLAKE2b-256 checksum How to use checksums |
7f24efd3f97009c523ea989894ab51831cf7b640cf8e578d29c04f4f00ed6b62
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|