2009年 02月 05日 的归档
linux下架设个人电台的方法
两年前(基本上刚好是两年了),我还在用windows的时候,曾经写过一篇win下架电台的文章,后来不用windows了,基本上也就没搞过这个事情了,最近看到有个icecast,就忍不住试了一下,在这里汇报下结果。
首先用于广播的,不用说就是icecast了,安装也就不说了,emerge或者apt-get随便,反正不是难事。装完以后,稍微修改一下 /etc/icecast2/icecast.xml ,里面的内容基本上很好懂,是xml格式,注意 icecast–limits–clients 是最大用户数,按需修改;icecast–authentication–source-password是源密码,这里随便设置一个,后面要用到的;admin-user和admin-password是web管理的时候的用户名和密码,按需修改;listen-socket — port 默认是8000可以不用动,注意这个端口不仅是web管理的端口,也是音频源的连接端口。其他的基本上默认就没问题了。
然后是用于产生音频源的软件,有如下几个选择:
- darkice :只能从声卡获得数据,还需要播放器支持。同时声卡要被占用,重采样以后可能会对音质有影响,我没有用这个。
- ices 2.X :支持声卡模式和文件模式,但是文件只能打开ogg格式的声音,我这里ogg格式的不多,基本没用
- ices 0.X :这个系列的倒是支持从mp3文件获取流,但是不管是gentoo还是ubuntu的源里都没有,需要自己编译。我下载了 ices 0.4 ,编译安装后,怎么配置都连不上源,而且软件包里面自带的文档居然有很多无效的内容,照着配是会出错的,还得我看源码才配置好,但是还是不能把数据送到icecast,出现了 socket error。。。
- mpd :这个是我试成功的一个,mpd/mpc的用法可以自己google一把,这里就稍微提下不同点。
mpd用于icecast唯一的区别就是在 /etc/mpd.conf 里面,audio_output 那段要如下设置:
audio_output { type "shout" #必须 name "bones radio" #随便起个名 host "localhost" #icecast主机 port "8000" #icecast端口 mount "/mpd" #挂载点 password "xxx" #icecast密码 bitrate "128" #比特率 format "44100:16:2" #格式 user "source" #icecast用户名 encoding "mp3" #输出流编码方式 } |
好了,配置完了以后,就
sudo /etc/init.d/icecast start
sudo /etc/init.d/mpd start
启动服务,再用你的mpc控制mpd播放,就可以对外广播啦。
收听广播,执行 mplayer http://your-IP:your-port/mpd 就行了。还可以用浏览器打开 http://your-IP:your-port 就可以看到当前播放的信息等,用之前说的web管理用户名和密码登录还可以看到更多信息和进行更多操作。