FOcused PRActice (https://fopra.live) is a timing tool to help you practice music (and other things) more effectively. It’s a session timer that lets you split your precious practice time up into three stages: Warmup, Practice, and Perform. You can read more about how to use it on the about page at https://fopra.live/#/about
I’m interested in developing educational tools to help people learn faster and more effectively so this is another small step in that direction.
Please use it and give me some feedback! Note: Best used with Google Chrome browser
This is also a prototype app to test a number of things I’ve been exploring in the rapid web application and PWA (Progressive Web App) development space. PWA’s are single page applications that can work both online and offline. You can also add the app to your mobile device homescreen just like a “normal” mobile app but without the friction of having to deploy it through an appstore as it’s a pure web application. You can find the “Add to Homescreen” option in your mobile browser settings.
Some other things I was also testing with this app were Gitlab’s CI (continuous integration) processes and SPA hosting via Netifly.com, complete with Https & CDN support.
Inside Music is a Google WebVR Experiment that lets you step inside a song, giving you a closer look at how music is made. The bonus is the music is spatialized as well so you get a completely different audio experience from a normal stereo mix.
Open the Song Visualizer in a new tab: https://sonicviz.gitlab.io/sonicviz-spatial-music/ You can move around using the WASD keys and mouse, just like a regular game controller mode. Note: Best used with Google Chrome browser with no other tabs open.
“Interaction Select a song from the menu. The stems of the song will appear in a circle around you, each represented by a sphere. In 360 Mode, tap the spheres to turn them on or off. In VR Mode, you can use your controller to toggle their state. On Google Cardboard, you will have a retical (a small circle in front of you eye) which can be used to turn the stems on and off.”
I thought it would be a good opportunity to pull apart and test it with a couple of my own songs:
There’s huge potential with spatial music to revolutionize music production and delivery, and we’re only just getting started. For some more info on this you can read my blog post on “Immersive Audio and Musical AI“.
There’s a bit of a process to go through, including configuring your development workflow and tools but in the end it’s a pretty cool way of getting inside the music. I also used it as an opportunity to test gitlab CI and page hosting.
Next step will be to extend it with some custom visualizations, refine the asset pipeline workflow. I’ve actually had a similar concept bouncing around to do in Unity3D so I’ll probably do that at some point.
Algorithmic Music with seeded HMM and Stochastic Noise
A demonstration of a prototype generative music system using a variety of techniques from seeded HMM to stochastic noise.
The prototype has two generative music systems:
A generative controller that uses a hidden markov model to generate new compositions from a seed music database
A random music generator using a variety of algorithms from a windchime emulator to stochastic noise.
The system is built with Java, and uses an open source synth ZynAddSubFX as the sound source. It was written in 2006 based on research work I did for my Music Masters degree in 2003, and I’m currently porting parts of it to C#/Unity & HTML5/WebAudio.
In 2007 I produced 2 relaxation music albums each with 4 x 15 minute tracks using this system, mixed with ambient environment nature sounds from another generative system. Currently these are offline but I hope to redistribute them again sometime. Here is a track from Album #1:
Generative music systems are a rich field of exploration, and the methods presented here are well known. I have extended them a little more with some added features such as:
Object database containing seed compositions with metadata
More parameters for randomization and variability
More experimentation with noise generation algorithms to drive music generation
Potential uses of such as system are varied:
Affective computing – detected user emotions to drive system feedback via music mood matching
Art and music therapy
Some screen shots are below, followed by a video that briefly explains both systems.
Seeded HMM Music Generator
Stochastic Random music generator
Check out the video for a more in depth explanation.