Meaning of rtl_fm output values
theodric at mit.edu
Wed Mar 14 19:57:55 UTC 2018
I'm new to SDR and I have a question about the data values that are
generated by the rtl_fm program.
I got rtl_fm running on my system (cygwin running on Windows 7). It is
sending a stream of 16-bit signed integer values to stdout which I can
redirect to a file or pipe to an audio playback system, such as sox. So
when I do this:
rtl_fm -f 88.1M -M wbfm -s 240k -r120k -g 30 | play -t raw -r 120k -b
16 -c 1 -e s -V1 -
I hear sweet, sweet music! Hurray!
But how do these 16-bit integers relate to the modulation level of the
carrier? I'm assuming that the values are directly proportional to the
instantaneous frequency deviation of the transmitted signal. Is that
right? If so, how do I determine that ratio? I'm hoping to use this to
build a device that shows total modulation (as a percentage of the
maximum modulation of +/- 75kHz) for an FM radio station.
Also, I'm assuming that the sample-rate of the output data stream needs
to be at least 120kHz because the baseband signal includes the stereo
pilot (19kHz), the stereo subcarrier (38kHz) and an RBDS subcarrier (57
Any insight would be appreciated. Thanks in advance,
More information about the osmocom-sdr