Page 1 of 1

Scientific data sonification

Posted: Tue Jun 16, 2009 12:09 am
by user
To those interested:

I am trying to convert seismic data, called waveforms, from their rdseed or SAC binary format into Microsoft wav file format. I have not had much success using the Project - Import raw data option, as unsigned PCM 8 or signed PCM 8 or signed PCM 16, all do not seem to work.

Can someone tell me exactly what raw data I must have for the import raw data option to work correctly? Currently the seismic data is converted to an integer between -10000 and +10000, which I thought was sufficient for signed PCM-16. I am aware of sampling rate issues and mono-stereo imaging, so those are not a problem.

There are some java script programs, such as Sonification Soundbox, but when I supplied a file with 760,000+ samples, the program completely choked. The waveform data usually is 100 samples/sec and can run from 100K to 5 Megs samples in length. so I need to be able to handle large input files.

Again, what exact format for my raw data should I have for the import raw data option to work?

Thanks for your help

Re: Scientific data sonification

Posted: Tue Jun 16, 2009 10:31 am
by george13
Hi,

interesting application. The data being integers between -10000 and 10000 signed PCM 16 should be the right format as it covers values from -32768 ... 32767, signed PCM 8 bit only goes from -128 .. 127. From there you have four options to try when importing the raw data:

little endian/0 byte offset
little endian/1 byte offset
big endian/0 byte offset or
big endian/1 byte offset.

If the data comes from an intel cpu then it should be little endian. Good luck!

P.S. Do you have link to one of those files? So I could take a look.

Re: Scientific data sonification

Posted: Tue Jun 16, 2009 10:38 am
by george13
Just googled 'SAC format':
'Binary SAC format contains a 158-word trace header (32 bits/word) and data sections comprised of 32-bit floating point data samples.'

So use 32bits floating point format. As there is a 158 word header use 159 for 'start offset'. If that doesn't work try 158,157,156.