Skip to content

Commit

Permalink
UPDATED: doc index
Browse files Browse the repository at this point in the history
  • Loading branch information
IndustrieCreative committed Feb 6, 2022
1 parent 3e442c6 commit 6ad394f
Showing 1 changed file with 86 additions and 45 deletions.
131 changes: 86 additions & 45 deletions docs/index.html
Expand Up @@ -63,87 +63,128 @@ <h1><span class="name">Harmonicarium</span></h1>
<div class="row">
<div class="col-md-9 main-content">
<section class="readme-section">
<article><h1><img src="http://harmonicarium.org/harmonicarium_logo.png" alt="Harmonicarium" title="Harmonicarium, a Dynamic Harmonics Calculator" style="width:75%;"></h1>
<article>
<h1 id="-harmonicarium-http-harmonicarium-org-harmonicarium_logo-png-harmonicarium-a-dynamic-harmonics-calculator-"><img src="http://harmonicarium.org/harmonicarium_logo.png" alt="Harmonicarium" title="Harmonicarium, a Dynamic Harmonics Calculator" style="width:75%;"></h1>
<p>a Dynamic Harmonics Calculator</p>
<h2>What is this?</h2>
<p>The Harmonicarium is a platform that allow the user/musician to play the Harmonic Series and change its fundamental tone in real-time. Just like the overtone singers do with the <a href="https://www.youtube.com/watch?v=haz6W7p8xjM">polyphonic overtone singing technique</a>. The idea is to play a fundamental-variable harmonic series on electronic and electro-acoustical instruments retuned via MIDI and in real-time.</p>
<p><img src="http://harmonync.org/wp-content/uploads/slide003.jpg" alt="Harmonicarium"></p>
<p>It's based on the Pure Data prototype patch &quot;<strong><a href="https://github.com/IndustrieCreative/Harmonync">Harmonync</a></strong>&quot;, developed between 2013 and 2016.</p>
<h2 id="what-is-this-">What is this?</h2>
<p>The Harmonicarium is a platform that allow the user/musician to play the Harmonic Series and change its
fundamental tone in real-time. Just like the overtone singers do with the
<a href="https://www.youtube.com/watch?v=haz6W7p8xjM">polyphonic overtone singing technique</a>. The idea is to play
a fundamental-variable harmonic series on electronic and electro-acoustical instruments retuned via MIDI
and in real-time.</p>
<p><img src="http://harmonicarium.org/wp-content/uploads/slide003.jpg" alt="Harmonicarium"></p>
<p>It&#39;s based on the Pure Data prototype patch &quot;<strong><a href="https://github.com/IndustrieCreative/Harmonync">Harmonync</a></strong>&quot;,
developed between 2013 and 2016.</p>
<p>To better understand, you can read the <a href="http://harmonicarium.org/project-overview/"><strong>project overview</strong> on the home site</a>.</p>
<p>Harmonicarium's <strong>source code</strong> repository <a href="https://github.com/IndustrieCreative/Harmonicarium">is available on GitHub</a>.</p>
<h2>Applications</h2>
<p>Harmonicarium&#39;s <strong>source code</strong> repository <a href="https://github.com/IndustrieCreative/Harmonicarium">is available on GitHub</a>.</p>
<p>The <strong>API Documentation</strong> <a href="https://industriecreative.github.io/Harmonicarium/">is available on GitHub Pages</a>.</p>
<h2 id="potential-applications">Potential applications</h2>
<ul>
<li>Musical performances and playing music.</li>
<li>Music composition for...
<ul>
<li>Music composition for...<ul>
<li>overtone singers and choirs;</li>
<li>&quot;overtone instruments&quot; (i.e. natural brasses/horns – or the sax altissimo technique; the <a href="https://en.wikipedia.org/wiki/%C4%90%C3%A0n_b%E1%BA%A7u">Đàn bầu</a> that use the string flageolets phenomenon);</li>
<li>&quot;overtone instruments&quot; (i.e. natural brasses/horns – or the sax altissimo technique;
the <a href="https://en.wikipedia.org/wiki/%C4%90%C3%A0n_b%E1%BA%A7u">Đàn bầu</a> that use the string flageolets
phenomenon);</li>
<li>microtonal musicians.</li>
</ul>
</li>
<li>Polyrhythm composition and research.</li>
<li>Research about the musical theory.</li>
<li>Musicotherapy and sound therapy.</li>
<li>Creative additive sound synthesis.</li>
<li>Scientific probes; realtime tone/signal generation for...
<ul>
<li>Scientific probes; realtime tone/signal generation for...<ul>
<li>environmental acoustic tests (i.e. <a href="https://en.wikipedia.org/wiki/Modal_analysis">modal analysis</a>);</li>
<li>physical actuators (i.e. <a href="https://en.wikipedia.org/wiki/Sonotrode">sonotrode</a>);</li>
<li>...</li>
</ul>
</li>
</ul>
<h2>System requirements</h2>
<p>Harmonicarium is written in <strong>JavaScript</strong> (used <strong>ES6</strong> features) and uses the <strong><a href="https://www.w3.org/TR/webmidi/">Web MIDI</a></strong> and <strong><a href="https://www.w3.org/TR/webaudio/">Web AUDIO</a> API</strong>.<br>
Currently it has been tested on <strong>Google Chrome</strong> v61+ under macOS (v10.11+), Windows (v10) and Android (v5+) but it could run on other browsers supporting the Web MIDI and AUDIO API.</p>
<p><strong>At the moment you need Google Chrome</strong> or Chromium. The software has been developed on a high performance workstation environment and currently no optimization has been made in order to minimize the computational load.</p>
<p><strong>Partially untested on mobile devices</strong>. On embedded Android devices I have experienced slow data processing (delay in output audio response). This means that on low performance system you could may experience slowdowns. The <a href="https://github.com/stuartmemo/qwerty-hancock">Qwerty Hancock</a> keyboard seems to support multitouch events.</p>
<h2>Quick Start</h2>
<p>This program is a web-app. This means that it uses the HTML5 technology and you need a browser to use it. As I said at this moment you need Chrome.</p>
<h2 id="system-requirements">System requirements</h2>
<p>Harmonicarium is written in <strong>JavaScript</strong> (used <strong>ES6</strong> features) and uses the
<strong><a href="https://www.w3.org/TR/webmidi/">Web MIDI</a></strong> and <strong><a href="https://www.w3.org/TR/webaudio/">Web AUDIO</a> API</strong>.
Currently it has been tested on <strong>Google Chrome</strong> v61+ under macOS (v10.11+), Windows (v10) and Android (v5+)
but it could run on other browsers supporting both, the Web MIDI and AUDIO API (actually Opera and Microsoft
Edge).</p>
<p><strong>At the moment you need Google Chrome</strong> or Chromium. The software has been developed on a high performance
workstation environment and currently no optimization has been made in order to minimize the computational load. </p>
<p><strong>Partially untested on mobile devices</strong>. On embedded Android devices I have experienced slow data processing
(delay in output audio response). This means that on low performance system you could may experience slowdowns.
The <a href="https://github.com/stuartmemo/qwerty-hancock">Qwerty Hancock</a> keyboard seems to support multitouch events.</p>
<h2 id="quick-start">Quick Start</h2>
<p>This program is a web-app with PWA features. This means that it uses the HTML5 technology and you need a
browser-container to run it. As I said at this moment you should use Chrome, but you can try also the others.</p>
<ol>
<li>If you don't have Google <strong>Chrome</strong> on your system, download <a href="https://www.google.com/chrome/browser/desktop/index.html">here</a> and install it.</li>
<li>Run the app's URL in the browser. You can:
<ul>
<li>If you don&#39;t have Google <strong>Chrome</strong> on your system, download
<a href="https://www.google.com/chrome/browser/desktop/index.html">here</a> and install it.</li>
<li>Run the app&#39;s URL in the browser. You can:<ul>
<li>open the online version <strong><a href="http://harmonicarium.org/app">harmonicarium.org/app</a></strong>;</li>
<li>download <a href="https://github.com/IndustrieCreative/Harmonicarium/zipball/master">the sources</a> from GitHub and open &quot;index.html&quot; to run a local instance of the app.</li>
<li>download <a href="https://github.com/IndustrieCreative/Harmonicarium/zipball/master">the sources</a>
from GitHub and open &quot;index.html&quot; to run a local instance of the app.</li>
</ul>
</li>
</ol>
<blockquote>
<p>NOTES:</p>
<ul>
<li>On Android/iOS mobile devices the &quot;local version&quot; of the app could not work &quot;directly&quot;.</li>
<li>To use Harmonicarium locally with Android, there is a little workaround. Android does not allow you to open html files with Chrome, so you have to browse through files using Chrome in order to reach the index.html file. Unzip the .zip in the internal memory (on some phone does not work if it is on the SD) and write <strong>file:///sdcard</strong> in the Chrome's address bar. Now go to look for the app's folder by navigating through the files and start index.html directly from Chrome.</li>
<li>Of course, if you run the app locally, do not rename or move any other file inside the main folder. You can rename and move only the main folder.</li>
<li>To use Harmonicarium locally with Android, there is a little workaround. If your version of Android does
not allow you to open html files with Chrome, you can try to unzip the .zip in the internal memory
(on some phone does not work if it is on the SD) and write <strong>file:///sdcard</strong> in the Chrome&#39;s address bar.
Now go to look for the app&#39;s folder by navigating through the files and start index.html directly from Chrome.</li>
<li>Of course, if you run the app locally, do not rename or move any other file inside the main folder.
You can rename and move only the main folder.</li>
</ul>
</blockquote>
<h2>How to use it?</h2>
<p>Visit <a href="http://harmonicarium.org/">harmonicarium.org</a> for the <strong>Tutorials</strong>. There is no comprehensive guide at this moment, it is currently being drafted. A video-guide and a step-by-step tutorial will be released as soon as possible. For any questions, do not hesitate to contact Walter Mantovani at armonici.it[<em>at</em>]gmail[<em>dot</em>]com.</p>
<p>Now (January 3, 2018) the <strong><a href="http://harmonicarium.org/">harmonicarium.org</a></strong> site has a basic documentation. You can also visit the old project site: <strong><a href="http://harmonync.harmonicarium.org">harmonync.harmonicarium.org</a></strong></p>
<h2>A first public document about the DHC</h2>
<p>The document &quot;<strong>A first look at THE HARMONYNC: A Dynamic Harmonics Calculator – Draft of Specifications and User Guide</strong>&quot; is available <a href="http://harmonync.harmonicarium.org/a_first_look_at_the_harmonync.pdf">here</a> and has the following DOI: <a href="http://dx.doi.org/10.978.88940077/01">10.978.88940077/01</a></p>
<h2>Contribute... or fork!</h2>
<h2 id="how-to-use-it-">How to use it?</h2>
<p>Visit <a href="http://harmonicarium.org/">harmonicarium.org</a> for the <strong>Tutorials</strong>.
There is no comprehensive guide at this moment, it is currently being drafted.
A video-guide and a step-by-step tutorial will be released as soon as possible.
For any questions, do not hesitate to contact Walter Mantovani at armonici.it[<em>at</em>]gmail[<em>dot</em>]com.</p>
<p>Currently (February, 2022) the <strong><a href="http://harmonicarium.org/">harmonicarium.org</a></strong> site still has a basic
documentation but you can also visit the old project site to get more information:
<strong><a href="http://harmonync.harmonicarium.org">harmonync.harmonicarium.org</a></strong></p>
<h2 id="a-first-public-document-about-the-dhc-idea">A first public document about the DHC idea</h2>
<p>The document &quot;<strong>A first look at THE HARMONYNC: A Dynamic Harmonics Calculator – Draft of Specifications and
User Guide</strong>&quot; is available <a href="http://harmonync.harmonicarium.org/a_first_look_at_the_harmonync.pdf">here</a> and
has the following DOI: <a href="http://dx.doi.org/10.978.88940077/01">10.978.88940077/01</a></p>
<h2 id="roadmap-contribute-or-fork-">Roadmap – Contribute... or fork!</h2>
<p>The <strong>API Documentation</strong> <a href="https://industriecreative.github.io/Harmonicarium/">is available on GitHub Pages</a>.</p>
<p>From version 0.6.0 the entire code has been totally refactored to be more modular, and also the <strong>UI</strong>
is become more intuitive, responsive and touch-events-compliant.
The app is now a PWA (progressive web app) and so you can install it on your device if you wish.</p>
<p>Currently there are two main issues:</p>
<ol>
<li>The current <strong>UI</strong> sucks. Help is needed to create an intuitive, responsive and touch-events-compliant UI.</li>
<li>A DHC should be <strong>modular</strong> (imagine a chain of DHCs... –_–). So it is necessary to reduce the global objects/functions and put some order. Move the functions into the respective methods of few main objects. In this way the DHC engine could become a library.</li>
<li>Improve the design of the Setting panel (backend) using an UI framework. And we have to chose what to use.
Currently all the UI widgets are the default broswer ones. There is no responsiveness! Use settings on
mobile devices is a true hell.</li>
<li>The &quot;module&quot; diphonicpad.js (the new UI, the frontend) is not complete yet and so is undocumented.
I have to revise all the functions in it and make further testing on mobile devices. After that, I will
try to make it multi-touch as well.</li>
</ol>
<p>Having done these things, there are other two main milestones to reach:</p>
<ol start="3">
<li>Add some tools for the visualization of sound: oscilloscope, lissajous curve, spectrum, spectrogram and a &quot;tonal spiral&quot;.</li>
<ol>
<li>Add some tools for the visualization of sound: oscilloscope, lissajous curve, spectrum, spectrogram and
a &quot;tonal spiral&quot; like <a href="https://suonoterapia.org/overtones/">this</a>.</li>
<li>Implement <strong>polyrhythms</strong> generation (nothing but harmonics in the infrasound domain).</li>
</ol>
<p>If you have any suggestions, you can write directly to the email in the license note or use the <a href="https://github.com/IndustrieCreative/Harmonicarium/issues">&quot;<strong>Issues</strong>&quot; section</a> of the GitHub repository. And if you are a coder, ever help is welcome!</p>
<p>If you have any suggestions, you can write directly to the email in the license note or use the
<a href="https://github.com/IndustrieCreative/Harmonicarium/issues">&quot;<strong>Issues</strong>&quot; section</a> of the GitHub repository.
And if you are a coder, ever help is welcome!</p>
<p>See also <a href="http://harmonicarium.org/contacts/">the <strong>contact page</strong></a> on the project site.</p>
<h2>License</h2>
<p>Harmonicarium – a Dynamic Harmonics Calculator<br>
Copyright (C) 2017-2018 by Walter Mantovani</p>
<p>This program is free software: you can redistribute it and/or modify it under the terms of the <strong>GNU Affero General Public License</strong> as<br>
published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.</p>
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of<br>
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.</p>
<p>You should have received a copy of the GNU Affero General Public License along with this program. If not, see <a href="http:%5C/%5C/www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>.</p>
<p>armonici.it <em>[at]</em> gmail <em>[dot]</em> com.</p></article>
<h2 id="license">License</h2>
<p>Harmonicarium – a Dynamic Harmonics Calculator
Copyright (C) 2017-2022 by Walter Mantovani</p>
<p>This program is free software: you can redistribute it and/or modify it under the terms of the
<strong>GNU Affero General Public License</strong> as published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.</p>
<p>This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
License for more details.</p>
<p>You should have received a copy of the GNU Affero General Public License along with this program. If not,
see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>.</p>
<p>armonici.it <em>[at]</em> gmail <em>[dot]</em> com.</p>
</article>
</section>
</div>
<div class="col-md-3 side-content">
Expand Down

0 comments on commit 6ad394f

Please sign in to comment.