HN user

naltroc

103 karma
Posts9
Comments53
View on HN

Hello! My name is Cortland Mahoney.

I'm a music researcher, software engineer, and producer. I made Story Jam.

This doc is intended to inform you of not just the product, but the centuries of work that have led up to its implementation.

Are you tired of the barriers in traditional music composition? Story Jam is here to break them down.

Designed for anyone with creative ideas — from poets to film directors — our tool offers a new way to create and edit chord progressions, powered by cutting-edge music theory.

*The product*

https://storyjam.tenpens.ink

v1.0.0

The UI is inspired by https://neal.fun. Neal has fun, simple, addictive, and intuitive designs and I hope Story Jam has that too.

*Who Story Jam is for: Storytellers*

Story Jam makes music composition accessible and meaningful to anybody, with or without musical training.

It is designed for those who crave musical control but struggle with traditional composition methods. This includes film directors, slam poets, and self-taught musicians.

Story Jam is not music production software. Do not expect fancy sounds or synthesizers. It's purely a composition tool, designed to spark your creative process.

*Try it out!*

The demo is free on the homepage, no login required!

This is an MVP, so it has an "introductory" feature set. Feature requests welcome; help me build the product you want.

*How it was made*

This service is built with:

- Monic Theory

- Yew (Rust) frontend

- TypeScript/Express webserver

- Postgres database

- Hosting by https://render.com

- Stripe API

- SendGrid (email) API

- Dygma Defy keyboard

- Love

*The chord progression suggestion logic*

This service is built on a novel new music theory I have developed called Monic Theory.

Monic Theory is a rigorous proof for music. Not "Western music": music.

Monic Theory describes the tonal space of any conventional music on earth (except noise music. For that just use `Math.random()`). It describes the static and transient function of chords, instantaneously and differentially over time. This model enables empirical measurement of chords and the relationship between chords.

(hint: It is nothing you have seen in Xenharmonic Alliance. This is a new approach I have been developing over the past 10 years.)

Therefore, Monic Theory enables us to describe (or "predict" if you will) a chord progression to invoke a certain feeling.

*Music Composition*

Three people who helped set up the environment for Monic Theory are composers Paul Hindemith and Harry Partch , and music theorist Heinrich Schenker.

These folks independently contributed new ideas to music composition and analysis. All of these people lived without access to rapid computation. This is critical for the Partch case, as he computed many tables of frequencies by hand to support his compositional technique.

Partch recognized the human-math-music relation in "Genesis of a Music." He includes in this text some samples of his hand-computed tables of frequency values of overtones and (importantly) undertones which support the basis is technique.

Partch's techniques were so far-fetched that he had to construct new instruments to perform his scores. Similarly, I had to build a digital synthesizer to render the output of Monic Theory. (See: https://github.com/ckmahoney/raudio).

*About me*

I was a working composer and violinist from 2007 until 2017, and I have been a software engineer for the past 7.5 years.

*Livecoding*

I was a volunteer organizer for Livecode.NYC, an NYC livecode community; and am the volunteer creator of Data Dancers, Atlanta's livecode community. I am passionate about algorithmic art and have provided about a dozen workshops over four years on the topic.

https://ckmahoney.github.io/portfolio/posts/livecoding/

thank you for reading.

May the flow of Spices be with you :) naltroc

The request is valid; you just need the right tools for the job.

Story Jam lets you design chord progressions without needing to know about music theory, instead offering intuitive terms like "lightness", "darkness", "drifting" and "roaming". They mean about what you think they mean.

https://storyjam.tenpens.ink

I'm planning a "Show HN" post for tomorrow morning EST with more details. But you can get the sneak peek here :)

Is it really consent for those artists signing to labels when only three companies have total control of all music consumption and production for the mass market?

This premise is false. I have made plenty of money busking on the street, for example. Or selling audio recordings at shows.

{o be clear, artists absolutely have a right to benefit from reproduction of their recordings.

This is correct. Artists benefit when you pay them for the right to reproduce. When you don't (like what you are doing), you get sued. Here's a YouTube video covering 9 examples:

https://www.youtube.com/watch?v=IIVSt8Y1zeQ

I just don't think anyone should have rights to the knowledge built into those creations since in most cases it wasn't theirs to begin with

What?

It is true that your ears do not perceive the higher frequencies in the same way (through pitch detection). However, if you put on a headset and apply only frequencies above 16kHz, you will distinctly notice a change in the pressure in your headset's ear cups.

Good point about the savings. I was using uncompressed format as the reference, but it is indeed unlikely that YouTube serves out lossless audio.

I also should have used the word "delivery" instead of data storage. Those are two separate problems: where the original asset is stored (and how, if they don't store raw originals), and also how the asset is delivered over the web.

When I use an FFT to view the spectrogram on YouTube music videos, it is very obvious that YouTube applies a lowpass filter at 16kHz on all videos (true since 2023 at least).

While this does retain the majority of useful information, it explains why the youtube version of your song feels just a little more 'lifeless' than the high quality version you have elsewhere.

The original recording contains high frequency detail that got lost. Your human body uses that high frequency detail to orient itself in space with respect to sound sources (like reverb, reflections, or ambient sounds).

It is interesting from a data storage point of view because this could result in massive savings. Consider audio is recorded at 44.1khz or 48kHz but is actually stored at 32kHz. They have effectively saved 25% in audio file storage at marginal customer experience.

Learning Synths 2 years ago

unpopular hot take:

subtractive synthesis isn't synthesis. It's a transformation.

but also, like, it only runs in certain conditions it sounds like here.

Can this line of code be always running? What if the app launches itself as a background process?

For a feature I just learned about so many questions, but it's Apple in their store so hedges betting it isn't as dangerous as it sounds. But perks your ears up

as much as I circumvent paywalls myself, it does feel like overkill to setup software to do it always. Sites spend money to produce quality content.

Somewhat related comparison, Is a human choosing to do this theft really better than a neural network scraping content for its own purposes?

Ring Modulation adds a constant frequency above and below the source frequency, producing non-integer relationships between the input signal and the new signal.

That's why it sounds weird, because both of the new tones will almost never be harmonically related to the input signal.

that delightful "abyss" is really just noise. as in white/pink/blue noise.

Signals tend to sound "better" (richer harmonic content) when they have fuzz added. Convolution reverb is a great example of how mixing a noise sample into any source signal increases its apparent depth or richness.

Some saturators do the same thing.

Others distort the signal by boosting selected harmonics (making the waveform more square-like or more sawtooth-like for example, which is not the same as noise and has a different sound).

Clipping the signal by requesting amplitudes beyond the available range is another way to add "cruch" (noise) to a signal.

The actual implementation will vary per device but overall we like our sounds cut with a bit of noise.

Yes!

We don't even have to listen to the audio examples to know that yes, ET chords produce beat frequencies. This is an artifact of the non-integer relationships created in ET chords that don't exist in the JI examples.

A piano will produce similar beat frequencies when playing a perfect fifth. Some ears are more sensitive to hearing it than others.

Here are three additional references on applied Just Intonation.

The first book is abstracted away from composition and provides a more general description of tuning systems.

The next two are composition focused, explaining how tuning system is an option for musical works.

1) The book "How Equal Temperament Ruined Harmony" provides excellent historical context on why ET was a great solution and how we kind of got stuck with it.

While it could be read by anybody, having a bit of musical knowledge OR physics of acoustics knowledge may benefit you.

https://www.amazon.com/Equal-Temperament-Ruined-Harmony-Shou...

There are also two composers who recognize ET as a constraint (as opposed to the "the only option").

2) Harry Partch built many of his own instruments to circumvent issues from 12ET and composed music just for them. He describes his conceptualizations of JI in "Genesis Of A Music":

https://www.amazon.com/Genesis-Music-Account-Creative-Fulfil...

3) Paul Hindemtith also has some opinions on the matter, though both Partch and I disagree with his points of view. Nonetheless he has some at-the-time innovating ideas, some of which are valid and others of which may not have aged well. You can read about them in "The Craft of Musical Composition"

https://www.amazon.com/Craft-Musical-Composition-Theoretical...

Yes, this should be noted.

Naturally JI instruments include any instrument which has a continuous frequency domain, like trombone, fretless stringed instruments, and human voice.

Instruments with keys or frets may be "bendable". However, the direction and quantity of bend varies with with each tone it is paired with, making this incredibly impractical.

Found out about wheat based plastic when I bought some reusable food storage containers. This was not clearly labelled but instead a smalltext on the back of the package.

As a person with an extreme gluten allergy, I freaked out and had to return it before even trying.

If any plastics manufacturers see this, and you use barley, wheat, or any other gluten containing material (like rye), please also include a "Certified Gluten Free" seal when your processing plant has been verified to be safe. Otherwise I can't use your product.

(united states family, born and raised)

I don't understand the desire for a large bedroom. My parents use the largest "bedroom" in their house to hold their bed.

I use the smallest "bedroom" in my house to hold my bed, because all I do in there is sleep.

The larger "bedrooms" become office and studio spaces, since I spend remarkably more waking hours in these locations compared to where I sleep.

super cool. I love to think of the spectrogram as a blank canvas, where you mix spectral masks to produce interesting synth sounds.

This approach takes the "canvas" part more literally producing recognizable objects where we more often see fuzzy or geometric data.

like the article mentions, It is highly constrained by the overlap of likeliness of the subject to have a sound that can be reproduced with a spectrogram with features like the object's timbre.

It works on the dog very well because a dog's bark is already closer to "noise" than "instrument" or "voice", and you can fit that noise to any octave that is convenient to the image.

Notice on the horse how the "neigh" sound wiggles up and down, and thus there are features of the horse that also have wiggling.

The castle uses "bell" tones, a great choice because these types of tones prefer non-integer values for harmonics (which comes off as horizontal brick lines in the castle walls). Extra convenient because you can gen new harmonics to get a new wall.

The garden views largely use birdsounds. Remember what we said about dog sound being translatable noise, and horse having a wiggle? The bird sound applies both of those techniques, and its sound is represented by the petals or leafs we see.

Since we perceive sound at a logarithmic scale, it is possible to show a visual representation of the object and also not being able to perceive it in the final mix! Our ears are most sensitive to the most prominent frequencies, which it looks like here are the darkest pixels. So the lighter pixels can provide some kind of shaping (like edges or boundaries) while the darker pixels provide the sound we perceive.

cortland [dot] mahoney [at] gmail [dot] com

The constant feeling of small wins keeps you going

When you finally take 1 day a month off and look down from 10,000 feet up

The reality of how things are going is gloomy

It might also help if you can mentally spin things to be more boomy. Optimists in the house