Page 1 of 1

Disk Streaming and Moving inside the memory buffer

PostPosted: Tue Sep 04, 2012 5:53 pm
by CoreStylerz
I see that FlowStone has an audio stream module that work pretty well.
But, seems that there's no possiblity to moving inside the cached memory (buffer).
There's no indexing and no way to find (or move) to a particular length inside the streamed file...
I will work on a DJing software with FlowStone, but this absolutely requires at least to move inside the streamed mp3.

Is possible to do so? Accessing particular positions inside the buffer created?

Re: Disk Streaming and Moving inside the memory buffer

PostPosted: Thu Dec 27, 2012 8:05 pm
by VPDannyMan
I was looking at this as well and its disapointing to find new moduals that are built with disabilities into them.

Poor Malc probably spent hours and hours adding things into moduals in SM that SHOULD have been put in and made available in the first place. For example, the system folders prim. There is I think 20-30 different system folders yet for some reason the original prim only returned three? It was not until later that we got the opportunity to use them all without conjuring up voodoo dos commands or making special exe files that would create text files which we could read in. So this missing seek function, or the ability to interact properly with the Audio Stream prim is another example of this.

As it is right now this is the streaming mp3 equivalent of the SndPlaySound API. Its fine if you want your program to play something simple when someone clicks a button, but for anything else more advanced, forget it.

This desperately needs a seek function added to make it useful because as far as I can tell, our hands are completely tied here..

Re: Disk Streaming and Moving inside the memory buffer

PostPosted: Sat Dec 29, 2012 3:36 am
by infuzion
SM/FS does not have "Streaming audio" AFAIK; it has been requested for over 1/2 a decade now. All .WAV samples are loaded into memory. If you want true streaming of MP3, FLAC or other audio files, you need to learn C++, sorry!

Good news: You can search inside the Toolbox for "Multi Sample" to see modules you can edit to change the start & end points, thus move inside the memory buffer.

Re: Disk Streaming and Moving inside the memory buffer

PostPosted: Sat Dec 29, 2012 9:46 am
by VPDannyMan
Wait, so the AudioStreamIn Prim reads an MP3 file to its entirety, converts it to a wave file and then pretends like its streaming?

I really hope that its NOT doing that...

The other thing is you don't need to learn C++ for streaming audio, thats a windows API (Core Audio or whatever they are calling it now) thing. Basically any language capable of speaking to the API or OLE enabled languages can be used. So, Visual Basic, C++, Delphi, and yes.. even Ruby, just not within SM because the SM build does not support OLE. As far as I know the Core Audio API is all COM Based objects and the SM build does not support them. I am not 1005 sure though...

Re: Disk Streaming and Moving inside the memory buffer

PostPosted: Sun Dec 30, 2012 6:04 am
by infuzion
VPDannyMan wrote:Wait, so the AudioStreamIn Prim reads an MP3 file to its entirety, converts it to a wave file and then pretends like its streaming?
Ooops my mistake; I didn't even know that primitive existed! Sorry :oops:

Perhaps I should say: "If you want a VST/EXE to do what you want it to do, then don't depend on a 3rd party app that takes a very very very long time to get requests added; just program it yourself."
I'm not trying to be sarcastic; this is how things tend to happen.