I am still stuck getting the dll to work in the code. I tried to add the dll as a reference in my code. The initial feedback is that the dll is not a valid COM and wonder if anybody has done the manual registering approach to install the dll? I was hoping the SDRuno would have installed the component but I don't think they programmed that way. I could not fine SDRplay in a search for the reference database.
I did find a nice set of articles by googling FSK using an SDR receiver. The api just gets you the raw data about a frequency and you still need to do all of the math routines to extra the data from the signals. One of the examples did everything using Scilab. I also looked at GNURADIO got a signal extracted but then got lost in code.
Reason: No reason
From the ver 2 C# example a callback pointer is created as well as the Stream callback function, streamcbfunc(…). The program does initialize and start the streaming. However the example doesn't actually tap the streamed data. The program also uses a 1 second timer interval but I thought we would want something like 50 milliseconds.
// streaming and gain change callback function pointers
public mir_sdr_StreamCallback_t streamcbfuncptr;
public void streamcbfunc(IntPtr xi, IntPtr xq, uint firstSampleNum, int grChanged, int rfChanged, int fsChanged, uint numSamples, uint reset, IntPtr cbContext)
// lock buffers and get a copy of the IQ data - use a lock because IQ processing will probably be done in another thread
Marshal.Copy(xi, Ibuf, 0, (int)numSamples);
Marshal.Copy(xq, Qbuf, 0, (int)numSamples);
When I was playing around with the GNURADIO block style functions they appeared to do two separate extractions of the IQ signal. One is done before decimation to show the emitting frequencies in the pass band. A second was done after the decimation to enable filtering and audio wavefile creation. Am I correct that is what is needed in a C# application? Obviously I am still learning how to digitally process this data stream. I saw one article that said I could directly send the 192kHz data to the audio and it might sound okay for an AM signal provided the opposite offset beat did not also have a station causing interference. Sort of like a crude direct conversion radio.
Reason: No reason