documentation.html 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <!DOCTYPE html>
  2. <html>
  3. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  4. <title>gizmo documentation</title>
  5. <style>
  6. body {
  7. padding-top: 100px;
  8. padding-bottom: 10px;
  9. max-width: 800px;
  10. margin: auto;
  11. }
  12. .over {
  13. border: 1px solid black;
  14. padding: 20px;
  15. border-radius: 5px;
  16. background: white;
  17. margin-bottom: 50px;
  18. }
  19. div {
  20. padding: 1px;
  21. padding-left: 10px;
  22. background: lightgrey;
  23. }
  24. </style>
  25. </head>
  26. <body>
  27. <div class="over"><h1>gizmo</h1>
  28. <p><strong>gizmo</strong> is a simple toolbox to create some simple melodies using python. The beauty about is, that you only need <em>a single motive</em> to create a little song.</p>
  29. <p><em>Note:</em> This program uses the <a href="https://github.com/cuthbertLab/music21">music21</a> library.</p>
  30. <h2>Dependencies</h2>
  31. <p>You can install the only python module that is not in the default library using pip:</p>
  32. <div><pre><code>pip install music21
  33. </code></pre></div>
  34. <h2>the &lsquo;gizmo notation&rsquo;</h2>
  35. <p>For a simple toolkit you need a simple notation that abides to the unix philsphoy. So we made a now one that consists simply of <em>lines in a plain text file</em>.</p>
  36. <p>Every line contains the information about <em>one note</em>. Seperated by apostrophes there are different attributes specified for each note. Every attribute seperated like this is called a <strong>&lsquo;part&rsquo;</strong>:</p>
  37. <ul>
  38. <li>The first part is a four characters long float that contains the <em>length</em> of the note in quarters.</li>
  39. <li>The second part is two to three chars long. The fist character is the Note value (capitalized) and the second one the octave (as a integer). The third char is optional and just the key signature in the form of either &ldquo;#&rdquo; or &ldquo;-&rdquo;.</li>
  40. </ul>
  41. <p>Here an example in the <em>gizmo notation</em>:</p>
  42. <div><pre><code>1.00,G4
  43. 1.00,E4
  44. 0.50,D4
  45. 1.00,C#4
  46. </code></pre></div>
  47. <p>Now the same example in <em>sheet music</em>:</p>
  48. <p><img src="../media/readme-example.png" alt="" /></p>
  49. <h2>Rendering</h2>
  50. <p>After you fully processed your music in the gizmo notation you can run it through the script called <em>final-converter</em> to export your work as a <strong>.musicXML</strong> file. This file can be viewed and further edited/processed in other free software like <a href="https://github.com/musescore/MuseScore">MuseScore</a>.</p></div>
  51. </body>
  52. <hr>
  53. <center>
  54. follow this project on
  55. <a href=https://github.com/noahvogt/gizmo>github</a>
  56. </center>
  57. </html>