Git Product home page Git Product logo

rtl_fm_streamer's Introduction

RTL SDR FM Streamer

Turns your Realtek RTL2832 based DVB dongle into a FM radio stereo receiver.

Description

RTL SDR FM Streamer is a small tool to stream FM stereo radio by using a DVB-T dongle to a client e.g Kodi, VLC or mplayer.

The DVB-T dongle has to be based on the Realtek RTL2832U. See http://sdr.osmocom.org/trac/wiki/rtl-sdr for more RTL SDR details.

Usage

Default port: 2346

$ ./rtl_fm_streamer

Options

The options "-P" defines the port where the HTTP server is listen on.

e.g. port 12345

$ ./rtl_fm_streamer -P 12345

Streaming

To connect to the server you can use KODI, VLC or mplayer. Just connect to the URL

mono: "http://IP:port/FrequencyInHerz"
mono: "http://IP:port/FrequencyInHerz/0"
stereo: "http://IP:port/FrequencyInHerz/1"

To use this tool in KODI simply create a *.strm file e.g. "FM_93_2.strm"

http://localhost:2346/93200000

JSON-RPC API

rtl_fm_streamer comes with a JSON-RPC 1.0 API. It is listening at port 2345 but you can specify the port with the parameter "-j".

$ ./rtl_fm_streamer -j 1234

Provided methods

Method Parameters Return Description
SetFrequency Frequency in Hz Frequency in Hz Tunes to a given frequency
GetPowerLevel None Power level in DBFS Returns the current power level in DBFS

Example Set Frequency client --> rtl_fm_streamer

{"method": "SetFrequency", "params": [93200000]}

rtl_fm_streamer --> client

{"result": [93200000]}

Performance

Mono: Should run on many small devices. e.g. a Raspberry Pi 1. Stereo: Needs a lot of more CPU power compared to mono (tested on a Raspberry Pi 2). On modern PCs (x86, x64) mono and stereo decoding should be possible easily (tested with an Intel CORE i7 and an Intel CORE 2 Duo)

Limitations

  • Server accepts only one client

Known Problems

  • Occasional segmentation faults after disconnect of a client

Building

To compile rtl_fm_streamer just do the following steps (install git, cmake and libev first).

$ sudo apt-get install build-essential libusb-1.0-0-dev libev-dev
$ git clone https://github.com/AlbrechtL/rtl_fm_streamer.git
$ cd rtl_fm_streamer/
rtl_fm_streamer$ mkdir build
rtl_fm_streamer$ cd build
rtl_fm_streamer/build$ cmake ../
rtl_fm_streamer/build$ make

Similar Projects

Support

OpenELEC thread: http://openelec.tv/forum/126-3rd-party/75537-fm-radio-receiver-for-kodi-for-the-raspberry-pi-1 raspberrypi.org thread: https://www.raspberrypi.org/forums/viewtopic.php?f=38&t=122372

Write me an e-mail: Albrecht [email protected]

rtl_fm_streamer's People

Contributors

steve-m avatar keenerd avatar albrechtl avatar vogelchr avatar csete avatar davefiddes avatar berkovskyy avatar laf0rge avatar howard0su avatar yarda avatar pinkavaj avatar kukabu avatar willglynn avatar edy555 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.