Skip to content

evanlivingston/CounterPoint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Counter Point
=======

This project contains my ongoing research of applying machine learning conepts to species counter point exercises.

Usage
-------------

lilypond is required to output results in score and midi format

When the script is executed, the user will be automatically requested to input a cantus firmus. The format is midi note numbers. An example cantus firmus in the key of C is:
<pre>
60, 64, 65, 67, 64, 69, 67, 64, 65, 64, 62, 60
</pre>

To start a search:
<pre>
x = depth_first_tree_search(problem)
</pre>

To see the terminal node:
<pre>
x
</pre>

To see the path to this node, which will be a complete cantus firmus exercise:
<pre>
 x.path()
</pre>

To create pdf output and .midi  file
<pre>
 x.Output(x)
</pre>

for i in x.path(): print(i)

<pre>
node  cantus  counter interval
  |     |       /      /
  |     |     /      /
  \     |    /     /
   \    |   |    /
    \   |  /   / 
     \  | |  /
      | | | |
+==========================
< node 0,0,0,0>
< node 1,1,25,24>
< node 2,2,14,12>
< node 3,3,12,9>
< node 4,4,16,12>
< node 5,5,14,9>
< node 6,6,18,12>
</pre

About

Excursions with machine learning and music making!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages