First species counterpoint in bach

Discussions, advice, bug reports and much more about the "bach" environment.
Post Reply
Lauprellim
Posts: 22
Joined: Sun Jul 11, 2021 7:35 am

First species counterpoint in bach

Post by Lauprellim » Mon Nov 29, 2021 6:25 pm

Hello everyone,

I just wanted to share my work on automatically generating first species counterpoint in bach. Of course, I have a long ways to go, but just getting this far feels like a major milestone. The patch generates cantus firmi and counterpoints using the bach.contraints object.

The help patch for bach.constraints (which generates a four-part chorale!) is far more sophisticated and elegant, but it served as inspiration as I worked through my own implementation. I chose a slightly different approach, but could never have possibly done this without the help patch as reference.

I plan on improving this even more in the coming weeks. For starters I could really use a constraint to check for overlap (notice measures 5-6!)

A million, billion thanks to Andrea and Daniele for devising this incredibly rich, rewarding and powerful environment.

Does anybody else have experience doing this sort of thing?
1st-species-cf-ctp.png
1st-species-cf-ctp.png (103.52 KiB) Viewed 22802 times

Post Reply