PDA

View Full Version : Stream What You Hear (SWYH) -- an updated alternative to WaveInput for Windows users



moxbox
2016-12-10, 22:47
This thread is for people who are looking for a way to capture the audio stream that Windows sends to the sound card, and direct it to LMS.

This functionality used to be provided by the WaveInput plugin, and WaveInput may still work for older PCs and versions of Windows (< Win8). But WaveInput relies on an audio software device, "Stereo Mix" that is no longer included in Windows distributions. The WaveInput code is also a bit of an orphan now -- the person who originally coded it up no longer maintains it, and the long-suffering maintainer (@bpa) is not planning to update the code to deal with the OS changes. You can find more details on the WaveInput thread (http://forums.slimdevices.com/showthread.php?35718-Announce-Wave-Input-plugin-v1-00).

As luck would have it, SWYH is a simple third party option that solves this problem.

An example of when you might need SWYH or WaveInput would be when you want to redirect the output of an internet streaming service to LMS, so that it can distribute the stream to the player(s) you choose. Note that if there is a dedicated working plugin for the streaming service you're interested in (e.g., Spotify, Soundcloud) then you're probably better off using that. Chances are the dedicated plugin will provide better sound quality and control via the LMS interface. WaveInput, and SWYH, should be considered a last resort. But as streaming services multiply and evolve, sometimes there may not be a dedicated working LMS plugin, and the SWYH option is good all purpose solution to this.

The instructions below work for me, running Windows 10 on a Lenovo Thinkpad Yoga. I'm more of an end user than a programmer, so if you have trouble getting this to work, I'll be happy to try to troubleshoot, but I can't make any promises. And H/T to @bpa and @kidstypike who helped me get this working on my system.


Instructions:

1. Download the current version of SWYH from their website: http://www.streamwhatyouhear.com/download/

(consider donating to support the software, they provide a link on their home page (http://www.streamwhatyouhear.com/)).


2. Install the package on your laptop or PC

I used the default options for the most part. But I did have it create a shortcut on the desktop. Since this is a package that runs in the background, it's a bit easier to launch and troubleshoot with that shortcut.

The last install screen asks if you want to launch the program -- yes is checked by default, so as long as you don't change that, the program will start up when you finish the install.


3. Find and open the SWYH program interface

To interact with SWYH when it's running, you need to find it in your "system tray". Depending on how many programs you have running in the background it will either be visible in the default tray, or you'll need to click the carat to display the rest of the icons to find it. In addition, on my system, the dark color of the SWYH icon makes it almost impossible to see:

21690



Note that if you right-click the SWYH icon, one of the options is labeled "Stream to". I can see all of my players when I choose this, but you can't just pick your player and have the stream sent to it. You need to set up the connection in LMS.


4. Right click the SWYH icon and pick the settings option.
Set the HTTP port to a high number so it doesn't interfere with other defaults (I used 50011).

21691



5. Right click the SWYH icon and pick "Tools -> HTTP Live Streaming"

21692



You're going to copy this http address into a new "Favorite" in LMS



5. Open the LMS web interface, and navigate to edit your "Favorites". Create a new favorite (I call mine SWYH) and copy over the url from the SWYH stream.

21693



After you save this, you're ready to go. Fire up an audio stream in your browser, navigate to LMS, select the SWYH favorite, and press play!


A couple of other things to note:

1. There is a lag in the stream you'll hear on your squeezebox player, so it's a good idea to turn off your PC/laptop speakers (this won't affect the SB player -- you control the volume for that from your LMS UI).

2. You can control the selection/distribution/volume of this stream with other LMS controllers like Ipeng.

moxbox
2016-12-10, 22:48
Check back later.

garym
2016-12-11, 08:17
Thanks for posting this. A couple of additional thoughts:

1. One should "reserve" the IP address of the computer running SWYH. Otherwise the IP addressed used in the LMS SWYH "favorite" could be different each time the computer connects with the local network.

2. Even if the user doesn't see a player listed in the SWYH settings, it doesn't matter if you try to add a player or search for a player. One can simply leave this blank. The only important point is that the SWYH streaming link is pasted into a favorite in LMS. Then when streaming, LMS will play this to any and all players connected to LMS,

d6jg
2016-12-11, 15:35
I'd change the streaming option from MP3 to PCM - the URL remains as is - and yes I'd make the host a static IP by reserving through DHCP.

moxbox
2016-12-11, 16:11
I'd change the streaming option from MP3 to PCM.

Having just looked up the difference -- the benefit of this would be that the PCM stream is not compressed?

garym
2016-12-11, 16:19
Having just looked up the difference -- the benefit of this would be that the PCM stream is not compressed?

Correct. But if wifi connected it will place more demand on the bandwidth.

d6jg
2016-12-11, 16:47
Yes. Personally I would always wire a "source" whatever it is.


Sent from my iPhone using Tapatalk

castalla
2016-12-11, 17:02
Sort of works .... music streams show strange glitches where music briefly skips (barely noticeable but still evident even to my clapped out ears!)

moxbox
2016-12-11, 17:13
Correct. But if wifi connected it will place more demand on the bandwidth.

I figured the http stream would be renamed after I changed the settings from MP3 to PCM/L16. But it has the same name it had before, with the "mp3" at the end `http://192.168.0.11:50011/stream/swyh.mp3`

Is this what yours looks like too?

castalla
2016-12-11, 17:24
I figured the http stream would be renamed after I changed the settings from MP3 to PCM/L16. But it has the same name it had before, with the "mp3" at the end `http://192.168.0.11:50011/stream/swyh.mp3`

Is this what yours looks like too?

Yes

moxbox
2016-12-11, 18:03
Sort of works .... music streams show strange glitches where music briefly skips (barely noticeable but still evident even to my clapped out ears!)

I'm not hearing any skips on my setup.

castalla
2016-12-11, 18:07
I'm not hearing any skips on my setup.

I suspect it's my win7 device. I'll try on another device.

kidstypike
2016-12-12, 08:32
An example of when you might need SWYH or WaveInput would be when you want to redirect the output of an internet streaming service to LMS, so that it can distribute the stream to the player(s) you choose. Note that if there is a dedicated working plugin for the streaming service you're interested in (e.g., Spotify, Soundcloud) then you're probably better off using that. Chances are the dedicated plugin will provide better sound quality and control via the LMS interface. WaveInput, and SWYH, should be considered a last resort. But as streaming services multiply and evolve, sometimes there may not be a dedicated working LMS plugin, and the SWYH option is good all purpose solution to this.



You can also use SWYH to stream CDs from your computers CD/DVD player to Squeezeboxes.

And also stream audio content from any device connected to the line-in socket on your computer, e.g. phones, tablets, vinyl etc..