I have tried recording RF data using several different software packages: SDR Console, SDR# and HDSDR. They all seem to produce WAV files. When I open the HDSDR file in Mathematica, it says the file is "Integer16" meaning 16-bit PCM data and that the sample rate is 2400000, which I guess means 2.4 million samples per second. The data has two channels. The first 10 elements of each of these channels is:

{0.00421143, -0.00283813, -0.00268555, -0.00271606, -0.00268555, 
0.00488281, -0.00378418, -0.00241089, -0.00234985, 0.00363159}

{0.00479126, -0.00332642, -0.00323486, -0.00338745, -0.00344849, 
-0.00228882, 0.00415039, -0.00344849, -0.00344849, 0.0055542}

From what I understand each of these values is a composite of two bytes, but why would it be a float if it Integer16?

Also, how do I do determine the quadrature? How is the quadrature encoded?


SDR is normally done with I (in-phase) and Q (quadrature) channels. You can think of them as the two components of a complex number. These allow you to preserve the phase information through your signal processing chain, which is important for some kinds of modulation.

For more information about what this entails, you should browse our related DSP.SE site.

  • $\begingroup$ Ok, assuming that the two channels in my data are I and Q, how do I know which is which? $\endgroup$ Mar 11 '16 at 19:41
  • $\begingroup$ Analyzing these RF data streams stored as WAV/RIFF files seems to be kind of a black art. When I try to go google searches on it, I tend to get my own questions posted to different forums as the main hits. When you start getting your own forum posts as your google returns, you know you are dealing in unknowns. $\endgroup$ Mar 11 '16 at 19:51
  • $\begingroup$ Based on a description I found here, the convention seems to be that the first channel in the file is the I channel, and the second is the Q. $\endgroup$
    – Dave Tweed
    Mar 11 '16 at 19:52
  • $\begingroup$ I suggest you contact some of the open source software developers who use the format. Even if they took the relevant code from another project, you should be able to trace back till you get to a human who understands it! (This isn't my specialist subject, so I can't give you any recommended places to start looking). $\endgroup$
    – alephzero
    Mar 12 '16 at 2:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.