claudio b.
2006-Oct-21 04:22 UTC
[Icecast] Can ices read/stream a remote file rather than a local file?
Would it possible to use ices to send to icecast an audio file that it's not located on the same machine where ices is running, but on another machine? I've checked through the source code of ices, and found out that it uses PERL's read function. Maybe by changing this code I would get my result? What do you suggest? If this is not possible, could ices in some way "upload" the remote audio file to its own machine (so that, later, it can stream it to icecast)? Finally, if nothing of this is possible with ices/icecast, would it be possible with some other input source or stream program? Thanks to anyone who spends time and effort in replying. .claudio
David Baelde
2006-Oct-21 15:55 UTC
[Icecast] Can ices read/stream a remote file rather than a local file?
Hi, A first possibility is to make your remote file look local, using some network filesystem: fusesmb, ftpfs, sshfs, etc. However, a network error occuring while Ices is decoding your file may crash the stream of make it lag. Otherwise, using perl-scriptability of Ices, you can make it download files in advances (using whatever lib or external program from Perl) and then pass them to Ices, and finally erase them after playback. It's not exactly straightforward. There may be better and easier solutions. Another possibility is to move to another tool. I developped liquidsoap after having tried to pack several features in a perl script used with Ices, and ended up with a messy unmaintainable script. Liquidsoap handles remote files transparently (http,https,ftp,smb) and does much more: http://savonet.sf.net/wiki/Liquidsoap. Feel free to ask questions! Hope this helps. -- David