Skip to content

Commit 78f0a98

Browse files
authoredAug 30, 2022
Merge pull request #3200 from sonic-pi-net/dev
Release v4.1
2 parents d3179d0 + c1065bf commit 78f0a98

File tree

115 files changed

+15897
-14066
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

115 files changed

+15897
-14066
lines changed
 

‎CHANGELOG.md

+38-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# History
2+
* [v4.1.0 'Phase'](#v4.1.0), 30th August 2022
23
* [v4.0.3 'Dovetail'](#v4.0.3), 18th July 2022
34
* [v4.0.2 'Relink'](#v4.0.2), 15th July 2022
45
* [v4.0.1 'Verknüpfen'](#v4.0.1), 12th July 2022
@@ -27,6 +28,43 @@
2728
* [v2.0.1](#v2.0.1), 9th Sept, 2014
2829
* [v2.0 'Phoenix'](#v2.0), 2nd Sept, 2014
2930

31+
<a name="v4.1.0"></a>
32+
33+
## Version 4.1.0 'Phase'
34+
30th August 2022
35+
<!-- [(view commits)](https://github.com/sonic-pi-net/sonic-pi/commits/v4.1.0): -->
36+
37+
The release of v4 of Sonic Pi introduced the ability to change the tempo of live running code to an external beat. This is possible either by setting the tempo manually to a specific BPM (Beats Per Minute) or by using the Tap Tempo button to tap along to an external rhythm. However, even when you do this, it's quite likely that things still don't sound quite right as there's a good chance that the two rhythms are out of phase despite being at the same tempo. This release introduces a new feature - Global Time Warp which lets you shift the phase of Sonic Pi's timing back or forward up to 250 milliseconds to let you align it with an external rhythm.
38+
39+
Taking a quick step back, what does it mean for two rhythms to be out of phase and why is it a problem? Imagine you had two metronomes ticking away. If one has a higher tempo than the other, then one will be ticking faster than the other. This can be fixed by setting the tempos to be the same. However, unless they were both started at exactly the same time, they both wont be ticking at the same time. Instead, one will tick, then the other, then the first, then the second, etc. The second will always be a little later than the first and as they are at the same tempo, they will never catch up with each other, they will always tick at different times. This is called being out of phase. When two rhythms are out of phase it can sound very messy. Therefore, being able to get rhythms to start at exactly the same time is really important to being able to jam together and for it to sound good.
40+
41+
The new Global Time Warp control lets you shift the timing of all triggered synths, MIDI and OSC messages forwards or backwards by a specified time in milliseconds. You can either slide a slider or type in a specific time to adjust the phase of Sonic Pi's timing to match the phase of an external rhythm.
42+
43+
This means you can now easily jam to an external track - first by tapping out the tempo and then by shifting the phase using the new Global Time Warp controls until it sounds right. This is essentially what DJs do when they mix tracks together in a live set - only now you can layer coded rhythms, basslines and riffs on top of external music with code. This is not only a great way to perform live, but it's also a wonderful way to practice - by jamming along to music you love.
44+
45+
In addition to this, the accuracy of the Tap Tempo functionality has been improved in addition to UI tweaks to all the metronome controls.
46+
47+
Have fun jamming in phase to external music and take your live coding collaborations to the next level!
48+
49+
50+
### GUI
51+
* New Global Time Warp controls. This lets you adjust the timing of all scheduled events (synths, samples, MIDI and OSC) forwards or backwards up to 250 milliseconds. This is important for matching the phase of an external rhythm.
52+
* Improved Tap Tempo logic aimed towards increased BPM detection accuracy and speed.
53+
* BPM scrubber and new Global Time Warp scrubber now respond to mouse wheel changes.
54+
55+
### Improvements
56+
* Clearly specify in the tutorial that user-defined function names should start with a lower case letter. Therefore use `define :foo` rather than `define :Foo`.
57+
58+
### Translations
59+
* Minor improvements to the Indonesian, Korean Portuguese (Brazil) and Russian translations.
60+
61+
### Bugfixes
62+
* The `duration:` opt for `midi_clock_beat` has been fixed.
63+
* Fix `scsynth_opts` and `scsynth_opts_override` options in the `~/.sonic-pi/config/audio-settings.toml` config file.
64+
* Audio output via external soundcards on macOS should now work without requiring audio inputs to be enabled in the GUI.
65+
* `current_debug` now correctly returns `true` if logging/debug is enabled (the default). Previously it reported the inverse.
66+
* Minor improvements to documentation layout.
67+
3068

3169
<a name="v4.0.3"></a>
3270

@@ -44,8 +82,6 @@ This is a minor bugfix and maintenance release.
4482

4583
### Bugfixes
4684
* A regression in the function `midi_sysex` introduced in v4 has been resolved. `midi_sysex` can now be called as expected.
47-
48-
4985
<a name="v4.0.2"></a>
5086

5187
## Version 4.0.2 'Relink'

‎CONTRIBUTORS.md

+11-5
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ projects:
6363
## Sponsors
6464

6565
The following organisations have financially supported the continued
66-
developent and maintainence of Sonic Pi. We give our appreciation and
66+
development and maintenance of Sonic Pi. We give our appreciation and
6767
respect back to them all for choosing to support open source software:
6868

6969
* [Trading & Consulting 'H.P.C.' GmbH](https://www.hpc.at/)
@@ -248,7 +248,7 @@ thanks to the following developers who have donated their time and
248248
effort to help grow and improve the Sonic Pi code base:
249249

250250

251-
* [Sam Aaron](https://github.com/sonic-pi-net/sonic-pi/commits?author=samaaron) (5278)
251+
* [Sam Aaron](https://github.com/sonic-pi-net/sonic-pi/commits?author=samaaron) (5304)
252252
* [Ethan Crawford](https://github.com/sonic-pi-net/sonic-pi/commits?author=ethancrawford) (304)
253253
* [Hanno Zulla](https://github.com/sonic-pi-net/sonic-pi/commits?author=hzulla) (198)
254254
* [Joseph Wilk](https://github.com/sonic-pi-net/sonic-pi/commits?author=josephwilk) (160)
@@ -257,13 +257,13 @@ effort to help grow and improve the Sonic Pi code base:
257257
* [SunderB](https://github.com/sonic-pi-net/sonic-pi/commits?author=SunderB) (96)
258258
* [Robin Newman](https://github.com/sonic-pi-net/sonic-pi/commits?author=rbnpi) (85)
259259
* [Łukasz Siwiński](https://github.com/sonic-pi-net/sonic-pi/commits?author=hopbit) (82)
260-
* [Emlyn Corrin](https://github.com/sonic-pi-net/sonic-pi/commits?author=emlyn) (73)
260+
* [Emlyn Corrin](https://github.com/sonic-pi-net/sonic-pi/commits?author=emlyn) (76)
261261
* [Adrian Cheater](https://github.com/sonic-pi-net/sonic-pi/commits?author=factoid) (70)
262262
* [Chris Maughan](https://github.com/sonic-pi-net/sonic-pi/commits?author=cmaughan) (66)
263263
* [Lily Foster](https://github.com/sonic-pi-net/sonic-pi/commits?author=lilyinstarlight) (48)
264+
* [Nicolas Dermine](https://github.com/sonic-pi-net/sonic-pi/commits?author=nicoder) (42)
264265
* [Luis Lloret](https://github.com/sonic-pi-net/sonic-pi/commits?author=llloret) (41)
265266
* [Martin Keegan](https://github.com/sonic-pi-net/sonic-pi/commits?author=mk270) (41)
266-
* [Nicolas Dermine](https://github.com/sonic-pi-net/sonic-pi/commits?author=nicoder) (41)
267267
* [Kenichi Kanai](https://github.com/sonic-pi-net/sonic-pi/commits?author=kn1kn1) (28)
268268
* [Nikolaus Gradwohl](https://github.com/sonic-pi-net/sonic-pi/commits?author=ngradwohl) (26)
269269
* [Ricardo Pozo](https://github.com/sonic-pi-net/sonic-pi/commits?author=thraex41) (23)
@@ -360,6 +360,7 @@ effort to help grow and improve the Sonic Pi code base:
360360
* [Dionysis Zindros](https://github.com/sonic-pi-net/sonic-pi/commits?author=dionyziz) (1)
361361
* [Dominic Calkosz](https://github.com/sonic-pi-net/sonic-pi/commits?author=Dmcdominic) (1)
362362
* [Drew A. Moore](https://github.com/sonic-pi-net/sonic-pi/commits?author=moore-drew) (1)
363+
* [Eduardo Fonseca](https://github.com/sonic-pi-net/sonic-pi/commits?author=edrd-f) (1)
363364
* [Eric M](https://github.com/sonic-pi-net/sonic-pi/commits?author=em13914) (1)
364365
* [Ezequiel Ramos](https://github.com/sonic-pi-net/sonic-pi/commits?author=ezequielramos) (1)
365366
* [Fabian Aussems](https://github.com/sonic-pi-net/sonic-pi/commits?author=mozinator) (1)
@@ -371,10 +372,12 @@ effort to help grow and improve the Sonic Pi code base:
371372
* [Guntitat Sawadwuthikul](https://github.com/sonic-pi-net/sonic-pi/commits?author=) (1)
372373
* [Gábor Hermann](https://github.com/sonic-pi-net/sonic-pi/commits?author=gaborhermann) (1)
373374
* [Hamidreza Montaseri](https://github.com/sonic-pi-net/sonic-pi/commits?author=) (1)
375+
* [Himanshu](https://github.com/sonic-pi-net/sonic-pi/commits?author=himanshu007-creator) (1)
374376
* [Hrafnkell Eiríksson](https://github.com/sonic-pi-net/sonic-pi/commits?author=hrafnkelle) (1)
375377
* [Huiting Milewski](https://github.com/sonic-pi-net/sonic-pi/commits?author=) (1)
376378
* [Hur Ezeiza Zaldua](https://github.com/sonic-pi-net/sonic-pi/commits?author=) (1)
377379
* [Ian Stevenson](https://github.com/sonic-pi-net/sonic-pi/commits?author=irstevenson) (1)
380+
* [Ikko Ashimine](https://github.com/sonic-pi-net/sonic-pi/commits?author=eltociear) (1)
378381
* [Ioan Bizău](https://github.com/sonic-pi-net/sonic-pi/commits?author=ibz) (1)
379382
* [Ivan Zarea](https://github.com/sonic-pi-net/sonic-pi/commits?author=minivan) (1)
380383
* [James Smith](https://github.com/sonic-pi-net/sonic-pi/commits?author=nanomancer) (1)
@@ -598,6 +601,7 @@ The following volunteers have generously helped to translate Sonic Pi into addit
598601
* Lupa Lupin (3)
599602
* László van den Hoek (3)
600603
* Moisés Cachay Tello (3)
604+
* Moon Sungjoon (3)
601605
* Nader Jafari (3)
602606
* Nami KJ (3)
603607
* Nathan Van der Auwera (3)
@@ -699,6 +703,7 @@ The following volunteers have generously helped to translate Sonic Pi into addit
699703
* Tasos Protopapas (2)
700704
* Tiago Naufragado (2)
701705
* Tuomas Pyylampi (2)
706+
* Umair Raihan (2)
702707
* Vera Rojman (2)
703708
* Vincent Renard (2)
704709
* Vladimir Támara Patiño (2)
@@ -714,6 +719,7 @@ The following volunteers have generously helped to translate Sonic Pi into addit
714719
* sharmer156 (2)
715720
* tter (2)
716721
* zmni (2)
722+
* キツネさん (2)
717723
* Aaro Asikainen (1)
718724
* Adam Süki (1)
719725
* AgentWu (1)
@@ -763,6 +769,7 @@ The following volunteers have generously helped to translate Sonic Pi into addit
763769
* Evandro Afonso Rodrigues (1)
764770
* Fabian Aussems (1)
765771
* Federico Saccà (1)
772+
* Felipe Kinoshita (1)
766773
* Feodor Aleksandrov (1)
767774
* Fernando Alberto Ribeiro Tavar (1)
768775
* Filip Faste (1)
@@ -825,7 +832,6 @@ The following volunteers have generously helped to translate Sonic Pi into addit
825832
* Michael Bölling (1)
826833
* Miguel García (1)
827834
* Mikkel Gravgaard (1)
828-
* Moon Sungjoon (1)
829835
* Mui Kai En (1)
830836
* Nadezhda Ratckevich (1)
831837
* Narek Torosyan (1)

0 commit comments

Comments
 (0)