I plan to start by streaming USB audio but I'm also interested in RTL-SDR. Probably not Calls at this stage, though I'd still be interested in knowing whether that could be done without running Xorg on my RPi.
Setup is relatively simple on a pi. An older pi works well for just streaming to bcfy.
install the PIOS on your sd card and boot up pi With your usb sound card plugged in. You don’t need the gui so the lite version of the OS is perfect, but the full version works just as well.
In the terminal, type
sudo apt install pavucontrol
In the terminal type
sudo apt install darkice
now for the tricky part. You need to use the nano text editor on the pi to set up you darkice configuration file.
here is what goes in that file:
# sample DarkIce configuration file, edit for your needs before using
# see the darkice.cfg man page for details
# this section describes general aspects of the live streaming session
[general]
duration = 0 # duration of encoding, in seconds. 0 means forever
bufferSecs = 5 # size of internal slip buffer, in seconds
reconnect = yes # reconnect to the server(s) if disconnected
# this section describes the audio input that will be streamed
[input]
device = default # OSS DSP soundcard device for the audio input
sampleRate = 11025 # sample rate in Hz. try 11025, 22050 or 44100
bitsPerSample = 16 # bits per sample. try 16
channel = 1 # channels. 1 = mono, 2 = stereo
# this section describes a streaming connection to an IceCast2 server
# there may be up to 8 of these sections, named [icecast2-0] ... [icecast2-7]
# these can be mixed with [icecast-x] and [shoutcast-x] sections
[icecast2-0]
bitrateMode = cbr # constant bit rate
bitrate = 16
format = mp3 # format of the stream: mp3
quality = .1 # quality of the stream sent to the server
lowpass = 3000 # low pass filter to save bandwidth
server = audioX.broadcastify.com # host name of the server
port = 80 # 8000 port of the IceCast2 server, usually 8000
password = XXXXX # stream631 # source password to the IceCast2 server
mountPoint = YYYYY #EMR1 # mount point of this stream on the IceCast2 server
name = YOUR NAME # name of the stream
description = AAAAA # description of the stream
url =
http://localhost # URL related to the stream
genre = Public Safety # genre of the stream
public = yes # advertise this stream?
THE ONLY ITEMS YOU NEED TO EDIT ARE THE SERVER, PASSWORD, AND MOUNTPOINT. This info came in the email from bcfy when you got your feed approved. With any luck you will be able to copy and paste the text above into your terminal window.
To start the text editor in the terminal window type
sudo nano /etc/darkice.cfg. This will create a blank file into which you paste the above text. To save and exit it is cntrl-x then y, then enter.
now simply type
darkice in the terminal window to start the streamer. It will give you a message about recording skips and starting with sudo. Ignore that message.
post back here any error messages that you get.
i am just going by memory here so I hope that I haven’t forgotten anything.