Hi Again Alex,

I just went off for a break before getting back to work.

I've pasted your questions and will attempt to answer them all.
/managing sound buffers (you can only have 16 at a time in OpenAL)
-These buffers send out smaller sample sized waveforms. The waveforms have a 
specific signature which you trace back, and decompose using a fourrier 
transform. This is how Jaws or voice over voices are done. What we are 
essentially doing with code is break it down to its constituent parts and go 
back up the ladder by adjusting mathematical proofs meaning referencing 
ourselves from axioms and expressing them in code. This means that each channel 
is a queue of smaller buffers.
-Each of the 16 channels will be used entirely if possible, but for now I 
preffer keeping a good focus on the xml parsing side to have the proof of 
concept ready by 2 weeks.
, handling stereo sound samples
-the API handles this already. It's just a matter of how you process this, 
where you prioritise, and what other options are there to increase the number 
of channels. I don't think a second that with what is already there, an 
incredible experience can't be had.

generating sounds on the fly instead of relying on recorded audio, 
-Sounds on the fly are a signature. A chirp is a wave form signature. Fourrier 
should be thanked for this.
applying real-time filters or effects
-The API includes a nodesList which handles this entire structure, using a b 
plus tree. I'm sure other more advanced tree systems can be thought up or 
searched for on the net. It's incredible how if your question in google has the 
right semantics, it finds it exactly as you want it.

managing occlusions and distance roll-offs
-This is the part I have been working on and will finish either beginning or 
mid week.
By having that same node structure, you are doing concurrency between nodes. 
These concurrencies can be reshaped into the buffer as they are blended, almost 
a machine code A+B operation. The geometry is elegant too. Imagine a system, 
using those same nodes, which are connected by a matrix. The matrix is local, 
reflecting its position in the global, the world axis. That world axis contains 
say a matrix of 9 regions. These matrices are the world's child nodes. They 
have child nodes too. And so a region may have 9 districts. These districts 
have 16 blocks each (keep it at congruent multiples if possible though I didn't 
in this example. Where a multiple of one is a multiple of another. Following me 
so far?
Once you've reached the inner most, or most nested matrix, that matrix have 
simple instructions, tags, calls and listeners. Each functions with the 
following axioms:
1-function bijectivity. mathematically, each node relation should be mapped. 
This way you are sure that every single node is bijective with the other node. 
meaning that functions and their inverses return the original value. This is 
very useful for a lot of connectivity.
Now add several classes which can be instaced and all contain or encapsulate 
the proper methods for functioning in the world, as well as through the various 
menus, maps, pop overs, etc. The XML parser I have does exactly that, and 
places every element in the right hierarchy, then accessible via call, dict 
search or list / matrix arrangements. The gemoetrical shapes inside come from a 
library I am coding, meaning every primitive type of shape. The Ngon. low 
values give you a tetrahedron, increase the value by far and you get a perfect 
sphere. 4 sides and its a rectangle, etc. Another one is a bunch of points you 
add together to form the environment, or space where the sound is emitted. 
Inwards and outwards. At the top of these 3D sound orientation objects class, I 
call wObjects, you have a smaller matrix with simple tuple like rows which take 
from a database, which I have already setup with the tables etc. The dB script 
will continue to increase as various objects are created by code only. Not 
paintbrushing. Actual abstract and beautifully elegant nature that is handled 
with the minimum ammount of big O. Factorial by factorial, you're fucked in 
fact, arithmetic, and well...
Now I'll give you an example of how to generate a tree:
-Create an ngon. Increase the vector transform influence from one point to a 
circular shape around it with a hyperbolic falloff. The values of these these 
falloffs are all class instances.
-create a spline (it;s a function line) perpendicular to the original object's 
x and y. It's easy. You just compare the local axis as compared to world axis 
of one object then put that value into the other object.
-Use the formula that directs whatever tree or plant in real life from its 
geometry, and make sure to add the phi ratio, or some call it the golden ratio. 
This ratio will allow for the natural fractals to combine. Mathematically, you 
just have to look for the math you want, understand it, and apply it. Back to 
the task.
-Use several properties to the revolving of the branches over the 3 axes, and 
each split contains a frequency wave. You can now start simulating with the 
node 3D sound API.
-There are plenty of other examples of how nature works, physics is a good 
start for that, and that's what I'm taking this semster alongside some large 
programs and mini systems courses.

Here you are. I've written a lot. This is because I know what I'm talking 
about. And ready to share it with yall because I'm sure ther are great 
suggestions from others in this group.

Yuma Antoine Decaux
"Light has no value without darkness"
Mob: +612102277190
Skype: Shainobi1
twitter: http://www.twitter.com/triple7




> On 11/01/2015, at 2:37 pm, Alex Hall <mehg...@icloud.com> wrote:
> 
> /managing sound buffers (you can only have 16 at a time in OpenAL), handling 
> stereo sound samples, generating sounds on the fly instead of relying on 
> recorded audio, applying real-time filters or effects, managing occlusions 
> and distance roll-offs

-- 
You received this message because you are subscribed to the Google Groups 
"MacVisionaries" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to macvisionaries+unsubscr...@googlegroups.com.
To post to this group, send email to macvisionaries@googlegroups.com.
Visit this group at http://groups.google.com/group/macvisionaries.
For more options, visit https://groups.google.com/d/optout.

Reply via email to