ねとらじで土地音楽

ねとらじ は、誰でも自由に無料でネットラジオ放送ができるサービスです。これを使って、Secondlifeや OpenSimで土地に音楽を流そうという計画です。

ねとらじ は、Icecast2を使ったサーバーです。これへデーターを送信するソフトが必要ですが、自宅PC内にある音楽ファイルを配信するには、Ezstreamというものがいちばんシンプルなようです。

PCは Linuxが走っているものを前提とします。Windowsで Ezstreamを動かす方法はあるみたいですが、Windowsのことは他の方に任せます。

Ezstreamのインストール
Ubuntu系であればインストールは簡単かと思います。私の場合、Puppy Linux の BionicPup64日本語版なので、Puppyパッケージマネージャで ezstreamをインストールすることができました。

Ezstreamの設定
Ubuntu系であれば、/usr/share/doc/ezstream/examplesにいくつか設定ファイルのテンプレートがあります。
PC上の mp3ファイルを送信するならば、その中の ezstream_mp3.xmlをベースにするのが良いでしょう。


私は /etc/ezstreamというディレクトリを作り、そこにさきの ezstream_mp3.xmlをコピーして、名前をezstream.xmlに変更しました。そして内容を次のように変更。
<ezstream>
<url>http://std1.ladio.net:8080/hogehoge</url> <sourcepassword>ladio</sourcepassword>
<format>MP3</format>
<filename>/var/stream/BGMkoto.mp3</filename>

<svrinfoname>BGM koto</svrinfoname>
<svrinfogenre>misc</svrinfogenre>
<svrinfodescription>BGM koto string</svrinfodescription>
<svrinfobitrate>32</svrinfobitrate>
<svrinfochannels>2</svrinfochannels>
<svrinfosamplerate>22050</svrinfosamplerate>

<stream_once>0</stream_once>
<svrinfopublic>0</svrinfopublic>
</ezstream>

8080 の部分は、ねとらしのサーバー一覧の中から空いているポートに決めます。
hogehoge の部分は自分のユニークな名前を付けます。
ladioは ねとらじサーバーの場合のパスワードです。ユーザー名は source ですが、これは既定値で、設定ファイルに書かなくて構いません。

svrinfo...
は、ねとらじサーバーに知らせるだけで、土地音楽を再生する Firestormなどのビューアーはこれらをいっさい使いません。だから適当でいいのかな?

今回は音楽ファイルが1つだけなので、そのファイル名を直接書き込みました。

音楽ファイルが複数ある場合は/var/stream/playlist.m3u などを作り、それを fikenameセクションに指定します。ます。playlist.m3u はテキストファイルで、1行毎に音声ファイル名を書いたものです。

Ezstreamの起動
仮想端末から次のようにタイプします。
ezstream -c /etc/ezstream/ezstream.xml


放送の確認
設定ファイル ezstream.xmlの中で指定している Urlである http://std1.ladio.net:8070/hogehoge にブラウザでアクセスします。順調ならば、設定した音楽が聞こえるはず。

土地音楽の設定
さきのurlである http://std1.ladio.net:8080/hogehoge を土地音楽に設定します。多く出回っているラジオまたはJukebox では、中身に stationsというノートカードがあるので、そこに次のような1行を加えます。
Hogehoge=http://std1.ladio.net:8080/hogehoge


バックグラウンド起動
ezstream -c /etc/ezstream/ezstream.xml
で起動した場合、停止は Ctrl+C キーを押します。あるいは仮想端末を閉じれば終了します。
仮想端末からの起動のさい、末尾に'&'を加えるとバックグラウンドで動作し、仮想端末を閉じても実行は続きます、
ezstream -c /etc/ezstream/ezstream.xml &

停止するには
killall ezstream


音声ファイルのビットレート

ねとらじ では32kbpsが標準です、無料の共有サーバーなので、他の人に迷惑を掛けないよう、32kbpsにしましょう。Ezstreamは音声ファイルのビットレートをそのままに送信します。たとえば 192kbps ならそのままです。送信する音声ファイルは、何らかかの音声編集ソフトであらかじめ 32kbpsに変換しておきましょう。

参考リンク
JOGフォーラムに Butt や Mixxx などの配信ソフトが紹介されています。

(初稿:5 Jan 2021, 20:38)

Posted on 30 Jan 2021, 8:48 - カテゴリ: opensim
No comments - Edit - Delete


こちらに引越しました

独自ドメイン shinobar.net を取得し、URLが新しくなりました。今後はこちらで運用します。ブックマークなどの更新よろしくお願いします。
Shinobar in OpenSim http://shinobar.net/opensim/


(初稿:2 Oct 2020, 18:52)

Posted on 19 Oct 2020, 0:57 - カテゴリ: ブログ
No comments - Edit - Delete


sitpose スクリプト

SITPOSE SCRIPT 現在の最新バージョンは v6.0
JOG内 Shinobar Annex で入手できます。
このスクリプトを使用すると、簡単に座ってポーズ/アニメーションを作成できます。さまざまな機能があります。
完全なドキュメントではありませんが、いくつかの例を説明します。


SITCONFIGなし(1〜2)
1.基本的な使い方
このスクリプトをオブジェクトに入れます。アバターのお尻がルートプリムの上面にちょうど当たるように座位が設定されます。
同じオブジェクトにアニメーションを入れることができます。アバターが座るとアニメーションを再生します。
複数のアニメーションを入れると、それぞれ20秒ずつ順番に再生されます。再生順は名前のアルファベット順です。

座位が不適切な場合は、このスクリプトとアニメーションを含む座席として単一のプリムを作成し、適切な位置に配置します。テクスチャを透明にし、好きな家具にリンクします。この方法で、家具に複数の座席を作成できます。

2.アタッチメント
アバターがこのスクリプトとアニメーションを含むアタッチメントを装着すると、アバターがアニメーションを再生します。Dancing Anklet はその一例です。

WITH SITCONFIG(3〜6)
これらの機能は、「SITCONFIG xxx」という名前のノートカードで設定できます。
ノートカード「example SITCONFIG」があります。名前を「SITCONFIG」または「SITCONFIG as you like」に変更します。 「SITCONFIG」で始まる名前のノートカードは、プリム内で1つだけである必要があります。スクリプトを編集しないで、ノートカード「SITCONFIG xxx」を編集します。

3. SITCONFIGを使用して位置を調整する
vector POSITION はルートプリムの中心を基準としたアバターの腰の位置です。単位はメートル。
LOCAL = TRUEの場合、vector ANGLEは、プリムに対する角度です。単位は度。 LOCAL = FALSEの場合、グローバル座標を取ります。つまり、Xは東に、Yは北に、Zは上に向かっています。
ベクトル ADJUSTは、アバターのサイズの補正です。いくつかの例:
ADJUST = <0.0、0.0、0.2> //キスボール用
ADJUST = <0.0、0.0、-0.4> //アニメーションがス立ちポーズの場合で、アバターの足裏を地表/床に近づけるため。

4.アニメーションの長さ
複数のアニメーションがある場合、それぞれ20秒ずつ順番に再生されます。
再生時間を変更する場合は、SITCONFIGで INTERVAL を設定します。

5.アニメーションをタッチで切り替え
通常は複数のアニメーションが順番に再生されます。
アバターのタッチのみでアニメーションを変更する場合は、
INTERVAL = 0.0、TOUCH = TRUE を設定します。

6. 表示および非表示
HIDE = TRUE //プリムは普段は表示されますが、アバターが座っているときは見えなくなります。クラシックなポーズボールの動作。
ボールが常に見えないようにする場合は、HIDE = FALSEを設定し、テクスチャを透明に設定します。

2020-01-13 Shinobar Martinek @jogrid.net:8002

(初稿:13 Jan 2020, 11:40)

Posted on 7 Nov 2020, 23:40 - カテゴリ: スクリプト
No comments - Edit - Delete


アニメッシュ

OpenSim-0.9.1.0-Release で正式に Animated Mesh(アニメッシュ)がサポートされました。

アニメッシュのモデルをいくつかセットにしたものを Shinobar Annexに置きました。

使い方
(開始/停止)
モデルをRezするとアニメーションは停止しています。頭のあたりを右クリックし、パイメニューから「触る」を選ぶとアニメーションを開始します。同じことをもういちど行うと停止します。

(アニメーションの入れ替え)
アニメーションの入れ替えは必ずアニメを停止した状態で行ってください。頭のあたりを右クリックし、パイメニューから「編集を選び、中身のアニメを好きなものに入れ替えできます。入れ替えたら「触る」でアニメを開始します。

複数のアニメを入れた場合は、20秒おきにアニメを切り替えます。この秒数はスクリプトAnimesh の変数 INTERVAL で変更できます。

(テクスチャの変更)
1. アニメを停止します。
2. 「編集」で「特徵」タブのところに「アニメッシュ」のチェックボックスがあります。このチェックを外します。
3. 「面を選択」で目的の面を選び、「材質」でテクスチャを入れ替えることができます。
4. テクスの入れ替えが済んだら「アニメッシュ」にチェックを入れます。
5.右クリック→「触る」でアニメを開始します。


(初稿:29 Dec 2019, 16:55)

Posted on 29 Dec 2019, 17:16 - カテゴリ: アニメッシュ
No comments - Edit - Delete


音声ガイド

音声ガイドを Izumoリージョン、Kofunリージョンに設置しました。

使い方
1.「音声ガイド(Japanese)」を購入します。「Voice guide」は英語です。
2. 最新のインベントリの中から「Voice guide ja HUD」を見つけて装着します。 HUDは、ビューアウィンドウの右上隅に表示されます。
3. 音量を適切なレベルに設定します。
4. ガイダンススポットの近くに立ち、ビューアウィンドウのHUDをクリックします。音声ガイダンスが開始されます。

作り方
このシステムを用いて独自の音声ガイドを作る方法について説明します。

HUDは受信器ですので、そのまま使い、発信器であるマットレス Guidance Spot のコンテンツを作ることになります。発信する内容はノートカード GUIDANCE.xxx.en または GUIDANCE.xxx.ja に記述します。 .en は英語、.ja は日本語です。 たとえば GUIDANCE.Izumo.ja はつぎのようなものです。
出雲大社と書いて「いずものおおやしろ」と読みます。
今でも大きな建物ですが、言い伝えによると古代には 96m あったそうです。
SOUND:Izumo1_ja:9
それが本当かどうか分かりませんが、その姿を想像で復元しました。
SOUND:Izumo2_ja:6

SOUND: で始まる行は発声する音声を指定します。
SOUND:Izumo1_ja:9

コロン':'で区切られています。Izumo1_ja は音声ファイル名です。名称は任意です。_ja とか無くても構いません。ノーとカードとともにマットの中に入れておかねばなりません。最後の 9 は音声の長さを秒数で示します。

SOUND行の他はそのまま各行0.2秒おきにチャットされます。内容は音声と同じである必要はありませんし、チャットなしで音声(SOUND行)だけを羅列でも構いません。

このチャットも音声も、HUDを装着した本人だけが見聞きでき、他のアバターには流れません。

音声は読み上げソフトを用いて作ることができます。Web上のサービスには日本語用のOpen JTalk、英語用には Sound of Text などがあります。

音声の長さは最長10秒かと思ってましたが、もっと長くても良いようです。しかしあまり長いとダウンロードに時間が掛かり、無音が続くことがあるので、10秒程度に小分けするのが良いでしょう。
音声のアップは音楽CD形式の wavでなければならないので、音声編集ソフトで変換してください。

仕組み
動作の詳細について説明します。

マットレス Duidance Spot はファントムですが、アバターが接触したことを検知して複数言語で発信します。接触したアバターを10分間記憶し、同じアバターが接触しても繰り替えして反応しません。ただし、タッチされると記憶を破棄して発信します。またHUDからの要求があったときにも発信します。

HUDはマットレスからの通信のうち、自分に設定された言語のものだけを受信し、発声します。同じマットレスからの通信は1度だけ再生し、重複した通信は無視します。ただしHUDがタッチされると周辺マットレスに要求信号をだし、再生済みのマットレスからの通信も再生します。

通信距離は10mです。10m以内に複数の発信器があるときは、近いものから再生するとは限らず、順番が前後することすることがあります。

(初稿:5 Dec 2019, 18:03)

Posted on 5 Dec 2019, 19:16 - カテゴリ: スクリプト
No comments - Edit - Delete


Pages: [1] [2] [3] [4] [5] ...