Giter Site home page Giter Site logo

Comments (10)

walterbender avatar walterbender commented on June 11, 2024

Could you point to the specific documentation?

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

@walterbender Question: Are we able, with our current synth, to play the notes in "the cracks of the piano"? Because I think that this feature makes more sense if it takes the pitch that you give it and transforms it according to its precise hertz.

(Easy) Example:

Pitch Value of Note = A (440 Hz)

Transpose by Ratio Argument = 2/1

Result = 880 (A, an octave higher than its original)

And this logic would hold up, more or less, for simple ratios. However, as we input more complex ratios (which I think is the whole point in having a feature like this--it allows users to explore different properties of pitch transformation and tuning) the logic for "rounding to the nearest pitch on the piano" breaks down; it also becomes less and less useful as a tool for exploring this idea.

If the synth is able to play any frequency that is ideal. In fact, I think that we should hold off on this particular feature until we are able to control our synth with such precision.

A case in point would be (and not very far from our octave!)

(more complex ratio) Example:

Note = 440

Transpose by Ratio argument = 3/2

Result = 660Hz (would sound like an E, but... the synth is probably playing something more like 659.255 Hz for that particular E)

_More on piano tuning (modern day tuning) in Hz:_
https://en.wikipedia.org/wiki/Piano_key_frequencies

_More on equal temperament (again, modern day tuning)_
https://en.wikipedia.org/wiki/Equal_temperament

The sound really is different when you transform pitches in this way. One musical effect that it would unlock immediately is harmonics--harmonics are properties of sound that occur naturally and in simpler ratios than the tuning of a modern piano.

_Harmonic Series (with great pictures to drive home the point!)_
https://en.wikipedia.org/wiki/Harmonic_series_%28music%29

_Following example tries to round the pitch to the nearest in equal temperament, however it would sound less and less the same as we go up in pitch_
https://simple.wikipedia.org/wiki/Harmonics_%28music%29

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

The sound really is different when you transform pitches in this way. One musical effect that it would unlock immediately is harmonics--harmonics are properties of sound that occur naturally and in simpler ratios than the tuning of a modern piano.

Harmonic Series (with great pictures to drive home the point!)
https://en.wikipedia.org/wiki/Harmonic_series_%28music%29

I may have been a little careless by using the metaphor for harmonics.

What harmonics has in common: the same ratios to the pitches

What is different from harmonics and transpose by ratio: harmonics are always in relation to the whole (i.e. 2:1, 3:1, 4:1, etc.). Transpose by Ratio can have other ratios, such as 2:3.

The analogy is probably more similar to taking a pitched string and shortening its length (like when you put you press a violin string against the fingerboard). If you press at a location that is at 1:3 the length of the string from the side with the tuning pegs, 2:3 of the string will vibrate when bowed.

So Transpose by Ratio will be able to do both harmonics, as well as analogies to other instruments, and non-standard tunings.

Devin

Devin

from musicblocks.

walterbender avatar walterbender commented on June 11, 2024

Would be fun to pick up in this thread again. Maybe the easier thing to implement to start is simply the ability to choose between 5-72 TET with the default being 12. Not sure how to do the "solfege" mapping if we go this route.

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

On 03/08/2016 07:43 PM, Walter Bender wrote:

5-72 TET with the default being 12. Not sure how to do the "solfege" mapping if we go this route.
Not following you here. What do you mean by "TET"?

from musicblocks.

walterbender avatar walterbender commented on June 11, 2024

TET == tone equal temperament

On Wed, Mar 9, 2016 at 7:23 AM, Devin Ulibarri [email protected]
wrote:

On 03/08/2016 07:43 PM, Walter Bender wrote:

5-72 TET with the default being 12. Not sure how to do the "solfege"
mapping if we go this route.
Not following you here. What do you mean by "TET"?


Reply to this email directly or view it on GitHub
https://github.com/walterbender/musicblocks/issues/28#issuecomment-194272236
.

Walter Bender
Sugar Labs
http://www.sugarlabs.org
http://www.sugarlabs.org

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

Okay, first time I have ever heard of "tone equal temperament".

I assume from the context that the number argument is the number to divide the octave? (i.e. "5" would split the octave evenly into five divisions)

This sounds like a good start.

As for "solfege mapping", I do not even think we need to map solfege onto these unique notes at all. We currently have a similar implementation for tuplets--we have capability for some pretty uncommon tuplets, but whether or not they are easily notated, musicblocks faithfully calculates the rhythm.

from musicblocks.

walterbender avatar walterbender commented on June 11, 2024

Right now we map do re me... to 7 half-tone steps on a 12 half-tone scale.
What do we do with a 5 step scale? A 24-step scale? etc.

On Wed, Mar 9, 2016 at 6:33 PM, Devin Ulibarri [email protected]
wrote:

Okay, first time I have ever heard of "tone equal temperament".

I assume from the context that the number argument is the number to divide
the octave? (i.e. "5" would split the octave evenly into five divisions)

This sounds like a good start.

As for "solfege mapping", I do not even think we need to map solfege onto
these unique notes at all. We currently have a similar implementation for
tuplets--we have capability for some pretty uncommon tuplets, but whether
or not they are easily notated, musicblocks faithfully calculates the
rhythm.


Reply to this email directly or view it on GitHub
https://github.com/walterbender/musicblocks/issues/28#issuecomment-194567119
.

Walter Bender
Sugar Labs
http://www.sugarlabs.org
http://www.sugarlabs.org

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

Right now we map do re me... to 7 half-tone steps on a 12 half-tone scale. What do we do with a 5 step scale? A 24-step scale? etc.

I am confused why we "must" do this because I am imagining the functionality to be transpose by ratio feature to be facilitated by a block clamp, so it happens after the fact--after someone has already designed a melody with do, re, mi.

Do Re Mi is a western scale idiom. It doesn't really make sense to extend it to other divisions of the octave.

from musicblocks.

pikurasa avatar pikurasa commented on June 11, 2024

I understand what you are saying now, @walterbender

What you are describing could not be implemented by a block or a clamp... it would have to be somewhere else in the UI where people can change more basic parameters.

(a little sloppy here because of time, however...) (Also, I am really sure I wrote this up in an email about 8-12 months ago--but the idea came too early then)

An interface (dare I say another "widget"?) where the scale (solfege) mapping is exposed to the user (prefabricated are the western solfege, indian solfege, and number inputs). User can create new "solfege mappings" (which create a corresponding block that inputs to the pitch block) and choose nominal values (like Do, Re, Mi, or whatever they want) that correspond to a frequency. The user would have different tools to choose frequencies, including a way to "divide the octave" as you mention above with TET. This feature could integrate with the pitch-staircase widget as well (output from the "pitch-staircase" could become a new "solfege mapping"--just two different ways of thinking about this.)

An alternative approach to this is output as frequency blocks, similar to how I have designed the Thai scale with current Music Blocks features (i.e. the software outputs /frequency in Hz/ blocks that the user can use for the scale as action blocks etc. [see my Thai scale and the song I transcribed -- no time to post now])

from musicblocks.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.