This is a very simple plugin that enables streaming from your Windows soundcard directly into SlimServer as a high-quality, lossless, low-latency audio stream.
With a good sound card (like RME, Lynx, Echo, etc.) you can listen to your CD player, phonograph, satelite radio, home stereo, or even other apps running on your computer (using digital loopback in a pro soundcard).
This is based on the wavin2cmd applet I wrote quite a while back, and which I finally found a few spare hours to get working as a plugin.
[update 30-May-2007:]
Version 1.01 posted. Fixes blank display when "nothing" is playing.
Results 1 to 10 of 578
-
2007-05-29, 21:48 #1Member
- Join Date
- Dec 2005
- Posts
- 32
Announce: Wave Input plugin v1.00
Last edited by pbjbryan; 2007-05-30 at 09:35.
-
2007-05-29, 23:03 #2
Very cool.
Feel free to add this to the Plugins area on wiki.slimdevices.com.
I'm sure you'll get lots of interest, this has been something that folks have asked for for years!
All the best,
dean
-
2007-05-30, 01:24 #3
Announce: Wave Input plugin v1.00
I tried this plugin, but can't get anything to play.
I see the Wave Input plugin menu option. When I hit play, it says Now Playing Nothing. If I try to right-arrow into the Wave Input menu option, I get a blank screen.
Is this plugin compatible with 6.5.3, or is it 7.0 only?
Phil
-
2007-05-30, 01:55 #4
I have this working OK on 6.5.3, although I had a problem getting the audio card to behave. I have used the Shoutcast server in the past and I think some of its settings got in the way of this plugin.
Anyway after playing around with the audio tab in control panel it worked OK. The levels were a bit high and I had to reduce the main volume on the PC to about 50% to prevent distortion on the stream.
I also found that streaming with mp3 was very poor quality - haven't looked at that problem yet, but maybe the default settings are for low bitrate??
Apart from that it's a great enhancement, good work.P2 266MHz, ubuntu server 10.04 SBS 7.6.0 - r31284
AMD64x2 ubuntu 10.04, SBS 7.5.2 - r30889
Dell 10v WinXP SBS 7.5.2 - r31264
Dell 10v ubuntu netbook remix 10.04, SBS 7.6.0 - r30830
Players: Classic, Duet, Boom
-
2007-05-30, 07:01 #5Member
- Join Date
- Dec 2005
- Posts
- 32
I've added the plugin to the wiki page http://wiki.slimdevices.com/index.cgi?PluginsAudio.
The MP3 conversion settings are defined in the SlimDevices\server\Plugins\WaveInput\wavin_convert .conf file on your server. These were copied directly from the main convert.conf file, and use the main QUALITY and BITRATE settings configured for your server.
Please note that Windows wave input devices only allow one application to use them at a time, so if you have problems, check if any other apps are using the soundcard.
-
2007-05-30, 07:18 #6
Will this work over a network? That is, sending a signal from a Windows soundcard to a Linux server running slimserver?
-
2007-05-30, 09:46 #7Member
- Join Date
- Dec 2005
- Posts
- 32
You can setup one slimserver to stream to another slimserver over the network. This works with any type of stream, but only in lossy mp3 format. Just "tune-in" the source server on the second server like you would if you were listening to it using iTunes, WinAmp, or any other mp3 player:
(From the server's web interface if no clients are found
You can use MP3 player software (such as WinAmp or iTunes) to listen to your music library with SlimServer by connecting to this URL: http://localhost:9000/stream.mp3
Btw, you can use this same technique to listen to your slimserver from anywhere, including your office or WiFi-connected car (Avis will be offering these soon)!
Also, you can try using wavin2cmd to stream directly from the windows machine to your linux server over a remote pipe. I haven't specifically tried this, but wavin2cmd is designed to support named pipes, so you can experiment with it to see if it works.
-
2007-05-30, 14:52 #8Junior Member
- Join Date
- May 2007
- Posts
- 5
How much latencies did ou get with this "chaining" ?
I experimented some pipe works, using wavin2cmd piped to a remote mplayer on a Linux box with PLink, and I get something around one second latency.
I set the buffer of wavin2cmd to 8192, the number of buffers to 2, used the -nocache option of the remote mplayer, simple DES encryption and compression enabled for PLink.
It should be great if the latency could be as less than 300ms !
-
2007-05-30, 14:54 #9Member
- Join Date
- Dec 2005
- Posts
- 32
Here's a sample playlist file that allows selecting specific inputs on the soundcard without having to reconfigure your default sound device. You can select an input by playing the appropriate source "song" within the playlist. You can even play the entire playlist and use the FWD/REW buttons to quickly switch the source.
This sample uses names appropriate for my system (based on an 18-input RME HDSP Multiface), but you can easily rename these to whatever you like, or even delete unused inputs from the list using the playlist editor.
Here's the text of the attached file:
In essence, the link to each source is of the form "wavin:<n>", where "<n>" is the input channel on the device. The default input is "wavin:0" (this is selected with the Wave Input plugin and configured by Windows), and the 1st input is "wavin:1", etc.Code:#EXTM3U #EXTINF:-1,iPod Input wavin:1 #EXTINF:-1,Phono Input wavin:2 #EXTINF:-1,CD Input wavin:3 #EXTINF:-1,FM Radio Input wavin:4 #EXTINF:-1,S/PDIF Input wavin:9 #EXTINF:-1,2192 ADC Input wavin:5 #EXTINF:-1,MediaMonkey (Digital loopback) wavin:6 #EXTINF:-1,Wavelab (Digital loopback) wavin:7 #EXTINF:-1,Windows (Digital loopback) wavin:8 #EXTINF:-1,Windows (Analog loopback) wavin:10
Notice in the sample that there are several loopback inputs. These are possible in the RME using its digital patchbay to route its outputs back to its inputs. Since I use frequently MediaMonkey and Wavelab, I have these setup to output on their own channels.
The analog loopback is done by selecting the line out as the default record source for the built-in AC97 codec in the Windows control panel.
-
2007-05-30, 15:06 #10Member
- Join Date
- Dec 2005
- Posts
- 32
Cool! I'm glad to hear the pipes are working for you.
The settings you've chosen for wavin2cmd provide about 370ms at 44.1kHz, so the additional 630ms is likely the result of network buffering on each end, the encryption/conversion buffering, and the linux machine's audio output driver latency.
To get 300ms through-latency, you'll need to minimize the buffering wherever you can, and not use encryption/compression, since these add additional buffering and can use processor cycles needed for minimum latency driver performance (this goes up inversely proportional to the buffer size). If you need compression to minimize network traffic, you could try the flac codec.

Reply With Quote


