I am consolidating all my streaming ports to 8000 for ShoutCast unencrypted and 8002 for encrypted then IceCast non-encrypted streams to port 8030 with encrypted IceCast on port 8032 with the same mounts for all bit rates. I’m making this change not solely for the benefit of streaming ssl so modern browsers and some applications will not block the unencrypted streams I wanted less ports opened. I ad intended to do this for a while but had to prioritize and get my infrastructure in place first before implementing changes on top of that layer.
You can still stream at different bitrates but now to get the ssl version of the streams for IceCast you would use port 8032 instead of 8030 and 8002 for ShoutCast instead of 8000 for unencrypted.
Here’s a list of the streams you can type of copy and paste into your favorite application or browser (use encrypted for modern browsers) to play the music streams:
Icecast non-encrypted streams:
http://dhoytt.com:8030/320kbps
http://dhoytt.com:8030/160kbps
http://dhoytt.com:8030/128kbps
Icecast encrypted streams:
Shoutcast non-encrypted streams:
http://dhoytt.com:8000/320kbps
http://dhoytt.com:8000/192kbps
http://dhoytt.com:8000/128kbps
Shoutcast encrypted streams:
As I tend to, I made this a modular change and made it as robust as possible, I tried different methodologies using Apache and Nginx I was familiar with but ultimately opting to go with stunnel which seemed to work better for streaming unencrypted music without added modules. My embedded music players on the site will now have the appropriate encrypted music streams in them. Since my stream is sourced by my W2019 Data Center server and must interact with that applications encoder unencrypted I wasn’t sure how the binds to the network ports would behave on my Linux system I use to relay the streams but worked that out and things are looking good!