SAMPLE GALLERY

icecast2 + ices0

このサイトのコピーです。こちらを参照してください
Icecast2からmp3音楽を流す

どちらのバージョンでも起動できました
Ubuntu Server 20.04 LTS
Ubuntu Desktop 20.04 LTS
icecast2 + ices0

make・lameをインストール

make&lameをインストール
sudo apt-get install make g++ libxslt-dev libvorbis-dev libshout3-dev libmp3lame-dev lame
lameのある場所を確認しておく。ices0のconfigureで必要になる
sudo find / -name lame
ここでは(/usr/bin/lame/)
/usr/share/doc/lame
/usr/bin/lame
/usr/include/lame

icecast2をインストール

icecast2をインストール
設定をするか聞いてきますが、ここではしません<いいえ>を選択
sudo apt install icecast2
icecast2の設定
sudo nano /etc/default/icecast2
編集する箇所 (2020-08-31現在修正箇所はないです)
ENABLE=true
icecast.xmlの設定
sudo nano /etc/icecast2/icecast.xml
編集するなら、パスワードとか変更します。メモっておいてね
<authentication>
<source-password>hackme</source-password>
<relay-password>hackme</relay-password>
<admin-password>hackme_pass</admin-password>
<admin-user>admin</admin-user>
<admin-password>hackme</admin-password>
編集する箇所(アドレス)
外部から聴くのであればホスト名(test.world.jp)
<hostname>localhost</hostname>
ポート8000番を使っているなポート番号を変更
<port>8000</port>
icecast起動
sudo /etc/init.d/icecast2 start
ブラウザで確認
http://localhost:8000
または
http://192.168.3.4:8000
icecastのページが表示されます
タブ'Administration'をクリックしてユーザー名'admin'、パスワード'hackme'を入力して確認します

ices0をインストール

ices0をインストール(MP3の音を流すなら必須です)
インストールはこのサイトを参考にしました
sudo apt-get install libogg-dev libvorbis-dev libxml2-dev libshout3-dev
wget http://downloads.us.xiph.org/releases/ices/ices-0.4.tar.gz
------上記では接続が出来ない時もあるので------
このサイトよりダウンロードしました
このサイトからもダウンロードできます
ices0の設定はこのサイトを参考にしました
tar -xvzf ices-0.4.tar.gz
cd ices-0.4/

最初に調べておいた'lame'の場所を'/usr/local'と入れ替える
(sudo find / -name "lame" ---> /usr/bin/lame)
./configure --with-lame=/usr/bin
結果が下記になればOK
XML : yes
Python : no
Perl : no
LAME : yes
Vorbis : yes
MP4 : no
FLAC : no

続けて下記を実行します
make
sudo make install

*注意
コンフィギヤーでエラーが出るときは
lameのある場所を指定してコンフィギヤーをする(find / -name "lame")で調べる)
./configure --with-lame=/usr/?????

ices0の設定
設定ファイルのコピー
cd ~
cp ices-0.4/conf/ices.conf.dist ices.conf
nano ices.conf
編集する箇所
プレイリスト'playlist.txt'が指定されています。ファイルを生成して曲名を書き込みます

<Stream>
<Server>
<!-- Hostname or ip of the icecast server you want to connect to -->
<Hostname>icecast.xmlで設定したホスト名'localhost'</Hostname>
<!-- Port of the same -->
<Port>icecast.xmlで設定したポート'8000'</Port>
<!-- Encoder password on the icecast server -->
<Password>icecast.xmlで設定したパスワード'hackme'</Password>
<!-- Header protocol to use when communicating with the server.
Shoutcast servers need "icy", icecast 1.x needs "xaudiocast", and
icecast 2.x needs "http". -->
<Protocol>http</Protocol>
</Server>
<Mountpoint>/ices</Mountpoint>
ices.confを下記に替えました
<Public>0</Public>は、公開しないなら0を、公開するなら、1を指定する
<Randomize>1</Randomize>は、1はランダム、0はプレイリストの順番で再生する
ices.confの表示

playlistの作成・実行

playlistの作成
~/musicディレクトリにmp3ファイルが入っている場合
cd ~
find /home/user-home/music -name "*.mp3"> playlist.txt
実行
ices ices.conf
バックグラウンド
ices ices.conf -B
削除
sudo killall ices
聴く
http://localhost:8000/ices
インターネット経由の場合は
ルーター、ファイアーウォールのポート開放などを処理

Start/Stop

Streaming Server (icecast2)再起動
sudo /etc/init.d/icecast2 stop
sudo /etc/init.d/icecast2 start
流れているミュージックを止める
実行する
ices ices.conf -B
実行中のプロセス番号を調べる
ps ax | grep ices
実行を止める
kill プロセス番号

ローカルからスクリプトで実行

パスワードをスクリプトに埋め込む sshpass
パスワード認証での SSH ログインをスクリプトに埋め込み、自動化
sshpassをサーバにインストールする
sudo apt install sshpass
ローカルに置くshellスクリプトを作ります call_ices.sh
#!/bin/sh

sshpass -p xxxpasswordxxx ssh kazu@192.168.11.2 -p 12345 ./start_ices.sh

サーバ側のスクリプト start_ices.sh(ランダムなプレイリストを作ってicesを起動させる)
#!/bin/sh

./make_playlist.pl Jazz_2
ices ices.conf -B

調べる

サービスの稼働状況一覧を確認
service --status-all
[+] サービスは稼働している
[-] サービスは停止している
[?] サービスの稼働状況を判断できない
グループの情報 ユーザの所属グループを確認
グループの情報
cat /etc/group
ユーザの所属グループ[オプション:名前がなければ自分]
groups [user-name]
テスト3
test3

inserted by FC2 system