Java-Gaming.org    
Featured games (91)
games approved by the League of Dukes
Games in Showcase (576)
games submitted by our members
Games in WIP (497)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  FM Synthesis on the fly  (Read 2778 times)
0 Members and 1 Guest are viewing this topic.
Offline philfrei
« Posted 2012-01-25 07:00:59 »

I've been experimenting with using Java to implement FM Synthesis, and now have something to show. (This is more a demo than a question.)

http://www.hexara.com/SpiderBellDashboard.htm


This link demos a 10-voice polyphonic, 6-operator FM patch, called "SpiderBell" that I used in the recordings for the windchime in my yet-to-be completed puzzle game "Hexara". The original patch was something I cooked up for the Yamaha DX7 synthesizer long ago.

So, this jar, which includes a working version of a supporting "AudioMixer" I described in another thread (but somewhat updated and improved) and the various graphics, is under 70KB. In contrast, the chime .wav files in the windchime of Hexara ran about 10MB.

I'm hoping to get all the Hexara sounds generated via Java before too long, and to rewrite the game's audio at that point so all will be generated on the fly.

It seems to me it should be possible to make a MIDI-playable synthesizer from this, which could be hooked up to a Java Sequencer for "live" game music. Can't say for sure that it would work on a game, but if it does, some of those 6-operator FM patches are really sweet.

Maybe I should make the position on the screen also be used for panning, to show that the AudioMixer I wrote supports stereo.

Other game ideas I am thinking about include some sort of "Concentration" or memory game with sounds. But I should probably try and finish up Hexara first.

"Greetings my friends! We are all interested in the future, for that is where you and I are going to spend the rest of our lives!" -- The Amazing Criswell
Offline ra4king

JGO Kernel


Medals: 322
Projects: 2
Exp: 4 years


I'm the King!


« Reply #1 - Posted 2012-01-25 07:27:04 »

Really beautiful sound when playing around with it <3

I did hear a lot of crackling when hitting multiple loud notes but I saw you mentioned it in the bottom of the page Smiley

Offline philfrei
« Reply #2 - Posted 2012-01-25 21:54:58 »

@ra4king

Thanks for trying it out and for the nice compliment and observation. You helped me get over my laziness, and I recalibrated the screen so that the wretched "truncation noise" no longer occurs at high volumes.

I really should get on with encoding more DX7 sounds, or making an interface to help with this, as there are so many beautiful patches, and they seem to run pretty cheaply in terms of cpu load.

"Greetings my friends! We are all interested in the future, for that is where you and I are going to spend the rest of our lives!" -- The Amazing Criswell
Pages: [1]
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

xsi3rr4x (11 views)
2014-04-15 18:08:23

BurntPizza (10 views)
2014-04-15 03:46:01

UprightPath (23 views)
2014-04-14 17:39:50

UprightPath (10 views)
2014-04-14 17:35:47

Porlus (27 views)
2014-04-14 15:48:38

tom_mai78101 (49 views)
2014-04-10 04:04:31

BurntPizza (107 views)
2014-04-08 23:06:04

tom_mai78101 (207 views)
2014-04-05 13:34:39

trollwarrior1 (176 views)
2014-04-04 12:06:45

CJLetsGame (182 views)
2014-04-01 02:16:10
List of Learning Resources
by Longarmx
2014-04-08 03:14:44

Good Examples
by matheus23
2014-04-05 13:51:37

Good Examples
by Grunnt
2014-04-03 15:48:46

Good Examples
by Grunnt
2014-04-03 15:48:37

Good Examples
by matheus23
2014-04-01 18:40:51

Good Examples
by matheus23
2014-04-01 18:40:34

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:22:30

Anonymous/Local/Inner class gotchas
by Roquen
2014-03-11 15:05:20
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!