Two Options to Live Stream the Echolink Net to aNONradio
This resource provides suggested configurations for a licensed ham radio operator to participate in the Echolink net while streaming the audio to aNONradio. Use only one of the following options per streaming session.- Assumptions:
- Operator is an amateur radio licensed individual
1. VOIP Solution
Streaming Connection via VOIP
- ensure voip is enabled in the aNONradio dj manage tool
- call 1095@sdf (mute your mic)
Echolink Connection
- open Echolink and connect to node 9229
- minimize background noises
- unmute voip mic
- speak into the phone and the echolink mic simultaneously
- ensure the phone picks up the echolink audio
Monitor Audio Levels
monitoring audio levels with mpv visualization to ensure phone is picking up echolink participantsmpv '--lavfi-complex=[aid1]asplit[ao][a];[a]showvolume[vo]' \
--alpha=no http://anonradio.net:8000/anonradio
2. Pulseaudio OBS BUTT Solution (Linux)
Credit: NapoleonWils0nNote: Run Echolink with either QTel or install and run the Windows binary using WINE
Requires: Pulse Audio, pavucontrol, OBS, BUTT, Echolink
Design Overview
┌────┐
│real│
│ mic│
└─┬┬─┘
││
┌────┼┼─────┐
│ └┘ │
│ │
│ │
┌────▼───┐ ┌───▼───┐ ┌───────┐
│ │ │ │ │virtual│ ┌──────────┐
│echolink│ │ OBS ├─────► mic │ ┌─────────┐ │ icecast │
│ ├───► │ └──┬─┬──┘ ──────► BUTT ├─────► │
│ │ │ │ │ │ │ │ │ aNONradio│
└──┬──▲──┘ └───────┘ │ │ └─────────┘ └──────────┘
│ │ └─┘
│ │
┌─▼──┴─────────┐
│ TECHLINK │
│ Node 9229 │
└──────────────┘
Setup a Virtual Microphone
- Create a (1) virtual audio output device (e.g. "null sink") and a (2) virtual microphone (e.g. "virtual source")
References: Pulse Audio Documentation for module-null-sink
pactl load-module module-null-sink sink_name=Source pactl load-module module-virtual-source source_name=VirtualMix master=Source.monitor
- Optional: Persistence Settings (survives reboot)
- Create a configuration file ~/.config/pulse/default.pa
# include the default.pa pulseaudio config file .include /etc/pulse/default.pa # null sink .ifexists module-null-sink.so load-module module-null-sink sink_name=SourceA .endif # virtual source .ifexists module-virtual-source.so load-module module-virtual-source source_name=VirtualMic .endif
Run the Application Stack
- Launch Echolink
- Launch BUTT
- Launch OBS
Configure OBS
- Open Settings and select Audio
- Advanced -> Monitoring Device ->
Monitor of Null Output - Add a Source and select "Audio Input Capture (PulseAudio)
Right click the source and ensure the device is your microphone - Click on the gear icon in the Audio Mixer for your new source and select
Advanced Audio Properties . Set Audio Monitoring to "Monitor and Output" - Add a Source and select "Audio Output Capture (PulseAudio)
- Click on the gear icon in the Audio Mixer for your new source and select
Advanced Audio Properties . Set Audio Monitoring to "Monitor and Output"
Configure Pulse Audio (Requires an optional GUI tool called `pavucontrol`)
- Launch pavucontrol
- Select the "Recording" tab of the Pulse Audio Volume Control Window You should have 5 entries (Echolink, Virtual Source Stream of Virtual Source VirtualMix on Monitor of Null Output, OBS: Audio Input Capture, OBS: Aduio Output Capture, ALSA plug-in [butt])
- Configure the
from entry for each device as follows:
Echolink <- (Select your microphone device)
Virtual Source Stream <- Monitor of Null Output
OBS: Audio Input Capture <- (Select your microphone device)
OBS: Audio Output Capture <- Virtual Source VirtualMic
ALSA plug-in [butt] <- Virtual Source VirtualMic
Configure BUTT
- Expand Settings
- "Main" tab: Server Settings: ADD -> Name: SDFARC; Type: IceCast; Address: anonradio.net; Port: 8010; Password: ?; IcCast mountpoint: sdfarc; IceCast user: sdfarc Contact the anonradio mailing list for help with the password.
- "Audio" tab: Audio Device: pulse; Channel: Stereo; Samplerate: 44100Hz
- "Audio" tab: Streaming: Codec MP3; Bitrate 192k
- "Main" tab: Configuration: Save
- Close Settings; Click the play icon to start streaming to the /sdfarc mountpoint