文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>在 FC5 架設 icecast 多媒體串流伺服器

在 FC5 架設 icecast 多媒體串流伺服器

时间:2006-07-12  来源:lzhw_lucky

列印自: 永無止境的文件
位置: http://nonona.com/article.php/965
在 FC5 架設 icecast 多媒體串流伺服器

icecast 是一套開放源碼 (Open Source) 的多媒體串流伺服器 (Streaming Server), 支援 MP3 與 Ogg Vorbis 串流格式, 串流資料則由其他支援 icecast 的 Source Clients (或稱 Streamer) 提供. 例如:

  • ices 將電腦中的 MP3 檔案轉成串流資料
  • darkice 將音效卡的聲音來源 (如: Line-in、Mac 或是電腦上正在播放的音樂) 轉成串流資料

本篇是在 Fedora Core 5 架設 icecast + ices + darkice, 讓 Windows Media Player 使用者收聽 MP3 串流的操作記錄:

以下皆使用 yum 安裝所需的套件, yum 設定請參考 YUM & APT 套件管理調校

安裝 icecast

官方網頁: http://icecast.org/index.php

yum install libtheora-devel speex-devel
wget http://downloads.xiph.org/releases/icecast/icecast-2.3.1-0.src.rpm
rpmbuild --recompile icecast-2.3.1-0.src.rpm
cd /var/tmp/icecast-root
cp -r * /

環境設定

mkdir /var/log/icecast
chmod 777 /var/log/icecast

vi /etc/icecast.xml

修改:

1
/var/log/icecast
nobody
nobody

新增:


/ices
letmein


/darkice
hackme

安裝 ices

ices0 支援 MP3 格式, ices2 支援 Ogg Vorbis 格式 (詳見 icecast.org ices page)
以下是 ices0 的安裝過程:

yum install libshout-devel lame lame-devel faad2-devel flac-devel
wget http://downloads.us.xiph.org/releases/ices/ices-0.4.tar.gz
tar -zxf ices-0.4.tar.gz
cd ices-0.4
./configure
make
make install

環境設定

cd /usr/local/etc
mv ices.conf.dest ices.conf

vi ices.conf 限制串流頻寬

64
1

find /path/to/mp3/folder/*.mp3 > playlist.txt 製作 mp3 檔案清單

安裝 darkice

官方網頁: http://darkice.sourceforge.net/

安裝 lame (yum 安裝的 lame 與 lame-devel 似乎不能讓 darkice 的 configure 採用)

wget http://nchc.dl.sourceforge.net/sourceforge/lame/lame-3.96.1.tar.gz
tar -zxf lame-3.96.1.tar.gz
cd lame-3.96.1
export CC=gcc32
./configure --with-fileio=lame --without-vorbis --disable-gtktest --enable-nasm --enable-expopt=full --prefix=/usr
make
make install
unset CC

安裝 darkice

wget http://nchc.dl.sourceforge.net/sourceforge/darkice/darkice-0.17.tar.gz
tar -zxf darkice-0.17.tar.gz
./configure
make
make install

環境設定

vim /usr/local/etc/darkice.cfg

duration = 0 播放時間設定, 單位為秒. 0 表示永遠播放

[icecast2-0] 設定檔中只保留 [general]、[input] 和 [icecast2-0] 這三個 label

format = mp3
server = 127.0.0.1
mountPoint = darkice

啟動服務

/usr/bin/icecast -b -c /etc/icecast.xml

/usr/local/bin/ices -B -c /usr/local/etc/ices.conf

/usr/local/bin/darkice -c /usr/local/etc/darkice.cfg &

線上收聽

啟動支援 MP3 播放的軟體 (如: Windows Media Player, WinAMP, MPlayer...)

開啟位址: http://your.linux.host.ip:8000/ices (連結到 ices 串流)

或是 http://your.linux.host.ip:8000/darkice (連結到 darkice 串流)

如果使用瀏覽器開啟 http://your.linux.host.ip:8000, 可登入 icecast web 管理介面或查看相關資訊

利用 MPlayer & Lame 將目錄裡所有的 .wma 檔一口氣通通轉成 .mp3 格式

yum install mplayer (codecs 安裝方式請參考: MPlayer on Fedora Core 3 安裝實錄)

vi wma2mp3

#!/bin/bash

#將目前路徑存入 current_directory 變數中
current_directory=$(pwd)

#檔名處理: 將空白字元替換成底線 ( _ )
for i in *.wma; do mv "$i" `echo $i | tr ' ' '_'`; done 2> /dev/null

#檔名處理: 將大寫字元轉成小寫
for i in *.[Ww][Mm][Aa]; do mv "$i" `echo $i | tr '[A-Z]' '[a-z]'`; done 2> /dev/null

#mplayer 將 .wma 檔案轉成 audiodump.wav, lame 再將 .wav 轉成 .mp3 格式 (內容寫入原本的 .wma 檔)
for i in *.wma; do mplayer -vo null -vc dummy -af resample=44100 -ao pcm:waveheader $i && lame -ms audiodump.wav -o $i; done

#將已轉好的 *.wma 檔更名為 *.mp3 (basename 檔名 [末端字元] → 去除指定的末端字元)
for i in *.wma; do mv "$i" "`basename "$i" .wma`.mp3"; done

#移除過程中產生的 .wav 檔
rm audiodump.wav

chmod +x wma2mp3

參考資料: LinuxQuestion.org - Convert WMA to MP3

延伸閱讀:

  • 音樂轉檔、裁切工具讓你自製 MP3 手機鈴聲
  • Checko's Blog - PVR Test ....music streamming
  • Enable .OGG file playback support for Windows Media Player

其他 Open Source Streaming Server:

相关阅读 更多 +
排行榜 更多 +
龙珠格斗火柴人

龙珠格斗火柴人

飞行射击 下载
荒野恐龙猎手安卓版

荒野恐龙猎手安卓版

飞行射击 下载
超凡坦克英雄

超凡坦克英雄

飞行射击 下载