cbfishes
nxstmp
Contents1 Finding inspiration2 Constraints3 Here’s what it does4 Examples5 Does it work?6 Try it
Finding inspiration
Sometimes I feel so creative that I rush to get the music in my head out and into a recorder, a computer, or onto some paper. There have been many times I created an entire album of music in a week or less. Other times, trying to get inspiration to flow feels like pumping a dried-up well.
Lately has been those other times, and it’s been a struggle to get that “creative mode” switch to flip. Reading back through articles I’d saved on the subject (in my journal, of course), I saw one from a few years ago that tickled my fancy.
The title reads “How I recorded an album in an evening with a lunchbox modular and a python script”. Right off the bat, it checks a lot boxes for me: music creation done very quickly, modular synth, computers, coding, music from algorithms.
As I re-read Tom Whitwell’s adventure writing a simple python script to randomly (algorithmically?) generate a set of musical constraints, I decided this might be what I needed to get back into creative mode.
So during one of my daughter’s naps, I sat down and wrote my own version of Tom’s script. Like his, it’s in python – and I borrowed a function or two – but for the most part it’s a new piece of code. Like most of the code I write, it’s not very sophisticated, but it works. I’ve been tweaking it the past few days, adding features, and – yes, using it as a starting point for creating new music.
Constraints
I am especially inspired by limitations. When faced with a fairly well-stocked music studio and a generous sample library, I can be overwhelmed with choices, frozen in place. Looking back on my musical output, almost everything I do is created through limitation. “I want to create a funk album and use mostly physical instruments that I play, make it short, EP-length, with distortion and tape hiss,” or “I want to make an album (or series of 9 albums, so far) of holiday music played in very weird styles,” or “I want to make a hip-hop album, but the subject matter is fishing, and I am the rapper, and the samples should come from weird sources,” or “I want to make an album where each track is just a single color (via my synesthesia).”
Those are just some examples.
In grad school I studied film scoring, and my favorite part was getting new assignments with unusual instrumentation requirements, unusual style requirements, and other limitations. Like “Score this really uncomfortable love scene with one harp, three flutes, and sound effects.”
I eat that stuff up! That really gets my brain going. I always enjoy seeing how far I can get within the limitations. Sometimes I go beyond the artificial or prescribed limitations, but it’s a place to start.
This code does the same thing: it generates a composition assignment for me with weird limitations, and it really gets my creativity going.
Here’s what it does
The code contains a range of options – musical and otherwise – and when the script is run, the python interpreter (the thing that reads the code) chooses various options and presents them to the user as a “score.” Naturally I use the word “score” very, very loosely here. Here is a list of some things and choices the script generates:
Name of the piece, randomly generated from the English alphabet, between 5 and 15 characters long, including spaces
beats per minute (tempo)
beats per bar (time signature) or “no pulse”
the number of tracks to use to create this piece
the function of each track (melody/ambience/pad/harmony/rhythm/etc.)
a small piece of generated ascii art
one or more audio files from my sample collection to use in this new piece
a short rhythmic motif written in “graphical notation”, extremely open to interpretation
what instruments to use (I basically list everything in my studio and the script decides which ones I use)
what radio frequency to use if “radio” is one of the instruments selected
between 1 and 3 words, chosen from a word list that includes a wide variety of terms, phrases, places, and things, with a large focus on words that describe visual art
I run the code and a new text file is generated, and in this text file are basic instructions for creating a new piece of music.
Examples
Here’s an example:
[crayon-5b87170d0ce14472732490/]
…and here’s another:
[crayon-5b87170d0ce20883812385/]
Weird, right? But also mentally stimulating!
Each new generated piece is a puzzle to solve. Some are outright ridiculous, others show potential. Sometimes the name alone is inspiring. Some of my favorites so far are “Tocuxan Dos” and “Ipaqaho.”
Each little suggestion/requirement is an opportunity to get creative. What does the random song title make me think of? What does the random ascii art look like? What sort of music would those random words describe? What the hell does > O + sound like?
That’s up to the composer. This code doesn’t really compose music, even though I named the script cbcompose.py. Really it just assembles a collection of prompts and invites me to make some sense of it all and create something new.
Does it work?
Yes. I’m currently working on my third new track since I wrote the script. At this rate, I’ll have a new album in a week or so. I’m using techniques, instruments, and sounds that I probably would not have chosen myself, and the challenge of making them work together is invigorating. The music that I am creating based on these constraints is still my music, I just got some creative help from a little computer program.
Try it
I wrote this script to be specific to my own pool of choices, instruments, modular synth modules, etc. but it could easily be adapted to fit yours. I fill my code with comments so that anybody looking at it should be able to make sense of what everything is doing.
If you want to give it a shot, you can download it here: chrisbeckstrom.com/stream/wp-content/uploads/2018/08/cbco... or look at the code in its current state here. Once you download the file, called cbcompose.py, you most likely can run it in a terminal by typing python cbcompose.py (if you saved the file to your home folder). The internet is full of info on using python, so if you get stuck, the answer is a search a way! Of course I can also help too; if you’re interested, let me know!
Stay tuned for some of the audio results of this experiment.
---
(original: chrisbeckstrom.com/2018/08/29/limitations-creativity-a-py...)
nxstmp
Contents1 Finding inspiration2 Constraints3 Here’s what it does4 Examples5 Does it work?6 Try it
Finding inspiration
Sometimes I feel so creative that I rush to get the music in my head out and into a recorder, a computer, or onto some paper. There have been many times I created an entire album of music in a week or less. Other times, trying to get inspiration to flow feels like pumping a dried-up well.
Lately has been those other times, and it’s been a struggle to get that “creative mode” switch to flip. Reading back through articles I’d saved on the subject (in my journal, of course), I saw one from a few years ago that tickled my fancy.
The title reads “How I recorded an album in an evening with a lunchbox modular and a python script”. Right off the bat, it checks a lot boxes for me: music creation done very quickly, modular synth, computers, coding, music from algorithms.
As I re-read Tom Whitwell’s adventure writing a simple python script to randomly (algorithmically?) generate a set of musical constraints, I decided this might be what I needed to get back into creative mode.
So during one of my daughter’s naps, I sat down and wrote my own version of Tom’s script. Like his, it’s in python – and I borrowed a function or two – but for the most part it’s a new piece of code. Like most of the code I write, it’s not very sophisticated, but it works. I’ve been tweaking it the past few days, adding features, and – yes, using it as a starting point for creating new music.
Constraints
I am especially inspired by limitations. When faced with a fairly well-stocked music studio and a generous sample library, I can be overwhelmed with choices, frozen in place. Looking back on my musical output, almost everything I do is created through limitation. “I want to create a funk album and use mostly physical instruments that I play, make it short, EP-length, with distortion and tape hiss,” or “I want to make an album (or series of 9 albums, so far) of holiday music played in very weird styles,” or “I want to make a hip-hop album, but the subject matter is fishing, and I am the rapper, and the samples should come from weird sources,” or “I want to make an album where each track is just a single color (via my synesthesia).”
Those are just some examples.
In grad school I studied film scoring, and my favorite part was getting new assignments with unusual instrumentation requirements, unusual style requirements, and other limitations. Like “Score this really uncomfortable love scene with one harp, three flutes, and sound effects.”
I eat that stuff up! That really gets my brain going. I always enjoy seeing how far I can get within the limitations. Sometimes I go beyond the artificial or prescribed limitations, but it’s a place to start.
This code does the same thing: it generates a composition assignment for me with weird limitations, and it really gets my creativity going.
Here’s what it does
The code contains a range of options – musical and otherwise – and when the script is run, the python interpreter (the thing that reads the code) chooses various options and presents them to the user as a “score.” Naturally I use the word “score” very, very loosely here. Here is a list of some things and choices the script generates:
Name of the piece, randomly generated from the English alphabet, between 5 and 15 characters long, including spaces
beats per minute (tempo)
beats per bar (time signature) or “no pulse”
the number of tracks to use to create this piece
the function of each track (melody/ambience/pad/harmony/rhythm/etc.)
a small piece of generated ascii art
one or more audio files from my sample collection to use in this new piece
a short rhythmic motif written in “graphical notation”, extremely open to interpretation
what instruments to use (I basically list everything in my studio and the script decides which ones I use)
what radio frequency to use if “radio” is one of the instruments selected
between 1 and 3 words, chosen from a word list that includes a wide variety of terms, phrases, places, and things, with a large focus on words that describe visual art
I run the code and a new text file is generated, and in this text file are basic instructions for creating a new piece of music.
Examples
Here’s an example:
[crayon-5b87170d0ce14472732490/]
…and here’s another:
[crayon-5b87170d0ce20883812385/]
Weird, right? But also mentally stimulating!
Each new generated piece is a puzzle to solve. Some are outright ridiculous, others show potential. Sometimes the name alone is inspiring. Some of my favorites so far are “Tocuxan Dos” and “Ipaqaho.”
Each little suggestion/requirement is an opportunity to get creative. What does the random song title make me think of? What does the random ascii art look like? What sort of music would those random words describe? What the hell does > O + sound like?
That’s up to the composer. This code doesn’t really compose music, even though I named the script cbcompose.py. Really it just assembles a collection of prompts and invites me to make some sense of it all and create something new.
Does it work?
Yes. I’m currently working on my third new track since I wrote the script. At this rate, I’ll have a new album in a week or so. I’m using techniques, instruments, and sounds that I probably would not have chosen myself, and the challenge of making them work together is invigorating. The music that I am creating based on these constraints is still my music, I just got some creative help from a little computer program.
Try it
I wrote this script to be specific to my own pool of choices, instruments, modular synth modules, etc. but it could easily be adapted to fit yours. I fill my code with comments so that anybody looking at it should be able to make sense of what everything is doing.
If you want to give it a shot, you can download it here: chrisbeckstrom.com/stream/wp-content/uploads/2018/08/cbco... or look at the code in its current state here. Once you download the file, called cbcompose.py, you most likely can run it in a terminal by typing python cbcompose.py (if you saved the file to your home folder). The internet is full of info on using python, so if you get stuck, the answer is a search a way! Of course I can also help too; if you’re interested, let me know!
Stay tuned for some of the audio results of this experiment.
---
(original: chrisbeckstrom.com/2018/08/29/limitations-creativity-a-py...)