Commit Graph

67 Commits

Author SHA1 Message Date
vsariola
1b4f1a8c5e feat(tracker): add menu item to export .wav
Also refactor the common functions for .wav export into base package so that both sointu-play and tracker can use same functions.
2021-04-17 14:24:05 +03:00
vsariola
7893c1d1ed feat(tracker, gioui): add confirmation dialogs before quit/new/load song
This should avoid accidentally losing all work by destroying window.
2021-04-16 22:42:51 +03:00
vsariola
ce52aa0ee9 feat(tracker, gioui): add error message if vuanalyzer detects a NaN
Closes #50
2021-04-12 20:05:43 +03:00
vsariola
68a50247bd feat(tracker): make shift + left/right take 1 octace / 12 semitone steps in oscillator transpose
Closes #37
2021-04-12 19:25:11 +03:00
vsariola
b4705c941f feat(tracker, gioui): add visual indicators to show which instruments are playing
Closes #44
2021-04-11 17:51:34 +03:00
vsariola
1eca428801 feat(gioui): add confirmation dialog when deleting instrument
Closes #5
2021-04-11 16:46:07 +03:00
vsariola
a639e0c5e6 fix(gioui): in note editor, only step when user actually enters a note 2021-04-11 15:54:58 +03:00
vsariola
d04895144b feat(gioui): add scrollbar to the order list 2021-04-10 19:16:04 +03:00
vsariola
847967c7b7 feat(gioui): add single letter track titles to order list 2021-04-10 18:09:20 +03:00
vsariola
8ef6de7ffd feat(tracker): add titles showing which instrument(s) belong to a track
Refer #43
2021-03-14 21:14:48 +02:00
vsariola
5daf81f331 fix(tracker): avoid NaNs in volume analyzer better 2021-03-14 18:19:13 +02:00
vsariola
b6283cd13e feat(tracker): add button to make note off and use "1" also as the key event
Closes #54
2021-03-14 18:10:29 +02:00
vsariola
01226a2910 feat(tracker, gioui): add ability & button to delete tracks.
Refer #46.
2021-03-11 22:26:42 +02:00
vsariola
87f373370e feat(gioui): add empty cell grid lines to order list
Refer #48.
2021-03-11 22:14:33 +02:00
vsariola
99dbdfe223 feat: add the ability to use Sointu as a sync-tracker
There is a new "sync" opcode that saves the top-most signal every 256 samples to the new "syncBuffer" output. Additionally, you can enable saving the current fractional row as sync[0], avoiding calculating the beat in the shader, but also calculating the beat correctly when the beat is modulated.
2021-03-09 23:52:33 +02:00
vsariola
c7448699b6 fix(gioui): disable file load / save dialogs in browser
This at least gets the program to compile into js as sqweek does not work in browser, but we really need to look for a long term solution. How to load & save songs in browser?
2021-03-04 11:21:20 +02:00
vsariola
adcf3ebce8 feat(sointu, tracker,...): restructure domain & tracker models
send targets are now by ID and Song has "Score" part, which is the notes for it. also, moved the model part separate of the actual gioui dependend stuff.

sorry to my future self about the code bomb; ended up too far and did not find an easy way to rewrite the history to make the steps smaller, so in the end, just squashed everything.
2021-02-28 14:24:54 +02:00