real time - Has anybody some advice on programming realtime audio synthesis? -


i'm working on personal project: creating library realtime audio synthesis in flash. in short: tools connect wavegenarators, filters, mixers, etc eachother , supply soundcard raw (realtime) data. max/msp or reaktor.

i have working stuff, i'm wondering if basic setup wrote right. don't want run problems later on force me change core of app (although can happen).

basically, start @ end of chain, @ place (raw) sounddata goes 'out' (to soundcard). that, need write chunks of bytes (bytearrays) object, , chunk ask whatever module connected 'sound out' module give me chunk. module same request module that's connected input, , keeps happening until start of chain reached.

is right approach? can imagine running problems if there's feedbackloop, or if there's module no output: if connect spectrumanalyzer somewhere, dead end in chain (a module no outputs, input). in current setup, such module wouldnt work because start calculating sound-output module.

has experience programming this? i'd interested in thoughts right approach. (for clarity: i'm not looking specific flash-implementations, , that's why didnt tag question under flash or actionscript)

i did similar thing while back, , used same approach - start @ virtual line out, , trace signal top. did per sample though, not per buffer; if write same application today, might choose per-buffer instead though, because suspect perform better.

the spectrometer designed insert module, is, work if both input , output connected, , pass input output unchanged.

to handle feedback, had special helper module introduced 1-sample delay , fetch input once per cycle.

also, think doing internal processing floats, , arrays of floats buffers, lot easier byte arrays, , save effort of converting between integers , floats time.


Comments

Popular posts from this blog

android - Spacing between the stars of a rating bar? -

aspxgridview - Devexpress grid - header filter does not work if column is initially hidden -

c# - How to execute a particular part of code asynchronously in a class -