メニュー

検索ウィンドウ

SHOUTcastの局を検索するウィンドウです。
SHOUTcastのホームページからHTMLを受信・解析して局をリスト表示します。
※SHOUTcastが出力するHTMLの仕様が変更されると動作しない可能性があります。

「検索」ボタン

エディットボックスに検索したい文字を入力して 「検索」 ボタンを押すと、取得された局がリストに表示されます。

「ジャンル」ボタン

「ジャンル」 ボタンを押すと、「genre.txt」 で登録されている既存のジャンルのメニューが表示されます。
検索したいジャンルを選択すると、そのジャンル名で検索されます。

局リスト

「>>次へ」をダブルクリックすると次のページに移動し、「<<前へ」をダブルクリックすると前のページに移動します。
局をダブルクリックすると、下のサーバーリストにサーバーが表示されます。

サーバーリスト

ここには、局の実際のサーバーのリストが表示されます。

局には複数のサーバーが存在することがあります。
各サーバーで配信されている内容に違いはありませんが、最大リスナー数が違ったり通信状況が違ったりします。
リスナー数がMAXになっていてサーバーに接続できない時は、同じ局の違うサーバーに接続してみると良いでしょう。

お気に入りウィンドウ

気に入った局(サーバー)を保存しておくウィンドウです。
お気に入りリストのデータは、実行ファイルがあるフォルダの 「favorite.pls」 ファイルに保存されます。

※局のサーバーは不定期にURLが変更されることがあるので、接続できなくなった時は再度検索してみてください。

設定

タイトルスクロール速度

曲タイトルのスクロール速度をms(ミリセカンド)単位で指定します。
1秒=1000msです。
この時間毎にタイトルがスクロールされます。

再生バッファ

ストリーミング再生用のバッファを秒単位で指定します。
受信・デコードが再生に追いつかず音が途切れるようであれば数値を増やしてください。
ただし、その分メモリも消費します(44.1kHz/ステレオの場合、1秒で約172KB)
また、再生開始時には、指定された秒数分のサウンドをセットしてから再生されるため、数値が大きいほど再生が開始するまでに時間がかかる場合があります。

※この設定の変更は次回再生時に適用されます。

局をダブルクリック後、自動的に1番目のサーバーを再生させる

局リストで局をダブルクリックするとサーバーリストにサーバーが表示されますが、その後自動的に1番目のサーバーを再生させます。

ウィンドウが閉じられた時、リストをクリアする

検索ウィンドウが閉じられた場合、局リストとサーバーリストのリストをクリアします。
リストにデータが残っているとそのデータにメモリが使用されているので、メモリ使用量が気になる方に。

お気に入りリストに追加する時、名前の先頭の(#/)を除去する

サーバーリストからお気に入りリストに追加する時、「Name」で先頭に表示されている " (#/) " の文字を除去して追加します。

「Info」にセットする項目

局リストからサーバーを取得する時、サーバーリストの 「Info」 にセットする項目を指定します。
「タイプ」 「ビットレート」 「ジャンル」 の項目のうち、必要なものをチェックしてください。
「Info」 のデータはサーバーリストからお気に入りリストに追加する時のみ使用されます。

ジャンル項目

検索ウィンドウの 「ジャンル」 ボタンを押すと既存のジャンルのメニューが表示されますが、ジャンルの項目は 「genre.txt」 ファイルに保存されています。
このテキストファイルを編集すれば、好きなようにジャンルの項目を編集できます。

サンプル

Japan
Jpop
Anime
----
<R&&B/Soul
R&&B Soul|R&B Soul
Contemporary
Classic
>

注意点

・ 先頭に余分なスペースやタブなどは入れないでください。
・ 改行のみの行はスキップされます。
・ メニューの階層は2階層までです。

1) 項目

1行ごとに、ジャンルの文字を記述します。
”Japan” と記述すればメニューに 「Japan」 と表示され、その項目が選択されると 「Japan」 の文字で検索されます。

メニューに表示する文字と実際に検索する文字を別にしたい場合は、” メニューに表示する文字 | 検索する文字 ” として、半角の ' | ' で区切ります。
” 日本|Japan ” と記述すれば、メニューには 「日本」 と表示され、その項目が選択されると 「Japan」 の文字で検索されます。

メニュー上では '&' の文字はショートカットキーを指定するために使われるので、'&' を表示したい場合は "&&" と記述してください。

2) セパレータ

行の先頭の文字が '-' の場合、その部分はセパレータ(区切り)になります。
先頭が '-' であれば後の文字は何を記述しても構いません。
"-" の1文字だけ記述するのも良いですし、"-----" とわかりやすくするのも良いです。

3) ポップアップ(子メニュー)

子メニューを作りたい場合は、

<子メニューのタイトル
子メニューの項目
...
>

とします。


行の先頭が '<' の場合、子メニューの開始となります。'<' の横の文字が子メニューのタイトルになります。
行の先頭が '>' で子メニューの終了となります。
'<' と '>' で囲まれている行は子メニューの項目となります。

なお、子メニューの中にさらに子メニューを作って階層化することはできません。
メニューの階層は2階層までです。

スキン

メインウィンドウのスキンの作り方を説明します。

必要なもの

・ スキン名.ini
・ スキン名.bmp

スキンに必要なファイルは、スキンの設定ファイル(ini)とビットマップファイルの2つです。
この2つを 「skin」 フォルダに入れてください。

ビットマップについて

画像サイズ、ビット数などに制限はありません。
メイン画面とボタン等のイメージを一つの画像ファイルにまとめてください。

iniファイルの書き方

iniファイルは、テキストファイルです。
ここにスキンの情報を記述します。

※注意点

・ ',' (カンマ)で区切って値を指定する時、カンマの前後に余分なスペースなどは入れないでください。
・ 「main_rc」 以外のそれぞれの項目は省略することができます。省略するとそのボタン等は表示されません。
・ 値が足りない場合は省略されたことと同じになります。

[skin]

先頭行には必ず " [skin] " の文字を記述してください。

main_rc=x1,y1,x2,y2

メイン画面の範囲を指定します。
※この項目は必須です。
※メイン画面は必ずイメージの左上 (x1=0, y1=0) に描画してください。
※メイン画面は四角形以外の形にすることはできません。

[例] main_rc=0,0,299,19

title_rc=x1,y1,x2,y2

タイトルが表示される部分の範囲を指定します。
この項目を省略すると、タイトルは表示されません。
※タイトルが表示されないとエラーメッセージも表示されなくなりますので、ご注意ください。

[例] title_rc=13,4,214,15

title_font=フォント名

タイトルのフォント名を指定します。
省略された場合、フォント名は 「MS ゴシック」 になります。
※フォント名を "" で囲ったりはしないでください。
※日本語のタイトルを表示したい場合は、日本語のフォントを指定してください。

[例] title_font=MS Pゴシック

title_fontsize=フォントサイズ(px)

タイトルのフォントサイズを指定します。
サイズは px 単位で指定してください。
省略された場合、サイズは 12px になります。

[例] title_fontsize=12

title_bold=0または1

タイトルのフォントを太字にするかの指定です。
0を指定すると普通の太さ、1を指定すると太字になります。
省略された場合、0になります。

[例] title_bold=1

title_textcol=カラー

タイトルのテキストカラーを指定します。
省略された場合、カラーは ffffff (白色)になります。
カラーはHTMLで指定する場合と同じようにRGB順に16進数で指定してください。

[例] title_textcol=ffffff

title_backcol=カラー

タイトルのテキスト背景色を指定します。
省略された場合、カラーは 000000 (黒色)になります。
なお、テキスト背景色を透明にすることはできません。

[例] title_backcol=000000

title_errcol=カラー

エラー表示時のテキストカラーを指定します。
省略された場合、カラーは ff9999 になります。

[例] title_errcol=ff9999

各ボタン

play_bt=x1,y1,x2,y2,px,py
stop_bt=x1,y1,x2,y2,px,py
list_bt=x1,y1,x2,y2,px,py
search_bt=x1,y1,x2,y2,px,py
close_bt=x1,y1,x2,y2,px,py
min_bt=x1,y1,x2,y2,px,py


上から順に 「再生」 「停止」「お気に入りリスト」 「検索」 「閉じる」 「最小化」 のボタンです。
省略された場合はそのボタンは無効となり、表示されません。

それぞれ、x1,y1,x2,y2 でボタンのイメージの範囲、px,py でメイン画面上でボタンを表示する位置、を指定します。
ボタンのイメージは 「通常時」 「カーソルが上に乗った時」 「ボタンが押された状態」 の3つのパターンを横に並べてください。

[例] play_bt=0,21,38,33,223,4

vol_bt=x1,y1,x2,y2
vol_rc=x1,y1,x2,y2

音量操作のバーの指定をします。
バーの背景はメイン画面に直接描画し、バーのつまみは別にイメージとして用意します。
実際はバーの範囲上につまみが表示され、つまみを動かすことで音量を0〜100までの間で操作できます。

vol_bt では、バーのつまみ(四角形)のイメージの範囲を指定します。
vol_rc では、メイン画面上でのバーの範囲を指定します。x1の位置が音量0、x2の位置が音量100となります。

つまみは、つまみの中心位置が基準となり、音量0の場合はvol_rcのx1の位置につまみの中心が来ることになります。
また、垂直方向では、vol_rcのy2-y1の中心位置につまみの中心が来ます。

FAQ

タイトルに「Connect...」と表示された後、エラーが出る

「Connect error」 と出た場合は、接続に失敗しています。
サーバーがダウンしているか、そのURLが間違っているまたはサーバーのURLが変わった場合もあります。

「Listener Max」 と出た場合は、そのサーバーのリスナー数が最大まで達しているため、接続できません。
他のサーバーを探すか、リスナー数が落ちるまで待ってみてください。

「x server use」 と出た場合は、そのサーバーが使用できない状態です。
一時的に配信が停止されている場合があるので、しばらく待ってみるか再度検索してみてください。

タイトルが表示されない

局によっては、曲のタイトルを送信していない場合もあります。

途中で再生が途切れる(無音になる)

局のサーバーが不安定になり、データが送られてこない状況になっています。
回復するまで待ってみるか、再生ボタンで接続し直してみてください。

AACはなぜ再生できないのですか?

AACの特許の関係で、エンコード/デコードするソフトには特許料が必要なためです。