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
Copy file name to clipboardExpand all lines: README.md
+13-31Lines changed: 13 additions & 31 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,18 +1,15 @@
1
1
# Sonic
2
2
3
-
[Lookout](https://github.com/src-d/lookout) analyzer that uses [Sonic Pi](https://sonic-pi.net/) to generate sound from PRs.
3
+
[Lookout](https://github.com/src-d/lookout) analyzer that generates sound from PRs.
4
4
5
5
The analyzer part uses [bblfsh](https://bblf.sh) to extract the UAST nodes from old and new code separating the nodes in deleted and added. It gets the type of node, token (name), size (characters) and hash (used for comparing).
6
6
7
-
Sound generation uses a preconfigured Sonic Pi setup with a synth and listens to [OSC](https://en.wikipedia.org/wiki/Open_Sound_Control) for note and synth configuration data. Currently the data sent is:
7
+
Sound generation is compatible with any midi synthesizer which exposes midi device. Currently the data sent is:
8
8
9
9
* Note
10
10
* Duration (sustain time in seconds)
11
-
* Cutoff (filter parameter for the synth)
12
-
* Attack (how much it takes the note to reach volume peak)
13
-
* Release (how much time it sounds after "releasing" the key)
14
11
15
-
Currently only Note and Duration are changed and the rest of parameters are always the same. Two note sequences are generated per file, one for deleted and another one for added:
12
+
Two note sequences are generated per file, one for deleted and another one for added:
16
13
17
14
* file 1
18
15
* deleted sequence
@@ -35,7 +32,7 @@ Duration is a direct conversion from the node size with a maximum of 250 millise
35
32
36
33
## Getting Started
37
34
38
-
Here's the information on how to configure Sonic Pi and the development environment. The project as is cannot be used to send data to github as the sound is played where Sonic Pi is running. Currently the OSC endpoint is hardcoded to `localhost`.
35
+
Here's the information on how to configure midi synthesizer and the development environment. The project as is cannot be used to send data to github as the sound is played where synthesizer is running.
After installing Sonic Pi check with some examples that works and it produces sound. If you are using Linux and it does not work try using jack 2 instead of jack 1 and changing its configuration.
57
-
58
-
We need to activate OSC input messages. To do so open preferences, go to IO tab and make sure that "Receive remote OSC messages" is checked.
59
-
60
-
The last step is setting the configuration script in the editor. Delete whatever is in it and paste this script:
0 commit comments