Darkice multiple feeds audio mixing and echo

Status
Not open for further replies.
Joined
Mar 21, 2010
Messages
235
Location
Bellingham Washington
I have been running three feeds on a Raspberry Pi2 for quite some time.

I have to admit I rarely listen to my own feed anymore.

Occasionally I would get feed reports that the airport was heard on the police feed. I thought I had it fixed by using a separate antenna for the airport. But last night a "regular listener" contacted me and said the fire and police feeds have been mixed together for a few months.

I have been listening and sure enough all three of my feeds are being mixed together.

Go listen to any of my feeds and you will hear all three feeds mixed together.

I forgot to mention the echo, earlier today on listening to the police feed I could hear two repeats of everything.
 

JACK26

Member
Joined
Dec 7, 2016
Messages
298
Location
Milpitas, CA
What are the details of your hardware setup? Are you actually feeding all three feeds for that county on a single Rpi2?
 
Joined
Mar 21, 2010
Messages
235
Location
Bellingham Washington
Yes all three feeds are on the one pi.

There are three USB soundcards and three instances of darkice running

I set it up a while ago following instructions I found on the forum here somwhere.

 
Last edited:
Joined
Mar 21, 2010
Messages
235
Location
Bellingham Washington
I see this was moved to a more appropriate forum. :lol:

Here is more detail:

Three separate scanners each have their audio out connected to the Mic input of the Generic USB audio adapter, all plugged into one Raspberry Pi 2 maybe Pi3. As you can see from the picture in my previous post. I am pretty sure it is running Jessie as at the time I set it up that was the latest instructions and maybe even image I found here. There is a start up script that starts darkice and one that checks every minute and relaunches darkice.

I replicated that setup and the script to launch three instances of darkice and can see three instances of darkice running.

I have three separate darkice config files:
Code:
# darkice configuration file
#
# Copy this configuration file to /etc/darkice#.cfg

[general]

duration      = 0     # 0 means forever
bufferSecs    = 10
reconnect      = yes     

[input]

# this can be used if darkice is the sole user of audio capture device:

# Import notes for the "device =" setting on this preconfigured image
#
# Most configurations with one additional USB sound card added will 
# use "plughw:1,0" as the setting for the device.
#
# When adding 2 or more USB sound cards, your first USB sound card will
# start at plughw:0,0 and work it's way up n+1 (hw:1,0 hw:2,0 hw:3,0 and so on
#
# If adding just a single USB sound card for a broadcast, simply use the following:
# device = plughw:1,0
#
# You can verify card and device numbers by running the arecord -l command

device        = plughw:1,0    # hw:0,0 then hw:1,0 then hw:2,0 etc
sampleRate     = 22050     
bitsPerSample      = 16         
channel      = 1         # 1 for mono, 2 for stereo

[icecast2-0]

bitrateMode      = cbr 
format         = mp3
bitrate      = 16 
quality      = 0.1       
channel      = 1     
lowpass      = 4000
sampleRate      = 22050

server         = audio3.broadcastify.com     # Your Master Server Name
port         = 80                  # 80 or 8080
password     = XXXXXXX               # Your Feed Password
mountPoint     = 442650946             # Your Feed Mount Point (Leave out the "/")
name         = Bellingham International - KBLI and Victoria - CYYJ Airports
Code:
# darkice configuration file
#
# Copy this configuration file to /etc/darkice#.cfg

[general]

duration      = 0     # 0 means forever
bufferSecs    = 10
reconnect      = yes     

[input]

# this can be used if darkice is the sole user of audio capture device:

# Import notes for the "device =" setting on this preconfigured image
#
# Most configurations with one additional USB sound card added will 
# use "plughw:1,0" as the setting for the device.
#
# When adding 2 or more USB sound cards, your first USB sound card will
# start at plughw:0,0 and work it's way up n+1 (hw:1,0 hw:2,0 hw:3,0 and so on
#
# If adding just a single USB sound card for a broadcast, simply use the following:
# device = plughw:1,0
#
# You can verify card and device numbers by running the arecord -l command

device        = plughw:2,0    # hw:0,0 then hw:1,0 then hw:2,0 etc
sampleRate     = 22050     
bitsPerSample      = 16         
channel      = 1         # 1 for mono, 2 for stereo

[icecast2-0]

bitrateMode      = cbr 
format         = mp3
bitrate      = 16 
quality      = 0.1       
channel      = 1     
lowpass      = 4000
sampleRate      = 22050

server         = audio9.broadcastify.com     # Your Master Server Name
port         = 80                  # 80 or 8080
password     = XXXXXXX               # Your Feed Password
mountPoint     = 155224334             # Your Feed Mount Point (Leave out the "/")
name         = Bellingham and Whatcom County Fire
Code:
# darkice configuration file
#
# Copy this configuration file to /etc/darkice#.cfg

[general]

duration      = 0     # 0 means forever
bufferSecs    = 10
reconnect      = yes     

[input]

# this can be used if darkice is the sole user of audio capture device:

# Import notes for the "device =" setting on this preconfigured image
#
# Most configurations with one additional USB sound card added will 
# use "plughw:1,0" as the setting for the device.
#
# When adding 2 or more USB sound cards, your first USB sound card will
# start at plughw:0,0 and work it's way up n+1 (hw:1,0 hw:2,0 hw:3,0 and so on
#
# If adding just a single USB sound card for a broadcast, simply use the following:
# device = plughw:1,0
#
# You can verify card and device numbers by running the arecord -l command

device        = plughw:0,0    # hw:0,0 then hw:1,0 then hw:2,0 etc
sampleRate     = 22050     
bitsPerSample      = 16         
channel      = 1         # 1 for mono, 2 for stereo

[icecast2-0]

bitrateMode      = cbr 
format         = mp3
bitrate      = 16 
quality      = 0.1       
channel      = 1     
lowpass      = 4000
sampleRate      = 22050

server         = audio3.broadcastify.com     # Your Master Server Name
port         = 80                  # 80 or 8080
password     = XXXXXXXX               # Your Feed Password
mountPoint     = 120801025             # Your Feed Mount Point (Leave out the "/")
name         = Whatcom County Sheriff, Bellingham Police and Washington State Patrol
Is anyone running a similar setup?

I have turned off the scanners on my fire and air feeds, listen to one of them and you will hear everything from the police feed.
 

DC31

Member
Feed Provider
Joined
Feb 19, 2011
Messages
1,315
Location
Massachusetts
Nothing? Really? C'mon there has to at least one other person running multiple feeds on one computer.

It does not have to be a Raspberry Pi, just has to be using Darkice.
My multiple feed experience is using old original model B RPi's. Using the current pi3 or 2 in your case (yes, my eyes are good enough to make out the pi2 in your photo) i would suspect some involvement with pulseaudio but haven't tested it at all. Pixel runs pulse, the older os doesn't.
 

JACK26

Member
Joined
Dec 7, 2016
Messages
298
Location
Milpitas, CA
Not sure what the problem is since I'm not using a real scanner and using ezstream with a usb rtl2832 type sdr instead but my guess is that there is something wrong with the darkice config files on the rpi. Are you sure the 3 separate usb sound cards are using separate parameters for the different feeds? I would try going through the "method 1" steps again and make sure you have the correct sound card pointing to the correct darkice(n).cfg config file.

PS: What is your startup command sequence?
There is some info here to get details on attached sound cards:
http://www.instructables.com/id/Test-Sound-Card-and-Speakers-in-Raspberry-Pi/

Try this command and make sure the card id's agree with the .cfg file parameters:

cat /proc/asound/modules
 
Last edited:
Joined
Mar 21, 2010
Messages
235
Location
Bellingham Washington
Well yes and no. It's gone but I don't know why for sure. Must have been some kind of ground loop. Right now I have everything separated running two raspberry pi's and let one of my feeds die...
 
Status
Not open for further replies.
Top