Ernest Micklei's Blog

things I create and problems I solve, to remember and share

Drum Pattern

This script is an example that uses the Melrōse language to create your own drum beats. Line by line, I will explain how it is composed.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
bpm(85)

// https://usermanuals.finalemusic.com/SongWriter2012Win/Content/PercussionMaps.htm

open = midi(16,46,60)
close = midi(16,42,60)
clap = midi(16,39,60)
kick = midi(16,36,80)

d1 = notemap(' 3 10 11',open)
d2 = notemap('4 12',close)
d3 = notemap('5 13',clap)
d4 = notemap('1 2 4 7 9 10 12 15',kick)
d5 = notemap('16',note('16=')) // 1/16 rest at the end to make 16 notes in the set
set = merge(d1,d2,d3,d4,d5)
lp_set = loop(channel(10, set)) // channel 10 is the general midi for a drumkit

🎶 Play

Iterating over patterns

1
2
3
4
5
6
7
8
9
bpm(90)
s = sequence('c e g b')
i = iterator(
    '(1 2) (3 4)',
    '(1 3) (2 4)', 
    '1 (2 3) 4', 
    '(1 4) (2 3)')
m = resequence(i,s)
l = loop(m,next(i))
🎶 Play

Using resequence you can compose a new sequence with index-based entries. The first compostion played by the loop is (C E) (G B).

DAW - Apple Logic Pro X

logicpro

Logic Pro is a product of Apple Inc.

Goal

Logic Pro is a professional Digital Audio Workstation (DAW) available for Apple Mac OSX. Melrōse can communicate with Logic Pro by sending MIDI messages. Logic Pro has a rich set of sounds and instruments to play MIDI notes. In addition, Logic Pro is able to play multiple MIDI channels simultaneously which can be programmed individualy by melrōse.

This article describes the steps to get Melrōse working with Logic Pro such that you can play your melody per-channel.

DAW - Apple Garageband

garageband

GarageBand is a registered trademark of Apple Inc.

Goal

Garageband is a simple Digital Audio Workstation (DAW) that comes with the standard installation of Apple Mac OSX on devices such as MacBook or MacPro. Melrōse can communicate with GarageaBand by exchanging MIDI messages. GarageBand has a rich set of sounds and instruments to play MIDI notes.

This article describes the steps to get Melrōse working with GarageBand such that you can play your melodies.

Introducing gmig, infrastructure as code for GCP

Infrastructure automation

The Google Cloud Platform (GCP) can provide the IT infrastructure you need to run your own applications or services. In addition, the platform also provides many products and services that can be used to build your complete IT landscape. Setting up infrastructure no longer includes provisioning hardware, patching operating systems and cable wiring up network components.

Instead, you now manage resources such as virtual machines, accounts, datastore, networks, enable APIs and setting permissions. Basically, given a GCP project, you can have full control of managing such resources using either the Console, the gcloud tool or even program against their published API using a Google supported library.

GCP Next 2016 Demo

On March 23, Q42 and Google Amsterdam organized an event to watch the keynote from the GCP Next 2016 conference held in San Fransico.

As the Ubanita platform is hosted on the Google Cloud Platform, we were given the opportunity by Q42 to talk about our platform as part of a lightning talk. Ofourse, we had prepared a demo game and the audience was invited to join a simple multiplayer game.

Android Animated Chain

Android Animated Chain

Hiding complexity of Android animators when chaining dependencies.

Thanks to our guest software artist: [Jamie Craane](http://jcraane.blogspot.nl/)