I may be in the minority but I was always looking for a way to pipe my turntable or other external analogue sources into Roon and then distribute it to my other sources.
Yes I know most audiophiles won’t want to take their turntable and digitize it, but for me, I have one really nice analogue setup, and many more Roon endpoints, and there are times that I want to drop and needle and listen to it on my ceiling system, TV system or headphone system.
Long story short after spending this past weekend experimenting I figured out how to take any analog source and send it (as loss less as possible) to Roon and have it distributed through out my home.
After a few of you have asked me how I have done it, I decided to write a short tutorial. A few things to know first I am not personally an expert in any of the pieces of software I am suggesting, I know enough to be dangerous and while I can probably help out if someone has a question I probably am not the right guy to ask if you want to know exactly how each piece of software works, or exactly what the audio pipeline looks like within each of them.
With the above in mind, Roon in a past release, was updated to include support for internet radio. Internet radio can be streamed at lousy bitrates but it can also be streamed using lossless FLAC. As I thought about my goal of piping analog music into my Roon setup, it dawned on me that if I were to connect an ADC to a computer, and make that computer broadcast an internet radio station, which would be fed from my ADC, I could achieve my goals.
To do this you will need the following things:
- A USB based ADC or a computer with a sound card that can take stereo in. If you want to test this out you can use the stereo in, however for best sound quality you will want an ADC, Schiit Audio makes the Jil, and in my case I will be using a PS Audio NuWave Phono Converter when it arrives next week.
- A computer, preferably with little or no fan noise, to connect to the ADC and handle real time FLAC encoding and the internet radio broadcast. For me I chose to use an older NUC that I put in a fanless case running windows 10. All of the software I will discuss will also support linux, however I have not done that setup and cannot comment on how well or if it will work.
- Our internet Radio Server of Choice, IceCast: http://icecast.org, Icecast properly supports streaming FLAC files.
- A tool to read the ADCs input, encode the Flac files, and send them to icecast, for that I chose to use BUTT (great name): https://danielnoethen.de
High level how to:
Install and configure your ADC.
Install Icecast onto your machine.
Go ahead and start icecast, you can read documentation on how to configure things, but if you are on a local network that is behind a firewall you can leave things like the default password alone, if your computer is exposed to the internet without a firewall change the default passwords before continuing.
To start Icecast, go to the folder where it was installed and click icecast.
A console window will open and Icecast should load do not close it.
Check to see if icecast is running by going to your local host:8000, Icecast should load
Install BUTT, and open it up. Once open click on settings and configure the server connection, fill it in as you see in the screenshot, the password will be hackme unless you changed it. Click Save when done.
Setup BUTT to broadcast in FLAC, make sure you choose the sample rate that matches your ADCs sample rate. The important thing is to set the steaming codec. Recording does not matter. You can click advanced and set the buffer (delay between sound coming in and going out, and the resample quality if you choose).
I want the computer to reboot and reconfigure this connection, so I configured Butt to restart streaming when it is restarted. You can do that by ticking the box in the screenshot below:
To complete this setup you do need to tell icecast and BUTT to restart when windows restarts, just drop shortcuts to each program in the Windows Startup folder.
Now close the BUTT setting and you will see the BUTT window. You can see the levels on the VU meter, play something on the ADC to make sure the VU meter moves. This will tell you things are at least partially working.
Click the play button, not the record button, the play button will connect BUTT to Icecast and begin boardcasting your ADC. Once connected, BUTT will tell you, you will see FLAC as the codec in the BUTT console. Congrats, you have now setup an internet radio station.
Open up a command prompt in windows, and type “ipconfig”, not your IP address, you will need it.
Go into Roon and configure your new internet radio station the following way:
Select an image, a name, and whatever else you would like. The important thing is the stream, fill it in as http://:8000/stream and click save.
Start your new station, you will see it is coming through as FLAC at the sample rate you set in BUTT, and there you have it, analog in for Roon.