Re: SDR FM demodulation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Antti Palosaari <crope@xxxxxx> wrote:

>On 09.02.2012 17:11, Patrick Boettcher wrote:
>> On Thursday 09 February 2012 16:01:12 Antti Palosaari wrote:
>>> I have taken radio sniffs from FM capable Realtek DVB-T device.
>Looks
>>> like demodulator ADC samples IF frequency and pass all the sampled
>>> data to the application. Application is then responsible for
>>> decoding that. Device supports DVB-T, FM and DAB. I can guess  both
>>> FM and DAB are demodulated by software.
>>>
>>> Here is 17 second, 83 MB, FM radio sniff:
>>> http://palosaari.fi/linux/v4l-dvb/rtl2832u_fm/
>>> Decode it and listen some Finnish speak ;)
>>>
>>> Could someone help to decode it? I tried GNU Radio, but I failed
>>> likely because I didn't have enough knowledge... GNU Radio and
>>> Octave or Matlab are way to go.
>>
>> For someone to decode it, you would need to give more information
>about
>> the format of the stream. Like the sampling frequency, the
>sample-format
>> and then the IF-frequency.
>
>You can see sampling format easily looking hexdump or open file in 
>Audacity. It is 8bit unsigned samples, 2 channels (I & Q).
>
>No knowledge about IF... For good guess is to try some general used
>IFs.
>
>Sampling freq can be calculated using sample info and the fact it is 
>about 17 sec. sample size = 86919168 Bytes, time 17 sec. 2 channels, 1 
>byte sample => 2556446,11765 sample/sec (~2.5 MHz!)
>
>> I never did something like myself, but from what I saw in gnuradio
>there
>> should be everything to make a FM-demod based on the data.
>
>Yes there was a lot of block and those were rather easy to connect
>using 
>graphical interface (gnuradio-companion). But I don't know exactly what
>
>block are needed and what are parameters. I used file-sink => 
>fm-modulator => audio-sink. Likely not enough :i
>
>Without any earlier experience it is rather challenging. But if there
>is 
>someone who have done that earlier using USRP SDR he could likely do it
>
>easier :)
>
>regards
>Antti
>-- 
>http://palosaari.fi/
>--
>To unsubscribe from this list: send the line "unsubscribe linux-media"
>in
>the body of a message to majordomo@xxxxxxxxxxxxxxx
>More majordomo info at  http://vger.kernel.org/majordomo-info.html


Implement a phased locked loop (phase comparator, low pass filter, and VCO) that is centered reasonably close to the IF.  The output of the LPF of the PLL should be the demodulated signal, IIRC.

Maybe this matlab (octave) file will help you:
http://www.mathworks.com/matlabcentral/fileexchange/24167-simple-pll-demostration

Regards,
Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux