28 #include <rtl-sdr_export.h>
32 RTLSDR_API uint32_t rtlsdr_get_device_count(
void);
34 RTLSDR_API
const char* rtlsdr_get_device_name(uint32_t index);
47 RTLSDR_API
int rtlsdr_get_device_usb_strings(uint32_t index,
61 RTLSDR_API
int rtlsdr_get_index_by_serial(
const char *serial);
63 RTLSDR_API
int rtlsdr_open(
rtlsdr_dev_t **dev, uint32_t index);
83 RTLSDR_API
int rtlsdr_set_xtal_freq(
rtlsdr_dev_t *dev, uint32_t rtl_freq,
96 RTLSDR_API
int rtlsdr_get_xtal_freq(
rtlsdr_dev_t *dev, uint32_t *rtl_freq,
97 uint32_t *tuner_freq);
110 RTLSDR_API
int rtlsdr_get_usb_strings(
rtlsdr_dev_t *dev,
char *manufact,
111 char *product,
char *serial);
126 RTLSDR_API
int rtlsdr_write_eeprom(
rtlsdr_dev_t *dev, uint8_t *data,
127 uint8_t offset, uint16_t len);
142 RTLSDR_API
int rtlsdr_read_eeprom(
rtlsdr_dev_t *dev, uint8_t *data,
143 uint8_t offset, uint16_t len);
145 RTLSDR_API
int rtlsdr_set_center_freq(
rtlsdr_dev_t *dev, uint32_t freq);
153 RTLSDR_API uint32_t rtlsdr_get_center_freq(
rtlsdr_dev_t *dev);
162 RTLSDR_API
int rtlsdr_set_freq_correction(
rtlsdr_dev_t *dev,
int ppm);
170 RTLSDR_API
int rtlsdr_get_freq_correction(
rtlsdr_dev_t *dev);
173 RTLSDR_TUNER_UNKNOWN = 0,
188 RTLSDR_API
enum rtlsdr_tuner rtlsdr_get_tuner_type(
rtlsdr_dev_t *dev);
200 RTLSDR_API
int rtlsdr_get_tuner_gains(
rtlsdr_dev_t *dev,
int *gains);
216 RTLSDR_API
int rtlsdr_set_tuner_gain(
rtlsdr_dev_t *dev,
int gain);
224 RTLSDR_API
int rtlsdr_get_tuner_gain(
rtlsdr_dev_t *dev);
234 RTLSDR_API
int rtlsdr_set_tuner_if_gain(
rtlsdr_dev_t *dev,
int stage,
int gain);
244 RTLSDR_API
int rtlsdr_set_tuner_gain_mode(
rtlsdr_dev_t *dev,
int manual);
257 RTLSDR_API
int rtlsdr_set_sample_rate(
rtlsdr_dev_t *dev, uint32_t rate);
265 RTLSDR_API uint32_t rtlsdr_get_sample_rate(
rtlsdr_dev_t *dev);
275 RTLSDR_API
int rtlsdr_set_testmode(
rtlsdr_dev_t *dev,
int on);
284 RTLSDR_API
int rtlsdr_set_agc_mode(
rtlsdr_dev_t *dev,
int on);
296 RTLSDR_API
int rtlsdr_set_direct_sampling(
rtlsdr_dev_t *dev,
int on);
305 RTLSDR_API
int rtlsdr_get_direct_sampling(
rtlsdr_dev_t *dev);
315 RTLSDR_API
int rtlsdr_set_offset_tuning(
rtlsdr_dev_t *dev,
int on);
323 RTLSDR_API
int rtlsdr_get_offset_tuning(
rtlsdr_dev_t *dev);
329 RTLSDR_API
int rtlsdr_read_sync(
rtlsdr_dev_t *dev,
void *buf,
int len,
int *n_read);
331 typedef void(*rtlsdr_read_async_cb_t)(
unsigned char *buf, uint32_t len,
void *ctx);
344 RTLSDR_API
int rtlsdr_wait_async(
rtlsdr_dev_t *dev, rtlsdr_read_async_cb_t cb,
void *ctx);
361 rtlsdr_read_async_cb_t cb,