You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Bungee is a real-time library for stretching audio. It can:
4
-
* Adjust the playback speed of audio without affecting pitch
5
-
* Adjust pitch, or transpose, audio without affecting playback speed
6
-
* Or any combination of pitch and playhead position manipulation.
3
+
Bungee is a modern, open-source C++ library for high-quality audio time-stretching and pitch-shifting in real-time or offline. Easily integrate advanced audio timescale processing into your application.
7
4
8
-
Bungee is unique in its controllability, allowing continually changing pitch and position with seamless support of zero and negative playback speeds. So it can be used for a "smooth scrub" or for rendering lifelike audio for slow-motion videos.
9
-
10
-
## Features
11
-
12
-
* Simple, fast, with good quality audio output (hear some [comparisons](https://bungee.parabolaresearch.com/compare-audio-stretch-tempo-pitch-change.html) with other approaches)
13
-
* Reasonably low latency (of the order of 20ms for speed and pitch controls and 40ms from audio input to output)
14
-
* Frequency-domain phase-vocoder-based algorithm
5
+
Bungee can adjust the speed of audio without affecting pitch; transpose audio pitch without affecting speed; or any combination of playhead position and pitch manipulation.
6
+
* Simple, fast phase-vocoder-based algorithm with good quality audio output ([🎧 hear some comparisons](https://bungee.parabolaresearch.com/compare-audio-stretch-tempo-pitch-change.html) with other algorithms)
15
7
* Modern C++ for clean and resilient code
16
-
* Static library with a command-line utility that operates on WAV files
17
8
18
-
## License
9
+
Bungee is unique in its controllability, allowing continually changing audio tempo and pitch manipulation with seamless support of zero and negative playback speeds. So it can be used for a "smooth scrub" or for rendering lifelike audio for slow-motion videos.
19
10
20
-
Bungee is permissively licensed under the Mozilla Public License Version 2.0.
11
+
⭐️ _To support Bungee, please consider [giving this repo a star](https://github.com/bungee-audio-stretch/bungee/stargazers)_ .
## Getting started with Bungee Audio Time-Stretching
23
19
24
20
Bungee's dependencies are managed as git submodules; so clone like this:
25
21
```
@@ -39,11 +35,11 @@ After a successful build, run the bungee executable
39
35
./bungee --help
40
36
```
41
37
42
-
## Using pre-built Bungee
38
+
## Integrating Bungee C++ Audio Library
43
39
44
40
Every commit pushed to this repo's main branch is automatically tagged and built into a release. Each release contains Bungee built as a shared library together with headers, sample code and a sample command-line executable that uses the shared library. Releases support common platforms including Linux, Windows, MacOS, Android and iOS.
45
41
46
-
## Using Bungee from your own code
42
+
## Example: Real-Time Audio Pitch-Shifting in C++
47
43
48
44
Bungee operates on discrete, overlapping "grains" of audio, typically processing around 100 grains per second. Parameters such as position and pitch are provided on a per-grain basis so that they can be changed continuously as audio rendering progresses. This means that only minimal parameters are required for instantiation.
49
45
@@ -137,24 +133,33 @@ The sample `bungee` command-line utility also uses:
137
133
138
134
See this repo's [.gitmodules](.gitmodules) for versioned links to these projects.
139
135
140
-
## Support
141
-
142
-
Please use Github issues to report any problems and to suggest possible improvements to Bungee.
143
-
144
-
## Bungee Pro
145
-
146
-
Bungee Pro is a closed-source commercial product aimed to offer a seamless upgrade path from this open-source project. It uses novel algorithms for sharp and clear professional-grade audio and runs at least as fast as Bungee, thanks to platform-specific performance optimisations.
136
+
## License
147
137
148
-
Whilst open-source Bungee strives to be the best open-source audio time stretch algorithm, the goal of Bungee Pro is to be the best algorithm available to license commercially.
138
+
Bungee is permissively licensed under the Mozilla Public License Version 2.0.
149
139
150
-
Try Bungee Pro [now in your browser](https://bungee.parabolaresearch.com/change-audio-speed-pitch.html), see a [comparison](https://bungee.parabolaresearch.com/compare-audio-stretch-tempo-pitch-change.html) with other techniques.
140
+
## Support
151
141
152
-
Consider licensing Bungee Pro for:
153
-
* Powerful stretch algorithms adaptive to all genres of speech, music and sound with subjective transparency up to infinite time stretch
154
-
* Novel processing techniques that deliver crisp transients and preserve vocal and instrumental timbre
155
-
* Performance optimisations for:
156
-
* Web AudioWorklet with SIMD128 WebAssembly
157
-
* Arm NEON for Android, iOS and MacOS
158
-
* x86-64 SIMD for Linux, Windows and MacOS
159
-
* A ready-to-use Web Audio implementation
160
-
* Professional support
142
+
Bungee's goal is to be the _best open source audio timescale manipulation library_ available. User feedback is invaluable: please use Github issues to report anything that could be improved.
143
+
144
+
> ## Bungee Pro
145
+
>
146
+
> Bungee Pro is a commercial product providing an upgrade path from this open-source project. It uses novel algorithms for sharp and clear professional-grade audio and runs at least as fast as Bungee, thanks to platform-specific performance optimisations.
147
+
>
148
+
> Whilst open-source Bungee aims to be the best open-source audio time stretch algorithm, the goal of Bungee Pro is to be the _best algorithm available commercially_.
149
+
>
150
+
> * Novel processing techniques that deliver crisp transients and preserve vocal and instrumental timbre
151
+
> * Adaptive to all genres of speech, music and sound with subjective transparency up to infinite time stretch
152
+
> * Performance optimisations for:
153
+
> * Web AudioWorklet with SIMD128 WebAssembly
154
+
> * Arm NEON for Android, iOS and MacOS
155
+
> * x86-64 SIMD for Linux, Windows and MacOS
156
+
> * A ready-to-use Web Audio implementation
157
+
> * Professional support
158
+
>
159
+
> Bungee Pro is used in a wide variety of applications including movie post production software, educational apps and musicians' tools.
160
+
>
161
+
> [Listen to an extensive evaluation](https://bungee.parabolaresearch.com/compare-audio-stretch-tempo-pitch-change.html) of Bungee and Bungee Pro against state-of-the-art techniques.
162
+
>
163
+
> || Try the [WebAssembly demo](https://bungee.parabolaresearch.com/change-audio-speed-pitch.html) of Bungee Pro in your browser.|
0 commit comments