From: <is...@fr...> - 2008-03-27 22:36:24
|
Hello, I wish to stream from my Winamp (@home) to my liquidsoap. Do i have to use "input.harbor" or "input.http" ? I don't understand the difference ? (Quand j'était jeune j'ai trop dormi pendant les cours d'Anglais) input.harbor seems the solution. from documentation : "It starts a listening server on where any Icecast2-compatible source client can connect" I don't really know if Winamp with shoutcast's plugin is Icecast compatible ? ( My webradio use a "sc_serv" Shoutcast as "out" ). That's not the point, i can try it. my problem is about the source : do i have to set it up like that "http://localhost:8020" and Liquidsoap listen the 8020 port and when there is an input signal automatically switch to this input source ? or by using the IP adress from my home computer ? "http://82.235.xx.xx:8020" Danke sehr, Spaciba, Choukrane ! |
From: David B. <dav...@gm...> - 2008-03-28 10:06:30
|
Hi, Input.http() pulls data from an icecast or shoutcast server -- or even an HTTP server. It means that you need a server between your winamp and liquidsoap. Winamp connects to it (normal procedure) and liquidsoap connects as a client using an URL like "http://yourcastserver:8000/mount". Having an icecast server in between means that there is one more buffer, so more latency. Moreover, liquidsoap has no way to know when you're streaming: all it will do is poll every couple seconds, asking the broadcast server whether there is a stream to relay. This creates yet another extra latency -- but try before deciding that it matters. Input.harbor() has a mini-icecast server built-in. Your winamp can then just connect to liquidsoap. But here, I think it doesn't work that well if your client is for shoutcast and not icecast. This solution avoids the extra hop throught a broadcasting server, and the polling. Notice that it still won't give you a low latency, the protocol isn't designed for that. Unfortunately I can't write a harbor tutorial right now, I don't use it that often... from my memories it's not too tricky. You can start with the harbor example there: http://savonet.sourceforge.net/wiki/wikka.php?wakka=LiqExamples Have fun, David |
From: Romain B. <to...@ra...> - 2008-03-28 11:20:35
|
Le Friday 28 March 2008 10:51:40 David Baelde, vous avez écrit : > Having an icecast server in > between means that there is one more buffer, so more latency. > Moreover, liquidsoap has no way to know when you're streaming: all it > will do is poll every couple seconds, asking the broadcast server > whether there is a stream to relay. This creates yet another extra > latency -- but try before deciding that it matters. And spams the server's logs.. To me input.http is interesting when you want to relay a stream that will be most of the time available, or is expected to be.. > Input.harbor() has a mini-icecast server built-in. Your winamp can > then just connect to liquidsoap. But here, I think it doesn't work > that well if your client is for shoutcast and not icecast. This > solution avoids the extra hop throught a broadcasting server, and the > polling. Notice that it still won't give you a low latency, the > protocol isn't designed for that. Unfortunately I can't write a harbor > tutorial right now, I don't use it that often... from my memories it's > not too tricky. You can start with the harbor example there: > http://savonet.sourceforge.net/wiki/wikka.php?wakka=LiqExamples Quick and dirty howto: 1) Relevant settings are: set("harbor.bind_addr","127.0.0.1"): Use "0.0.0.0" here if you want the harbor server to receive streams from external machines, or a better value if you want to restrict to your LAN or else.. set("harbor.icy",false): Set to true is the source client is designed for shoutcast. ICY protocol is normaly supported, but more testing wouldn't hurt, on the contrary :-) set("harbor.username","source"), set("harbor.password","hackme"): Source user and password. Most of the time, the user shoudn't be changed. set("harbor.port",8005): Port for listening to incoming connections. Is isually 8000 with icecast and shoutcast. Also, note that if your use ICY (shoutcast), the port n+1 (here 8006) must also be open. But, the source client is setup to connect to port n (here 8005). set("harbor.timeout",30.): Timeout for source connection when latency happens (in seconds). 2) Create a source in your script: source = input.harbor("prout") Then, when you run the script, a harbor server will be started, accepting source connections for mountpoint "prout" (or "/prout"), with associated settings. source is then available when a source client is connected and sending audio data, as with icecast.. I'll write a tutorial for the new website.. Romain -- There is a land far, far away Where there's no night, there's only day Look into the book of life and you will see That there's a land far, far away |
From: David B. <dav...@en...> - 2008-03-28 12:40:01
|
Just a thought: running "liquidsoap --conf-descr-key harbor" gives almost the tutorial you just wrote -- this is great. Only a couple details are missing -- could be added when you write a full doc on harbor soon. |
From: Romain B. <to...@ra...> - 2008-03-28 14:35:37
|
Le Friday 28 March 2008 12:20:19 Romain Beauxis, vous avez écrit : > set("harbor.port",8005): Port for listening to incoming connections. Is > isually 8000 with icecast and shoutcast. Also, note that if your use ICY > (shoutcast), the port n+1 (here 8006) must also be open. But, the source > client is setup to connect to port n (here 8005). I forgot: shoutcast source clients can only send to the "/" mountpoint, so the input source should be: input.harbor("/") If you want my advice, avoid using shoutcast source clients, it's too messy ;-) Romain -- The rich man's wealth is his strong city: the destruction of the poor is their poverty. - Proverbs 10:15 The rich man's wealth is in the city Vexation of the soul is vanity Destruction of the poor is their poverty - Peter Tosh, Fools Die |
From: <is...@fr...> - 2008-03-28 17:21:31
|
hi, thank for all , I have to test. > If you want my advice, avoid using shoutcast source clients, it's too > messy ;-) > You're right, but it's a "ready to go" solution for a dj, who's know nothing about streaming, to make live mix @home from his own computer, under Windows OS. just running Winamp( which is very popular), setting up the DNAS plugin and let's go. VLC is more complicated (less friendly user) to setting up. Bon week-end |
From: Marcin L. <ww...@sa...> - 2008-03-28 17:34:12
|
is...@fr... pisze: > hi, > > thank for all , I have to test. > >> If you want my advice, avoid using shoutcast source clients, it's too >> messy ;-) >> > > You're right, but it's a "ready to go" solution for a dj, who's know > nothing about streaming, to make live mix @home from his own computer, under > Windows OS. > just running Winamp( which is very popular), setting up the DNAS plugin and > let's go. > > VLC is more complicated (less friendly user) to setting up. Maybe use ices or any other icecast-compatible windows software? There's plenty of them and they're quite easy to use. m. |