diff --git a/README.md b/README.md index 446816c..b9aeef8 100644 --- a/README.md +++ b/README.md @@ -37,53 +37,53 @@ The streamer relies on two core pieces of software: a capture/encoding client an 2. Configure Icecast by following the prompts to set your broadcast passwords. 3. Identify your USB audio device using `arecord -l` to find the correct ALSA card number. you should see something similar to -``` -**** List of CAPTURE Hardware Devices **** -card 1: Codec [USB Audio Codec], device 0: USB Audio [USB Audio] - Subdevices: 1/1 - Subdevice #0: subdevice #0 -``` + ``` + **** List of CAPTURE Hardware Devices **** + card 1: Codec [USB Audio Codec], device 0: USB Audio [USB Audio] + Subdevices: 1/1 + Subdevice #0: subdevice #0 + ``` 4. Edit the `/etc/darkice.cfg` file to link your hardware capture device to the Icecast server. -``` -[input] -device = hw:1,0 # OSS DSP soundcard device for the audio input -sampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100 -bitsPerSample = 16 # bits per sample. try 16 -channel = 2 # channels. 1 = mono, 2 = stereo -``` + ``` + [input] + device = hw:1,0 # OSS DSP soundcard device for the audio input + sampleRate = 44100 # sample rate in Hz. try 11025, 22050 or 44100 + bitsPerSample = 16 # bits per sample. try 16 + channel = 2 # channels. 1 = mono, 2 = stereo + ``` 5. Icecast streams: continue to edit the '/etc/darkice.cfg' file and add the configuration nof your choice, or both MP3 is compatible with more devices but Opus has usually greater quality - ``` -# ========================================== -# Stream 1: High Compatibility (MP3) -# URL: http://:8000/vinyl.mp3 -# ========================================== -[icecast2-0] -bitrateMode = cbr # Constant bitrate for maximum MP3 compatibility -format = mp3 -bitrate = 320 # High quality MP3 -server = localhost # Or the IP of your Icecast container -port = 8000 -password = hackme # Must match ICECAST_SOURCE_PASSWORD -mountPoint = vinyl.mp3 -name = Vinyl Stream (MP3) -description = Turntable broadcast in MP3 format + ``` + # ========================================== + # Stream 1: High Compatibility (MP3) + # URL: http://:8000/vinyl.mp3 + # ========================================== + [icecast2-0] + bitrateMode = cbr # Constant bitrate for maximum MP3 compatibility + format = mp3 + bitrate = 320 # High quality MP3 + server = localhost # Or the IP of your Icecast container + port = 8000 + password = hackme # Must match ICECAST_SOURCE_PASSWORD + mountPoint = vinyl.mp3 + name = Vinyl Stream (MP3) + description = Turntable broadcast in MP3 format -# ========================================== -# Stream 2: High Efficiency / Quality (Opus) -# URL: http://:8000/vinyl.opus -# ========================================== -[icecast2-1] -bitrateMode = vbr # Variable bitrate is ideal for Opus -format = opus -bitrate = 128 # Opus sounds incredibly transparent at 128kbps -server = localhost # Or the IP of your Icecast container -port = 8000 -password = hackme # Must match ICECAST_SOURCE_PASSWORD -mountPoint = vinyl.opus -name = Vinyl Stream (Opus) -description = Turntable broadcast in Opus format - ``` + # ========================================== + # Stream 2: High Efficiency / Quality (Opus) + # URL: http://:8000/vinyl.opus + # ========================================== + [icecast2-1] + bitrateMode = vbr # Variable bitrate is ideal for Opus + format = opus + bitrate = 128 # Opus sounds incredibly transparent at 128kbps + server = localhost # Or the IP of your Icecast container + port = 8000 + password = hackme # Must match ICECAST_SOURCE_PASSWORD + mountPoint = vinyl.opus + name = Vinyl Stream (Opus) + description = Turntable broadcast in Opus format + ``` ### Option B: Docker Compose Deployment If you prefer a containerized homelab setup, you can deploy the stack using Docker Compose.