electro-music.org   Dedicated to experimental electro-acoustic
and electronic music
 
 Front Page  |  Radio  |  Forum  |  Media  |  Playlists  |  Wiki
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 
 Forum index » DIY Hardware and Software
Physical Models
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 4 of 4 [99 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: Previous 1, 2, 3, 4
Author Message
blue hell
Former site admin


Joined: Apr 03, 2004
Posts: 24864
Location: The Netherlands, Enschede
Audio files: 353
G2 patch files: 320

PostPosted: Sun Nov 07, 2010 3:22 pm    Post subject: Reply with quote  Mark this post and the followings unread

Nice demo Scott - I like these sounds!
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Thu Jan 13, 2011 5:48 pm    Post subject: Reply with quote  Mark this post and the followings unread

I've made progress with a new project, a flute model based pipe organ, 16 flute models that run in parallel. I finally got the 16 voice MIDI controller to work properly. No sound yet, lots of work still to do - mostly getting the patch editor to send separate flute pipe parameters to each pipe. I have 4 boards that this will run on, so potentially 64 pipes if the thing actually works.

I found a way to speed up slow pipes Razz


EDIT ADDED 2011-01-21:
Fixed broken ADSR, fixed numerous "it ain't gonna work like that" things. I get sound, but it isn't right.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Tue Jan 25, 2011 6:48 pm    Post subject: Reply with quote  Mark this post and the followings unread

Oh boy - sound - not totally right, but way better.

Not sure yet why this mattered, but I had been using a single port RAM to implement the bore and jet waveguide delay lines. I decided to try a dual port RAM and see what would happen. Well, now, I _can_ get a flute sound, but it's weird what I have to do to get it... I have to hit many keys, and I can hear lots of pipes starting up and then there's distortion, but if I pick one of the keys I hit and hold it while releasing the others, I hear an obvious flute pipe. So I still have some work to do but apparently, the design likes a dual ported RAM... Smells like a timing problem...

This is not a plea for help, just venting my frustration and exclaiming my glee that now at least it appears I'm close to a flute-pipe organ.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Thu Jan 27, 2011 7:21 am    Post subject: Reply with quote  Mark this post and the followings unread

The timing issue is resolved, the proper ADSR now turns on when keys are pressed. I get polyphonic flute-organ sounds now.

Next step is to "tune" the pipes - they are already correctly tuned for pitch, but need enhancement to get them resonating faster. The enhancement is built into the design, but it needs to be configured individually for each pipe. I will also try lowering the sample rate from 100KHz to 50KHz to get sounds an octave lower.

I should have some sounds rather soon.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JLS



Joined: Nov 05, 2005
Posts: 561
Location: Czech
Audio files: 30
G2 patch files: 316

PostPosted: Wed Mar 02, 2011 11:58 am    Post subject: Reply with quote  Mark this post and the followings unread

Hi Scott

PhLUTe sound demo is very nice is possible post source code for Spartan-3E ?

Many thanks

_________________
https://www.youtube.com/@kamilondrousek6973
https://soundcloud.com/1jls
https://soundcloud.com/user-819966312-266044932
https://github.com/jlswbs
https://www.instagram.com/ondrousek.kamil/
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Wed Mar 02, 2011 12:28 pm    Post subject: Reply with quote  Mark this post and the followings unread

JLS wrote:
Hi Scott

PhLUTe sound demo is very nice is possible post source code for Spartan-3E ?

Many thanks


Well, I'm not even close to satisfied with it. The startup time for a pipe is still too long and improving it at all is a very tedious task of parameter adjustment. This is the third time I've revisited this issue, so in a word, I'm not proud it at all.

Neither the phLUTe nor the Pan_phLUTe are working to my satisfaction, which is why I haven't produced any music with it.

The phLUTe (not Pan) also suffers from a problem documented by Perry Cook, that being when the bore length is changed to change the pitch of the instrument, a transient is introduced that sounds very unnatural. The Pan_phLUTe is made of several pipes, where the length remains constant and it is intended to be played like an organ - but the startup time is still an issue, though somewhat better, but still too long to be musically useful (in my opinion).

I have scoured the internet to see if anyone else has been able to fix these problems, but I've found nothing.

The design is being developed on the Spartan-3E board... Just not ready for "prime time". -- I know -- Sad

I've also been considering another way to synthesize a flute sound which is far more common and would be much easier to implement - that would be a simple additive synth that uses sine waves. A flute produces at most 3 harmonics (a fundamental, octave above, octave+5th above and 2 octaves above). This would easily fit in the Spartan-3E but would require research into how flutes tone evolves from startup to steady state and to simulate overblow and "airy" quality by including white noise, possible passed through a bandpass filter like my tonal noise synth.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JLS



Joined: Nov 05, 2005
Posts: 561
Location: Czech
Audio files: 30
G2 patch files: 316

PostPosted: Wed Mar 02, 2011 12:54 pm    Post subject: Reply with quote  Mark this post and the followings unread

Many thanks info Scott Smile

I not musician but only miscellaneous sound synthesis and structures very interesting me.

Very thanks all yours future code projects Smile

_________________
https://www.youtube.com/@kamilondrousek6973
https://soundcloud.com/1jls
https://soundcloud.com/user-819966312-266044932
https://github.com/jlswbs
https://www.instagram.com/ondrousek.kamil/
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Tue Aug 30, 2011 3:32 pm    Post subject: Reply with quote  Mark this post and the followings unread

I have worked out some math and did some test trials of a "new" idea.

I wanted to see if I could use one of my smaller FPGAs to make a Karplus-Strong harp. The current instrument I have for the Spartan-3E Starter Kit plays only in 8 note polyphony.

This is not new - but it is new for me in terms of making an implementation that is well tuned and doesn't suffer from noticable timbre change from string to string.

My previous attempts at Karplus-Strong systems have always been with integer length waveguides. I have now tested a new system that uses a much lower sample rate than previous designs - 48.0 kHz as opposed to 820 kHz. The lower sample rate allows the waveguides for a given pitch to be much shorter - but as I discovered in earlier experiments, the accuracy of tuning becomes problematic as the waveguide length is made shorter. Shorter string lengths means more will fit into a given amount of RAM.

To compensate for that, I included a fractional delay filter or a first order LaGrange interpolator. This is a tiny FIR filter (kernel length = 2), where the kernel parameters are used to interpolate over a one sample length time frame. This has allowed far greater tuning accuracy using much shorter waveguides than when integer lengths are used. I calculate that I can get 60 strings out of a Spartan-3E Starter Kit FPGA - that's 60 string that can all resonate at once - meaning the synth will be not 8 note poly, but rather 60 note polyphonic.

Internally, the design will have a structure similar to Xarp-56 (and I may limit the design to 56 strings to make it easier to use the Xarp-56 code).

The waveguides will consume 18 of the 20 block RAMs.

My tests included listening comparison between the plucked waveguide output and a sinewave of the concert tuned pitch. The system does very well and there is no in-your-face "hey - that string sounds different" thing.

The instrument's fundamental frequency range will be from 46.249 Hz to 1396.913 Hz.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima

Last edited by JovianPyx on Tue Aug 30, 2011 3:47 pm; edited 3 times in total
Back to top
View user's profile Send private message Visit poster's website
Dougster



Joined: Sep 20, 2005
Posts: 272
Location: Tucson, AZ, USA

PostPosted: Tue Aug 30, 2011 3:36 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hope I'm not picking nits, but do you mean 48 kHz instead of 48000 kHz?
_________________
Once you start down the modular path, forever will it dominate your destiny!

Every DIY person should own a copy of Electronotes: http://electronotes.netfirms.com

Blue LEDs are evil.
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Tue Aug 30, 2011 3:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

Dougster wrote:
Hope I'm not picking nits, but do you mean 48 kHz instead of 48000 kHz?


Quite correct oh Dougster with the Eagle-Eyes... Smile

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Tue Aug 30, 2011 5:38 pm    Post subject: Reply with quote  Mark this post and the followings unread

Ok, sound file is probably necessary.

This is a downward chromatic scale through the instrument's entire range. The sample was made using a C program that implements the idea.

I like the gut-string sound I get from this.

The clicks at the ends of some of the lower notes are from the naive EG I implemented. (you know, this was a test, not a compostition... Smile )


Spartan-3E_Xarp_Idea_Sound_File.mp3
 Description:
Chromatic scale sample
 Filesize:  2.33 MB
 Duration: 2:32
 Viewed:  3970 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Mon Sep 05, 2011 8:48 pm    Post subject: Reply with quote  Mark this post and the followings unread

I have a working Spartan-3E (500) design.

It has 61 strings and uses fractional delay filters for fine tuning the waveguide lengths.

The fractional delay filters I used are first order lagrange interpolators. This is a filter (FIR lowpass, kernel length=2), but it also interpolates between the last and second to last elements of the delay line.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima

Last edited by JovianPyx on Tue Sep 06, 2011 6:11 pm; edited 2 times in total
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Tue Sep 06, 2011 6:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Here is a chromatic scale demo with the current hardware. Sustain is down. Mod wheel is at maximum (meaning minimum integrator leakage) and maximum sustain.


xarp_61_chromatic_demo.mp3
 Description:
Xarp chromatic scale demo
 Filesize:  168.24 KB
 Duration: 0:11
 Viewed:  3906 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Wed Sep 07, 2011 8:17 am    Post subject: Reply with quote  Mark this post and the followings unread

Here's a short piece of music using only the Xarp for Spartan-3E.


Accretion.mp3
 Description:
Accretion
 Filesize:  1.55 MB
 Duration: 1:41
 Viewed:  3808 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Wed Sep 07, 2011 4:47 pm    Post subject: Reply with quote  Mark this post and the followings unread

Since I have 4 of these boards, I decided to try something ... I used two boards and detuned them from each other by changeing the sample rate slightly. The result is interesting in my opinion. The piece is the same sequence. One is panned left, one is panned right.

This was just for fun, so please enjoy!


Accretion_Dual_Xarp-61.mp3
 Description:
Accretion - using two Xarp-61 instruments, in stereo.
 Filesize:  1.57 MB
 Duration: 1:43
 Viewed:  3780 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
jksuperstar



Joined: Aug 20, 2004
Posts: 2503
Location: Denver
Audio files: 1
G2 patch files: 18

PostPosted: Thu Sep 08, 2011 2:58 pm    Post subject: Reply with quote  Mark this post and the followings unread

I was just comparing these latest to some of your earliest uploads, and these sound really great. It's great to see this coming from FPGAs!!
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Sat Sep 10, 2011 12:10 pm    Post subject: Reply with quote  Mark this post and the followings unread

Thanks JK... But I'm sad to say that the instrument is flawed. There's a pitch bug at least and I've got improvements I'm adding.

I will post a ver_e that will contain corrections and additions.

The pitch bug causes notes to be sharp as one goes up the scale.

There is also a pitch ROM data problem that causes the lowest C key to play a C# with that error carried up through the note range.

Lastly, the lowest octave is practically useless.

ver_e will correct the above problems and I will be doubling the sample rate to 96 kHz using some parallelism. This will put the range of the instrument in a more useful place.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Dan Lavin



Joined: Nov 09, 2006
Posts: 649
Location: Spring Lake, Mi, USA
Audio files: 21

PostPosted: Sat Sep 10, 2011 6:17 pm    Post subject: Reply with quote  Mark this post and the followings unread

Scott, even flawed this sounds wonderful!
_________________
Synth DIY since 1977!
Back to top
View user's profile Send private message
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Sat Sep 10, 2011 10:21 pm    Post subject: Reply with quote  Mark this post and the followings unread

I fixed the problems in Xarp-61 and I'm posting a new demo - it has a few more notes but is basically the same.

I'm too tired to put the ver_e source up... that will happen tomorrow.


Accretion_Dual_Xarp-61_2.mp3
 Description:
"Accretion" played on 2 slightly detuned Xarp-61 instruments
 Filesize:  1.73 MB
 Duration: 1:53
 Viewed:  3824 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Sun Sep 11, 2011 11:25 am    Post subject: Reply with quote  Mark this post and the followings unread

ver_e source code is available at:

http://jovianpyx.dyndns.org:8080/public/FPGA_synth/Xarp-61.html

The improvements were made in the form of bug fixes and a redesign of the instrument's internal structure. The previous version implemented a single 61 string harp processed at 48 kHz sample rate. Reorganization of RAM resources as dual ported RAM allowed for a 2 harp system with the harps operating in parallel. This allowed for an increase in sample rate to 96 kHz and a rise in pitch of exactly one octave.

EDIT ADD: The code package also contains a VB.NET (Express Edition) project for the patch editor (which is required). Note that the patch editor was created by modifying another patch editor and there are tabs and functions that do nothing. The first two tabs work, and in the last tab, the MIDI channel control works. Sorry - I threw it together...

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
richardc64



Joined: Jun 01, 2006
Posts: 679
Location: NYC
Audio files: 26

PostPosted: Sun Sep 11, 2011 3:39 pm    Post subject: Reply with quote  Mark this post and the followings unread

JovianPyx wrote:
This was just for fun, so please enjoy!


I don't understand much of this thread, but I can recognize a great tune when I hear one! banana

_________________
Revenge is a dish best served with a fork... to the eye
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Sun Sep 11, 2011 6:01 pm    Post subject: Reply with quote  Mark this post and the followings unread

Why thank you richardc64!

and btw - I love your avatar image.

_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Sun Nov 06, 2011 4:05 pm    Post subject: Reply with quote  Mark this post and the followings unread

Xarp-61 for the Spartan-3E Starter Kit board now has DDR SDRAM used for looped delay effect.
_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
JovianPyx



Joined: Nov 20, 2007
Posts: 1988
Location: West Red Spot, Jupiter
Audio files: 237

PostPosted: Mon Apr 09, 2012 7:56 pm    Post subject: Reply with quote  Mark this post and the followings unread

I've revisited an older physical model design - PolyDaWG-8 - an 8 voice Karplus-Strong synthesizer on a Spartan-3E Start Kit Board.

This instrument is 8 voice polyphonic implementing 8 variable length Karplus-Strong strings.

The "strings" are digital waveguides - digital delay lines fed to a simple lowpass filter and then back into the input of the delay line. There are no oscillators or envelope generators in this synthesizer. All of the amplitude and timbre dynamics occur as a natural result of the mathematics (arithmetic really) involved.

The original design came into being well before I knew how to connect to the DDR SDRAM on the board. The demo attached uses 2 of these synths and each has the DDR SDRAM implementing echo/delay (very short duration in the demo).

The two instruments are tuned slightly differently, so you will hear the phasing between them (in stereo). The demo tune is basically the same one I used for this instrument earlier, but I've enhanced the piece a bit.

I plan to attempt something like this in a dsPIC (actually, more than one).


PolyDaWG8-4.flac
 Description:
PolyDaWG-8 Demo using two instruments tuned slightly differently and in stereo
 Filesize:  6.58 MB
 Duration: 1:18
 Viewed:  3836 Time(s)

     



_________________
FPGA, dsPIC and Fatman Synth Stuff

Time flies like a banana.
Fruit flies when you're having fun.
BTW, Do these genes make my ass look fat?
corruptio optimi pessima
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic Moderators: jksuperstar, Scott Stites, Uncle Krunkus
Page 4 of 4 [99 Posts]
View unread posts
View new posts in the last week
Goto page: Previous 1, 2, 3, 4
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software
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
Log in
Username:     Password:      Log me on automatically each visit    


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2026 by electro-music.org