electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
go to the radio page Live at electro-music.com radio 1 Please visit the chat
poster
 Forum index » DIY Hardware and Software » ChucK programming language
Primal Sounds
Post new topic   Reply to topic Moderators: Kassen
Page 1 of 1 [22 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 24, 2008 5:16 am    Post subject: Primal Sounds
Subject description: Calling for ChucKists to create primal sounds...
Reply with quote  Mark this post and the followings unread

Hi, it has been posted on a guitar forum that the guitar elicits primal responses from our brains, making sounds that trick us into emotional states like anger, power, lust, accomplishment and the like. It somehow brings out feelings.

I would like to develop a ChucK processor that takes incoming guitar playing and makes it sound more primal in some way. I am encouraged by the recent post "Kijjaz's Thunder" in which we create a thunder sound in response to the guitar playing. Would a primal sound generator make the noise of a saber-toothed tiger when notes are played?

Obviously for such a task I will do the programming myself, but I need ideas, experimental code snippets, and perhaps some one-liners. From your own experience, what about music draws out the beast within? Can you make code that sounds like a tiger growling, for example?

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Wed Sep 24, 2008 12:55 pm    Post subject: Reply with quote  Mark this post and the followings unread

There are many techniques for getting that kind of response. You can use high BPM's; BPM affects heart-rate in the listener and heart-rate affects how we think. Certain frequencies corresponding to brain waves (say around 8Hz) can be put in music by using modulation or interference and supposedly those affect brain waves and so can affect moods or patterns of thought.

Other frequencies and timbres may remind us of sounds like distressed birds or babies, those can evoke a "flight or flee" response as well, or at the very least become stressful which is basically a one-way ticket to the more animalistic aspects to our being.

There are far too many angles to this to casually go into. One friendly warning; this is a very interesting field but if you start experimenting you'll be experimenting on yourself and your own brain. Do take breaks or perhaps alternate with experimenting with sounds meant to lead to relaxation. There is of course no such thing as a sound that will instantly make you howl at the moon but toying with these kinds of things for a few hours can be quite disorienting.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
.dupion.



Joined: Jun 15, 2008
Posts: 2
Location: UK

PostPosted: Wed Sep 24, 2008 2:34 pm    Post subject: Reply with quote  Mark this post and the followings unread

when i think primal i think simple dirty bass. detuned square waves playing simple, repetetive, minor key melodies.

maybe you could pitch shift guitar notes down and add some digital distortion and sustain?

a dubstep guitar station!

edit: not sure if this fits with your idea of primal in this case but i always think of pure headnod dancing as a primal thing and this kind of sound and music for me evokes this kind of response. as far as ChucK tigers go i'll have to get back to you Smile
Back to top
View user's profile Send private message
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 24, 2008 6:24 pm    Post subject: Reply with quote  Mark this post and the followings unread

Very interesting responses, thanks. Combining two of the ideas, I notice that some of my more primal iTunes songs have a high BPM of either a loud bass guitar or a six-string strummed on the low notes.

I also listened and heard a sort of squawking noise not unlike an alarmed or struggling bird in one song.

The song that's got me on this kick right now is "Thunder Kiss '65" by White Zombie. You can get it from iTunes for 99 cents if you want to hear it. It has high BPM of a low frequency guitar signal and really intense vocals.

.dupion., it is interesting that you mention that particular chain of effects as I have recently coded them in ChucK guitar processing programs. All I would have to do is combine a pitch shifter with a sustain AGC and some X/(0.1+|X|) distortion. Hmm, may as well add some thunder too. Maybe I can figure out some way to include a guitar-to-drums effect as well.

Yes, very interesting, I may work on this tonight or tomorrow. Thanks for the comments (and the warning, Kassen).

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Wed Sep 24, 2008 10:53 pm    Post subject: Reply with quote  Mark this post and the followings unread

I found this link:

http://www.obiwannabe.co.uk/tutorials/html/tutorial_roar.html

in which someone presents a tiger growling audio model in another audio program. I couldn't quite reproduce the results, but it's a good reference at least.

So then I coded up the following algorithm on top of the existing thunderstorm program:

Code:
adc => sustain => bass pitch shift => distortion => dac


And it sounds ok. The attached audio file has some of my clumsy beginner guitar playing as processed by the attached source code.

I feel that the thunder needs more variability of some sort, perhaps simply attenuation as it seems to be reaching the limits of the SinOsc overdrive even for gently played notes. Also it needs a tiger growl of some sort. Oh well, it is what it is. Comments welcome.


GMS_Primal2.mp3
 Description:
Primal Guitar Effect Demo

Download
 Filename:  GMS_Primal2.mp3
 Filesize:  637.96 KB
 Downloaded:  1169 Time(s)


Primal2.ck
 Description:
ChucK Source Code for Primal Guitar Effect

Download
 Filename:  Primal2.ck
 Filesize:  5.07 KB
 Downloaded:  555 Time(s)


_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
kijjaz



Joined: Sep 20, 2004
Posts: 765
Location: bangkok, thailand
Audio files: 4

PostPosted: Sat Sep 27, 2008 4:03 pm    Post subject: Reply with quote  Mark this post and the followings unread

I've got one nice (quite peaceful, though) guitar effect.
The level of Primalness is up to you to play on the guitar also hahaahah
It's quite wonderful to listen to though.
I think it sounds like something from the 70's.

Code:
/*
Primal Psychedelic Guitar Effect version 0.1 (testing)
for ChucK programming language

Copyright 2008 Kijjasak Triyanond (kijjaz@yahoo.com)

 This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

adc.chan(0) => Dyno comp => PRCRev r => Chorus c1 => SinOsc s1 => Chorus c2 => SinOsc s2 => dac;
comp => LPF low => s2;
comp => BPF high => s2;
comp.compress();

.1 => comp.thresh;
.4 => c1.mix => c2.mix;
.75 => c1.gain => c2.gain;
1 => s1.sync => s2.sync;
low.set(220, 4);
high.set(6000, 1);
10 => high.gain;
day => now;


Oh this one makes good use of tremolo.
Code:
/*
Evolving Tremolo Reverb Guitar Effect version 0.1 (testing)
for ChucK programming language

Copyright 2008 Kijjasak Triyanond (kijjaz@yahoo.com)

 This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

adc.chan(0) => HalfRect rect => Gain g => g => Gain g_g => SinOsc s => Gain AM => SinOsc od => dac;
adc.chan(0) => NRev r => AM;
3 => AM.op;
1 => od.sync;
10::samp / second => g_g.gain;
day => now;
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sat Sep 27, 2008 4:51 pm    Post subject: Reply with quote  Mark this post and the followings unread

Kijjaz strikes again! I tried them both and they are truly awesome! Great guitar effects, Kijjaz! I have added them to my primal sounds collection under your nickname. Well done!
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
kijjaz



Joined: Sep 20, 2004
Posts: 765
Location: bangkok, thailand
Audio files: 4

PostPosted: Sat Sep 27, 2008 4:54 pm    Post subject: Reply with quote  Mark this post and the followings unread

Inventor: Thanks! I've just been playing around with those patches and recorded into Ardour and mastered with Jamin (on Ubuntu Linux)
I haven't had much fun like this for quite some time hahha.
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
kijjaz



Joined: Sep 20, 2004
Posts: 765
Location: bangkok, thailand
Audio files: 4

PostPosted: Sat Sep 27, 2008 5:17 pm    Post subject: Reply with quote  Mark this post and the followings unread

Here is not a violence thing..
but is so trancy for me.
I think it would fit in this category.

Code:
/*
Trancy Ambient Effect version 0.1 (testing)
for ChucK programming language

Copyright 2008 Kijjasak Triyanond (kijjaz@yahoo.com)

 This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/

// PARAMETER
10 => int N; // number of delay lines to create
2000.0 => float MaxDelayMS;

DelayA d[N]; // create N numbers of all-pass delay lines
adc => SinOsc od => d[0]; // connect adc to the first delay line
1 => od.sync; // and use sine overdrive too.

// initialize each delay
for(int i; i < N; i++)
{
    MaxDelayMS::ms => d[i].max;
}

// connect each delay line to all the ones that has higher index
for(1 => int i; i < N; i++) for(0 => int j; j < i; j++)
{
    d[j] => d[i];
}

d[N-1] => Dyno limiter => LPF masterF => dac; // connect last delay line to limiter to dac;

// set limiter
limiter.limit();
.8 => limiter.thresh;
100000 => limiter.ratio;
0::ms => limiter.attackTime;
50::ms => limiter.releaseTime;
// set master low-pass filter
masterF.set(13000, 1);

1.0/N => d[N-1].gain; // scale output;

// randomize delay time forever
while(true)
{
    Std.rand2f(0, MaxDelayMS)::ms => d[Std.rand2(0, N-1)].delay;
    100::ms => now;
}
Back to top
View user's profile Send private message Send e-mail Visit poster's website Yahoo Messenger MSN Messenger
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sat Sep 27, 2008 6:55 pm    Post subject: Reply with quote  Mark this post and the followings unread

Kijjaz, the trance is way out there! I liked the first two better, but trance is good also. I have a fun challenge for you and I to explore, or anyone else for that matter. It goes like this:

I am building a circuit for my guitar to be an on-board effects box, and I would like to prototype it in ChucK. Let's make it do crazy kijjazian sounds! I already have designed, constructed, and tested a Theremin that normally runs at 25 kHz, and goes down to 15 kHz or so depending on how close you wave your hand over its antenna. Good start for a guitar effect, right? Wave your hand over a box on the guitar and it makes a square wave vary in frequency.

Now I have just found in my chip collection a set of four MN3209 Bucket Brigade Devices (BBD's) which are really old-fashioned delay lines. They just happen to work with clock signals in the range of 15 kHz to 25 kHz, so magically the Theremin can drive the delay line chips (don't you just love it when a thing works out like that).

This range of [15 to 25] kHz produces a delay of about 4 ms down to 2.5 ms, so there is not all that huge of a time difference but enough to be useful. Can we use one or more of these chips to create a really cool sounding effect?

It would be best to actually model the clocks and make the delay lines vary in response to the clocking, but that isn't necessary, we could just use a phasor with a shred that adjusts the delays according to the phasor value. I have attached the chip's datasheet for reference.

I will begin coding up my test now, and if you would accept this challenge then we can compare programs and I will physically construct the best one. I hope to use just one or two chips so I have spares, but we can use all four if you like. I will begin coding this up now.

Let's make noise for peace!


MN3209.pdf
 Description:
MN3209 BBD Datasheet

Download
 Filename:  MN3209.pdf
 Filesize:  308.26 KB
 Downloaded:  729 Time(s)


_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sat Sep 27, 2008 7:02 pm    Post subject: Reply with quote  Mark this post and the followings unread

Correction: The delay is nominally 5 ms and it goes up to 8.5 ms when you move your hand over the Theremin. That should be a more workable range of delays. I can adjust the dynamic range by tweaking the Theremin if that becomes necessary or desirable. Fun stuff!
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sat Sep 27, 2008 7:34 pm    Post subject: Reply with quote  Mark this post and the followings unread

Here is the code for my first attempt, it sounds really cool even with just one BBD!

Code:
// Bucket Brigade Device Test Program
// Copyright 2008 Les Hall
// This software is protected by the GNU General Public License


// Parameters
1 => int num_BBDs;  // number of Bucket Brigade Devices
0.9 => float gain;  // gain of difference amplifiers
10*1000 => float f_near;  // near frequency of Theremin
25*1000 => float f_far;  // far frequency of Theremin


// Variables
dur delta_T;  // time delay
dur T_near;  // near delay
dur T_far;  // far delay


// The Patch
Gain diff_amp[num_BBDs];
DelayA BBD[num_BBDs];
adc => diff_amp[0];
for (int i; i<num_BBDs> BBD[i] => diff_amp[i];
}
diff_amp[num_BBDs-1] => dac;
SinOsc hand_waving => Gain sum => blackhole;
Step step => sum;

// Patch Parameters
1 => adc.gain;
for (int i; i<num_BBDs> BBD[i].max;  // from datasheet
    2 => diff_amp[i].op;  // subtractor
    gain => diff_amp[i].gain;  // set the gain
}
1 => hand_waving.freq;
0.5 => hand_waving.gain;
0.5 => step.next;



// time loop
(128 / f_near)::second => T_near;
(128 / f_far)::second => T_far;
while (true) {
    T_far + (T_near - T_far) * hand_waving.last() => delta_T;
    for (int i; i<num_BBDs> BBD[i].delay;
    }
    0.1::ms => now;
}



BBD1.ck
 Description:
First attempt at Theremin circuit simulation

Download
 Filename:  BBD1.ck
 Filesize:  1.2 KB
 Downloaded:  507 Time(s)


_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sat Sep 27, 2008 8:28 pm    Post subject: Reply with quote  Mark this post and the followings unread

OOPS, that one didn't work for number of BBDs > 1, this one does and it has some other minor features.


BBD2.ck
 Description:
Slightly Improved Version

Download
 Filename:  BBD2.ck
 Filesize:  1.25 KB
 Downloaded:  493 Time(s)


_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sun Sep 28, 2008 11:00 am    Post subject: Reply with quote  Mark this post and the followings unread

Guess what? I stayed up late and constructed a prototype of it. It works too, but it has a lot of switching noise. I need to move it to a bigger breadboard and add some filters, that should help. It was such a sense of accomplishment to prototype out a somewhat complex and interesting thing like that in software and then in hardware and have it actually work.
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
dewdrop_world



Joined: Aug 28, 2006
Posts: 858
Location: Guangzhou, China
Audio files: 4

PostPosted: Sun Sep 28, 2008 2:22 pm    Post subject: Reply with quote  Mark this post and the followings unread

Why does it seem that people mean negative states of mind when using the word "primal"?

James

_________________
ddw online: http://www.dewdrop-world.net
sc3 online: http://supercollider.sourceforge.net
Back to top
View user's profile Send private message Visit poster's website AIM Address
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Sun Sep 28, 2008 2:44 pm    Post subject: Reply with quote  Mark this post and the followings unread

dewdrop_world wrote:
Why does it seem that people mean negative states of mind when using the word "primal"?

James


I noticed that. When I chose the title I was thinking of a feeling of power, like after a successful hunt or a warrior's victory. Primal could be joy or lust or greed or a feeling of community. It means a core, fundamental emotion. Not just violence. Maybe it's the way I phrased something when I wrote the post?

_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Sun Sep 28, 2008 5:34 pm    Post subject: Reply with quote  Mark this post and the followings unread

dewdrop_world wrote:
Why does it seem that people mean negative states of mind when using the word "primal"?


that's a good question. I don't, at least I don't see more negative connotations then with the word "cerebral".

It depends on what you would call a "negative state of mind". As I see "primal" it refers to the question of "fight or flee (or fuck, if you wish)"; the reactions dealt with impulsively by the part of our brain that we share with reptiles (meaning we can also deal with those topics on a higher level if we have the time or the need).

I don't think that's "negative" at all, at times our survival depends on it.

These can well be seen as "negative" because when we consciously notice them (especially in social situations) they tend to be quite inappropriate... but still; I quite like having a "fight or flee" reaction when crossing the street (and typically ending up with fleeing as cars and buses are larger then I am). I doubt any of use would be here without these.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Antimon



Joined: Jan 18, 2005
Posts: 4145
Location: Sweden
Audio files: 371
G2 patch files: 100

PostPosted: Mon Sep 29, 2008 7:22 am    Post subject: Reply with quote  Mark this post and the followings unread

It's curious how "primal" lead people to think about fight/flee (= stress), since a lot of people (especially in western society) are exposed to much longer periods of stress than primeval humans running away from tigers. I'd thinking sleeping was a more primal thing. sleeping

/Stefan

_________________
Antimon's Window
@soundcloud @Flattr home - you can't explain music
Back to top
View user's profile Send private message Visit poster's website
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Mon Sep 29, 2008 8:23 am    Post subject: Reply with quote  Mark this post and the followings unread

Probably, yes... but I'm not sure I'd count sleep as a emotion :¬).

While stress is high I'm not sure the stress from the constant stream of information is the same as the stress from life-treating situations. for example; in the modern West dying of starvation is quite rare (I think more people die from eating too much) so it's different.

Anyway, by "primal" here I meant the class of emotions dealt with by the most primitive part of our brains. We might theorise that people find those enjoyable (in small dosages) exactly because they temporarily stop the stream of information that's so stressful about the modern world. That might be the appeal of horror movies and so on.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Mon Sep 29, 2008 12:14 pm    Post subject: Reply with quote  Mark this post and the followings unread

I would imagine that the appeal of horror movies is adrenaline, perhaps?
_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Kassen
Janitor
Janitor


Joined: Jul 06, 2004
Posts: 7678
Location: The Hague, NL
G2 patch files: 3

PostPosted: Tue Sep 30, 2008 3:56 am    Post subject: Reply with quote  Mark this post and the followings unread

Well, yeah, but adrenaline is released by the body to deal with emergency situations so very closely related to the above.

Once that kind of thing starts happening your thoughts and perception change (more attention for the immediate issue, more focussed vision, less emphasis on sound). We could imagine horror movies work because of that; once you start being scared and the adrenaline is released you won't be analysing plot lines for literary value (there is of course horror with a lot of literary value, but....).

There is nothing "negative" about this at all; it's a essential element of survival, as a species we wouldn't be here without it.

It's just that when it goes wrong we realise how simplistic some of it is. We wonder why a police officer didn't take the time to think in a stressful situation before firing his weapon or get annoyed when somebody in a mosh-pit at a concert can't constrain himself to the appropriate level of force.

_________________
Kassen
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Inventor
Stream Operator


Joined: Oct 13, 2007
Posts: 6221
Location: near Austin, Tx, USA
Audio files: 267

PostPosted: Tue Sep 30, 2008 7:36 pm    Post subject: Reply with quote  Mark this post and the followings unread

One primal guitar sound is Bass Growl, as illustrated in the photo below. I'd like to make such growl, which appears to be triangle waves superimposed on top of low frequency bass guitar waveforms. But they are not clear-cut clean triangle waves, rather they vary in amplitude and frequency. Do you have a suggestion of how to create this in ChucK and in circuit form?


Growl_Wave.jpg
 Description:
Growl waveform
 Filesize:  316.76 KB
 Viewed:  411 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

Growl_Wave.jpg



_________________
"Let's make noise for peace." - Kijjaz
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic Moderators: Kassen
Page 1 of 1 [22 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » ChucK programming language
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use