您的位置:網(wǎng)站首頁 > 電器維修資料網(wǎng) > 正文 >
用Linux如何建立自己的Mp3廣播站
來源: 日期:2013-12-24 21:08:42 人氣:標(biāo)簽:
2. 不需要運(yùn)行自己的目錄服務(wù)器;
3.占用更少的系統(tǒng)資源;
我們可以在服務(wù)器上運(yùn)行自己的流服務(wù)器——icecast,使用ices提供流源,客戶端則可
以使用 常用的winamp。
試驗(yàn)環(huán)境:
服務(wù)器平臺(tái):RedHat 7.0
流服務(wù)器:icecast
流源:ices
mp3編碼工具:lame
步驟:
1.獲得相關(guān)軟件
流服務(wù)器icecast:http://www.icecast.org/releases/icecast-1.3.10-1.i386.rpm
流源工具ices:http://www.icecast.org/releases/ices-0.0.1.beta5.tar.gz
編碼工具lame:http://home.elka.pw.edu.pl/~dmierzej/linux/lame/lame-3.87beta-1.i386.rpm
lame庫(kù):http://home.elka.pw.edu.pl/~dmierzej/linux/lame/lame-devel-3.87beta-1.i386.rpm
說明:
A.通?梢允褂胠iveice、shout等軟件為流服務(wù)器提供流(即作為流源),但是我在使
用的過程中發(fā)現(xiàn)ices要穩(wěn)定一些,雖然還是個(gè)beta版的。
B.通常你的每個(gè)mp3文件不可能具有同樣屬性,此時(shí)廣播過程就會(huì)出現(xiàn)一些怪現(xiàn)象,
比如聲音斷斷續(xù)續(xù)、有噪音等等,所以我們必須使用mp3編碼工具lame重新對(duì)其進(jìn)行編碼,來生成屬性一致的mp3文件!
2.安裝icecase
使用以下命令安裝icecast:
rpm –ivh icecast-1.3.10-1.i386.rpm
3.安裝ices
使用以下命令安裝ices:
# tar xvzf ices-0.0.1.beta5.tar.gz
會(huì)在當(dāng)前目錄下生成ices-0.0.1.beta5目錄,用cd命令進(jìn)入該目錄
# cd ices-0.0.1.beta5
然后執(zhí)行:
# ./configure
# make
# make install
編譯好的文件缺省被安裝在/usr/LOCal/icecast目錄下
4.安裝lame
執(zhí)行以下命令來安裝lame mp3編碼工具,該工具用來重新對(duì)mp3文件進(jìn)行編碼,以產(chǎn)生屬性一致的mp3文件。
rpm –ivh lame-3.87beta-1.i386.rpm
rpm –ivh lame-devel-3.87beta-1.i386.rpm
5.配置icecast
icecast的主要配置文件是/etc/icecast.conf,有很多配置選項(xiàng),但是其中的大多數(shù)只要采用缺省配置即可,部分選項(xiàng)意義說明如下:
Port:定義icecast服務(wù)綁定的端口,只設(shè)置一個(gè)即可,通常使用8000端口!
encoder_password:流源連接時(shí)的密碼,使用ices為icecast提供流時(shí)ices必須提供提供這個(gè)密碼,出于安全性考慮可以設(shè)置一個(gè)較為復(fù)雜的密碼!
admin_password:可以通過telnet登錄icecast進(jìn)行遠(yuǎn)程管理,這個(gè)密碼就是登錄icecast時(shí)必須輸入的密碼。
oper_password:通過telnet登錄icecast執(zhí)行限制性命令時(shí)的密碼!
max_clients:同一時(shí)間內(nèi)允許連接到流服務(wù)器的 大客戶數(shù)目。
max_sources:允許同時(shí)廣播的 大流源數(shù)目,流源和流服務(wù)器可以位于不同的機(jī)器上,
并且可以將多個(gè)流源傳輸?shù)酵粋(gè)流服務(wù)器進(jìn)行廣播!
max_admins:可以同時(shí)登錄icecast進(jìn)行遠(yuǎn)程管理的連接數(shù)目。
Logfile:設(shè)置日志文件的位置。
Hostname:設(shè)置icecast綁定的ip地址,缺省綁定到所有ip地址。
server_name:指定icecast服務(wù)器的主機(jī)名或者是ip地址!
client_timeout:設(shè)置當(dāng)無流源時(shí),服務(wù)器斷開已連接客戶的超時(shí)時(shí)間。
stats_log:設(shè)置記錄icecast統(tǒng)計(jì)數(shù)據(jù)的日志文件!
stats_time:設(shè)置stats_log日志文件的更新周期!
max_clients_per_source:設(shè)置可以同時(shí)連接到同一流源的 大客戶數(shù)目。
reverse_lookups:設(shè)置是否對(duì)可以連接進(jìn)行反向DNS解析,為0時(shí)禁止反向DNS解析,
為1時(shí)啟用反向dns解析。
Location:設(shè)置icecast服務(wù)器的地理位置,設(shè)置與否并不重要。
rp_email:設(shè)置icecast服務(wù)器管理員的郵件地址!
Throttle:icecast服務(wù)器可以使用的帶寬閥值,如果達(dá)到這一閥值,新的客戶連接將被拒
絕,單位是兆/秒。
LogfiLEDebuglevel:定義日志的信息詳細(xì)程度!
server_url:定義icecast服務(wù)器的RUL
This should be set to a URL describing this icecast server.
以下是我的配置文件,僅供參考:
#icecast.conf
location Yuxi Yunnan China
rp_email bye2000@yxtc.edu.cn
server_url http://www.yxtc.edu.cn/
max_clients 900
max_clients_per_source 900
max_sources 10
max_admins 5
throttle 10.0
mount_fallback 1
encoder_password secret
admin_password secret
oper_password secret
port 8000
force_servername 0
logfile icecast.log
aCCessfile access.log
usagefile usage.log
logfiledebuglevel 0
consOLEDebuglevel 0
reverse_lookups 0
console_mode 0
client_timeout 30
kick_clients 0
staticdir /usr/share/icecast/static
templatedir /usr/share/icecast/templates
logdir /var/log/icecast
stats_log stats.log
statshtml_log stats.html
stats_time 60
kick_relays 10
transparent_proxy 0
acl_policy 1
6.啟動(dòng)icecast服務(wù)
執(zhí)行以下腳本啟動(dòng)icecast服務(wù):
# /etc/rc.d/init.d/icecast start
7.對(duì)所有mp3文件進(jìn)行重新編碼
采用lame對(duì)mp3文件進(jìn)行重新編碼,從而生成屬性一致的mp3文件。
這要用到Lame命令的以下參數(shù):
--mp3input:輸入文件為mp3文件
-m s:指定所有幀均為立體聲
-b 56:指定新生成mp3文件的波特率,這里指定為56 kbps,單位是kbps
--resample 24:指定新生成mp3文件的采樣頻率,這里指定為24 KHz,單位是KHZ
下面是一個(gè)lame的使用實(shí)例:
lame --mp3input -m s -b 56 --resample 24 old.mp3 new.mp3
- 1
- 2
- 下一頁
【看看這篇文章在百度的收錄情況】