Valid HTML 4.0! Valid CSS!

How To Write a Rap / House / Disco Song

By Brendan Jones

LYRICS:

Simply take one word or phrase from each of the three columns below, in order to make one line. Repeat randomly four times. Repeat process again twice to make chorus. Repeat last line 17 times. Don't worry if they don't make sense.

Column 1Column 2Column 3
Move itTriple BeatThe City Streets
Get UpBody HeatYou'll be Humpin
Pump It UpFeel the BeatBefore the Night is Over
Get DownGet AroundShake your Meat
Shake itThe Joint Is JumpinBustin Loose
Pump the JamFeet are StompinDisco Heat

BACKBEAT:

Program a drum machine in never ending 4/4 time. Add occasional snare.

BODY:

Add monotonous bass in one key. Overlay with puncy sounding synth. Get previously unknown singer to talk the lyrics so as not to test the range of the vocal chords.

PRODUCTION:

Put above ingredients together on master tape. Press discs. Give the label a suitably techno-funk sounding name, like "Mixmastermeatbeaters". Sell 5 million copies to unsuspecting public. Win MTV Award.

The sad thing is the public will think you've been creative...

Better still, this process can be automated via a lyric C program, a random synth base and music generator, and the discs mastered directly by computer control.

This relieves the composer of decisions regarding which phrases and notes to use in production. By pressing the <RET> key, more than 100 CD's a week can be generated.

This I have done, below is a sample composition guaranteed to make megabucks:

Get Down

by Mixmastermeatbeaters

Pump the Jam Get Around Disco Heat
Pump It Up The Joint Is Jumpin Shake your Meat
Get Up Get Around You'll be Humpin
Get Down Feel the Beat Shake your Meat

Chorus:
Shake it Feel the Beat Shake your Meat
Shake it Get Around You'll be Humpin

Pump the Jam Triple Beat The City Streets
Pump the Jam The Joint Is Jumpin Disco Heat
Get Up Feel the Beat You'll be Humpin
Get Up Body Heat The City Streets

Chorus:
Shake it Feel the Beat Shake your Meat
Shake it Get Around You'll be Humpin

Get Up Feet are Stompin The City Streets
Get Up Feet are Stompin The City Streets
Get Up Feet are Stompin The City Streets
Get Up Feet are Stompin The City Streets
Get Up Feet are Stompin The City Streets
(repeat)

Note that this is indistinguishable from the human generated version.

For those who wish to compose themselves, the program appears in the next posting. I hope for a cut in the royalties :-)

Generate another hit single!.


#include <stdio.h>
#include <time.h>
#include <ctype.h>

static char     col1[6][30] = {
        "Move it",
        "Get up",
        "Pump it up",
        "Get down",
        "Shake it",
        "Pump the jam"
};

static char     col2[6][30] = {
        " to triple beat ",
        " get body heat ",
        " feel the beat ",
        " get around ",
        " the joint is jumpin' ",
        " feet are stompin' "
};

static char     col3[6][30] = {
        "in the city streets\n",
        "you'll be humpin'\n",
        "'til the night is over\n",
        "shake your meat\n",
        "I'm bustin loose\n",
        "with disco heat\n"
};

main()
{
        int     chor[2][3];
        int     i,j,getpid();
        long    now;

/* Generate random seed */

        now = time(&now) / rand();
        srand(getpid() + (int)((now >> 16) + now + time(&now)));

/* Generate chorus and title */

    for (i = 0; i < 2; i++)
            for (j = 0; j < 3; j++)
                    chor[i][j] = rand() % 6;
    printf ("\n\"%s\" by Mixmastermeatbeaters\n\n",col1[(chor[0][0])]);

/* Print out song */

        verse();
        chorus(chor);
        verse();
        chorus(chor);
        lastline(chor);
        printf("-----\n");
}

chorus(chor)
int     chor[2][3];
{
        int     i;

        printf("\n(chorus)\n");
        for (i = 0; i < 2; i++) {
                printf("%s",col1[(chor[i][0])]);
                printf("%s",col2[(chor[i][1])]);
                printf("%s",col3[(chor[i][2])]);
        }
        printf("\n");
}

verse()
{
        int     i;

        for (i = 0; i < 4; i++) {
                printf("%s",col1[rand()%6]);
                printf("%s",col2[rand()%6]);
                printf("%s",col3[rand()%6]);
        }
}

lastline(chor)
int     chor[2][3];
{
        int     i;

        for (i = 0; i < 17; i++) {
                printf("%s",col1[chor[1][0]]);
                printf("%s",col2[chor[1][1]]);
                printf("%s",col3[chor[1][2]]);
        }
        printf("\n");
}


Auswege: Humor im Internet, meine Homepage.
Links: Humor on the Internet, my homepage.


Thomas Bätzler, Thomas@Baetzler.de
$Id$