|
@@ -28,6 +28,7 @@
|
|
* replace atan2 with a fast approximation
|
|
* replace atan2 with a fast approximation
|
|
* in-place array operations
|
|
* in-place array operations
|
|
* wide band support
|
|
* wide band support
|
|
|
|
+ * sanity checks
|
|
*/
|
|
*/
|
|
|
|
|
|
#include <errno.h>
|
|
#include <errno.h>
|
|
@@ -254,7 +255,7 @@ static void optimal_settings(struct fm_state *fm, int freq, int hopping)
|
|
fm->output_scale = 1;}
|
|
fm->output_scale = 1;}
|
|
fm->output_scale = 1;
|
|
fm->output_scale = 1;
|
|
/* Set the frequency */
|
|
/* Set the frequency */
|
|
- r = rtlsdr_set_center_freq(dev, capture_freq);
|
|
|
|
|
|
+ r = rtlsdr_set_center_freq(dev, (uint32_t)capture_freq);
|
|
if (hopping) {
|
|
if (hopping) {
|
|
return;}
|
|
return;}
|
|
fprintf(stderr, "Oversampling by: %ix.\n", fm->downsample);
|
|
fprintf(stderr, "Oversampling by: %ix.\n", fm->downsample);
|
|
@@ -264,7 +265,7 @@ static void optimal_settings(struct fm_state *fm, int freq, int hopping)
|
|
fprintf(stderr, "Tuned to %u Hz.\n", capture_freq);}
|
|
fprintf(stderr, "Tuned to %u Hz.\n", capture_freq);}
|
|
|
|
|
|
/* Set the sample rate */
|
|
/* Set the sample rate */
|
|
- r = rtlsdr_set_sample_rate(dev, capture_rate);
|
|
|
|
|
|
+ r = rtlsdr_set_sample_rate(dev, (uint32_t)capture_rate);
|
|
if (r < 0) {
|
|
if (r < 0) {
|
|
fprintf(stderr, "WARNING: Failed to set sample rate.\n");}
|
|
fprintf(stderr, "WARNING: Failed to set sample rate.\n");}
|
|
|
|
|
|
@@ -337,6 +338,7 @@ int main(int argc, char **argv)
|
|
fm.sample_rate = DEFAULT_SAMPLE_RATE;
|
|
fm.sample_rate = DEFAULT_SAMPLE_RATE;
|
|
fm.squelch_level = 150;
|
|
fm.squelch_level = 150;
|
|
fm.freq_len = 0;
|
|
fm.freq_len = 0;
|
|
|
|
+ fm.edge = 0;
|
|
sem_init(&data_ready, 0, 0);
|
|
sem_init(&data_ready, 0, 0);
|
|
#ifndef _WIN32
|
|
#ifndef _WIN32
|
|
while ((opt = getopt(argc, argv, "d:f:g:s:b:l:E::")) != -1) {
|
|
while ((opt = getopt(argc, argv, "d:f:g:s:b:l:E::")) != -1) {
|