flipcoder/textbeat

Pheww! finally works

grepsuzette opened this issue · 14 comments

Spent the weekend figuring out the ALSA, pulseaudio, Jack, fluidsynth, qsynth settings and it finally works. I finally can hear a major chord.

I normally don't do music on Linux but have been dreaming of something like that for a long time. Will soon try out the vim plugin. Thank you for making this come true!

Nice! Thanks for trying it out. If you get stuck or have suggestions or questions let me know. The documentation could use improvement when it comes to setup. I'm in the process of adding a few things that will make it much more useful (midi export and vst loading through carla). I haven't had the time to finish it though.

The problem was more with the underlying layers than with textbeat :)

One suggestion first:
I like to use my terminal with vi mode (set -o vi). If textbeat was reading its prompt using readline, then it should be possible for vi mode to also work from within it (e.g. to Escape B to go to previous word, f* to jump to next star). So I think it would be good :) For people with vi mode off it would make no difference.

Should I post a comment in Trello maybe?

As for questions, I understand from the readme that slide \ is not yet implemented. What about those midi events (cc mappings), if yes how to call them? I wish to experiment whether some of them can be used, e.g. pt for portamento time and ps for portamento switch, but %ps=1 is mistaken for a patch change, which fails.

Yes, feel free to post on Trello. Some features are stubs or only partially implemented.

I can definitely get vi mode working. I think textbeat uses prompt toolkit so it shouldn't be hard to add.

Let me look into your other question, I don't remember how the cc works

Yeah, looks like the CC names are checked after the other switches. I will fix this. The CC values are getting clobbered by that.

Btw, if the % symbol appears at the beginning of a line, those are global commands (tempo, time signature, etc.). For track commands, they need to follow a @ to not be confused with note names. p5 is a power chord, but @p5 is a patch change to instrument 5.

To give you an example of track commands:

ma7&@P5@V5

would be ma7 arpeggio, on instrument 5 at half volume (50%)

This is my favorite music software in a very long time, haha :)
Probably this is the most exciting thing since the soundtrackers.
Oh yesterday I tried pentatonic&, is it already possible to set octave span or direction down for the arpeggio? I think arpegiator features would likely only appear later but I am curious about this.

The arpeggiator can be reversed using && and there are optional arguments for it that can be separated by :.

So you can do a downward pentatonic arpeggio 3 times skipping every other note:

pentatonic&&3:2

The first arg is the number of repeats (default is infinite in a song and once on the terminal).

Second arg is the 'stride', or the number of notes to walk per step

The next thing to add might be stepping up and down by interval (1 - 5 - 3 - 7) so you could do broken thirds and things like that easily. There is some code for this already, but its not accessible.

I also want to do a "guitar mode" which will allow you to "hold" a chord and then walk each note using numbers. In this way, you could walk an arpeggio by note number. Info about that is on the trello but it is not yet implemented.

And for octave span you "stack" them using slashes, so to stack 3 octaves you'd do:

pentatonic/pentatonic/pentatonic&

It might be nice to have a shorter way to do this, but this is how you do it

%p=electric_piano %t=120x8 pentatonic/pentatonic/pentatonic/pentatonic/pentatonic'''& . . . . . . . . . . . . . . . . . . . . . . . . pentatonic/pentatonic/pentatonic/pentatonic/pentatonic'''&&
Nice!

@emugel I fixed the vi mode for the prompt. Should be usable with --vi flag now.

Awesome! Just tested and it works. Will add a "alias textbeat='textbeat --vi'". It's cool that you save the history across sessions in the CLI!

A more or less important thing I think is at times if you enter an invalid sequence in the CLI the engine will stop playing anything until you Ctrl-C Ctrl-C and restart textbeat. That being said I haven't yet tried vim plugin or files (except the examples, really cool ones) so I don't know how often I will end up using the CLI. For now though I really like the CLI :)

Yeah I noticed that sound stops sometimes after certain commands. I’ll try to fix that soon. Thanks for the compliments and feedback.