試試架設自己的網路電台來玩玩!—Icecast2(一)

2010-04-03003.jpg

以前對於網路電台很好奇,不知道是如何架設的?像是常看到的SHOUTcast或是Icecast2這些伺服器套件到底他們如何運作。因此找一下資料,原來他們基本上是不做任何播放的動作而他們的主要工作就是忠實的將所支援的音源由伺服器端傳送到客戶端去。
而要安裝和使用Icecast2或SHOUTcast也相當容易,因為他們幾乎各種作業平台都有其支援的套件,你可以到他們的開發網站來下載或是從套件庫內就可以下載和安裝來使用。
Icecast2:當安裝好後,他的設定檔為icecast.xml,其中預設port:8000(可視情況修改),其中比較要注意的是他幾個密碼像是<source-password>hackme(可視情況修改)</source- password>這是預設的通關碼就是音源要掛上伺服器的通關碼,還有就是管理者admin的web頁面管理登入密碼<admin- password>hackme(可視情況修改)</admin-password>。若是架設在Linux(如Ubuntu)上要讓他自動啟動,請修改/etc/default/icecast2內容中的ENABLE=true。
音源部分:再傳送音源部分,像是在Ubuntu 上我們可以利用MPD為我們的音源傳送的單元;而在Windows系統上像是Foobar2000或是Winamp都有外掛程式來處理這個工作如 Edcast for Foobar2000或Winamp。
若使用MPD為音源,請先關閉MPD,且在MPD的設定檔/etc /mpd.conf找到如下列的設定並將其原有的註解(#)取消,然後再次啟動MPD即可。

... # An example of a shout output (for streaming to Icecast): # audio_output { type "shout" encoding "ogg" # optional name "My Shout Stream" host "localhost" port "8000" mount "/mpd.ogg" password "hackme" # quality "5.0" #和bitrate兩者取其一。 bitrate "128" format "44100:16:1" protocol "icecast2" # optional user "source" # optional description "My Stream Description" # optional genre "pop" # optional public "no" # optional timeout "2" # optional } ...

若以Foobar2000為音源,要起動Edcast外掛程式,在Preferences–>Playback–>DSP Manager內將edcast V3由右邊(Available DSPs)增加到左邊(Active DSPs),然後點選音樂播放就會出現edcast的視窗和進入設定,當然加入新的音源傳送掛到Icecast2上去點選Add Encoder就會出現一組設定如下圖

2010-04-02001.jpg

2010-03-31003.jpg

其中傳輸品質你可以選擇Bitrate或是Quality,壓縮格式(Encoder Type)可以是mp3、ogg或aac,伺服器類型(Server Type)除了Icecast2外SHOUTcast也支援,伺服器位址(Server IP),伺服器連接埠(Server Port)預設8000,伺服器通關碼(Encoder Password)預設為hackme,還有就是Icecast2所必要有的連接點(Mountpoint)預設為/stream.ogg。

在Linux上的套件庫內還有一個Icecast2自家的音源客戶端程式ices2(Ogg Vorbis格式),當安裝好後先建立幾個目錄夾分別來放置我們的logfile、設定檔和播放清單(如/var/log/ices2、/etc /ices2、/etc/ices2/playlist)。建立好後就開始建立播放清單(ices2輸入模式有許多種像是OSS、ALSA、 Playlist等,這次我們選擇Playlist模式),在終端機程式上鍵入

~#find /home/julian/av -name "*.ogg" > /etc/ices2/playlist/playlist.txt就會建立一個播放清單(音樂檔案必須是Ogg Vorbis格式),在來就是建立ices2的設定檔(*.xml),你可以從/usr/share/doc/ices2/examples/ices- playlist.xml拷貝過來使用或是自己建立類似如下:

<?xml version="1.0"?>
<ices>
    <background>1</background>
    <logpath>/var/log/ices2</logpath>
    <logfile>shout.log</logfile>
    <loglevel>4</loglevel>
    <consolelog>0</consolelog>
     <stream>
        <metadata>
            <name>mynas stream</name>
            <genre>Pop</genre>
            <description>A short description of your stream</description>
        </metadata>
         <input>
            <module>playlist</module>
            <param name="type">basic</param>
            <param name="file">/etc/ices2/playlist/playlist.txt</param>
            <param name="random">1</param>
            <param name="restart-after-reread">0</param>
            <param name="once">0</param>
        </input>
         <instance>
            <hostname>localhost</hostname>
            <port>8000</port>
            <password>hackme</password>
            <mount>/stream.ogg</mount>
            <reconnectdelay>2</reconnectdelay>
            <reconnectattempts>5</reconnectattempts>
            <maxqueuelength>80</maxqueuelength>
            <encode>
                <nominal-bitrate>64000</nominal-bitrate>
                <samplerate>44100</samplerate>
                <channels>2</channels>
            </encode>
        </instance>
     </stream>
</ices>

完成後在終端機程式輸入~#ices2 /etc/ices2/config.xml

當一切都設定好你就可以利用像是VLC等播放軟體或是Firefox瀏覽器等輸入http://伺服器位址:8000/stream.ogg,這樣你就可以聽到由伺服器端所傳來的樂曲。

附記:

上一篇貼文:mynas更改Ubuntu版本記錄(由8.10改安裝9.10)

張貼分享 :

Powered by Windows Live Writer and Google文件

廣告

123

張貼於電腦, 軟體工具, Linux, Ubuntu, Windows, 多媒體播放工具, 伺服器
One comment on “試試架設自己的網路電台來玩玩!—Icecast2(一)
  1. […] 上一篇貼文: 試試架設自己的網路電台來玩玩!—Icecast2(一) […]

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

Last.fm

Firefox Download Button
文章張貼日期
四月 2010
« 三月   六月 »
 1234
567891011
12131415161718
19202122232425
2627282930  
分類標籤
各期張貼數
貼紙標籤
HEMiDEMi
%d 位部落客按了讚: