PeerCast<http://www.peercast.org/jp/>はP2P方式のインターネット放送用ソフトウェアです。このプロジェクトは、日本のPeerCastユーザへの情報提供を主な目的としていました。(2006年頃終了)
[Win32]PeerCast0.119D 勝手に日本語化版(入れ替え用) Ver.0.119D-JP(E1b21)
[2004.01.03] PeerCast-JP by Japanese Developers/HGM@2ch, Original: (c) 2002-2003 giles/peercast.org
=@JP配布、日本語化版について
これは初代スレ852氏によるGUIの日本語化部分を参考に勝手にCVSからビルドしたものです。
ついでに独自拡張機能を付けています。
Windows2000(SP2)&VC++6.0(SP5)にてコンパイル、Windows98SE/2000で動作確認を行っています。
Windows98/ME/XPでも使えるとは思いますが当方では動作未確認です。
長時間に及ぶ安定動作テストまでは行っておりませんので環境によっては不安定になる可能性があります。
< http://www.peercast.org/code/cvs.php >からの引用
>You must not connect to the main PeerCast network if you have modified any of the code in the `core` module.
このファイルを、よくご覧になってからご使用下さい。
+使用上の注意
core部分はHTML生成部と拡張機能追加分以外は変更していないのと、Gnutellaネットワーク部分はそのままです。
おそらく大きな不都合は多分ないとは思いますが、使用に関しては【自己責任】でお願いします。もし不都合が起こったとしてもこちらにはその責任を負いかねますのでご了承ください。
+配布・転載
【この日本語化版はGPLに則って配布されます。】本体の再配布、転載は自由に行ってもらってかまいません。またいちいち私(HGM@2ch)に「許可を求める必要もありません。」
最新オリジナルソースコードは< http://www.peercast.org/code/cvs.php >より入手が可能です。なおCVS-2003/05/16を元にしているため改変部を含めた「0.119D-JP版作成時のソースコード」が必要であれば申し出に従って提供を行います。
【この日本語化版は私が独自に作成したものであり本家のPeerCastとは何の関係もありません。】なのでこの日本語化に関して本家のPeerCast開発チームに問い合わせをしないでください。このソフトウェアへの問い合わせは配布先にお願いいたします。
JP版一次配布先:< http://peercast-jp.sourceforge.jp/peercast-jp >
+インストール
レジストリでのpeercast://リンク対応は行いませんので先にオリジナル版< peercast-install.exe >からインストールしてください。
もとを< PeerCast_original.exe >にでもして< PeerCast-JP.exe >を< PeerCast.exe >とリネームして使ってください。
設定ファイルは< peercast-jp.ini >です。JP版では< peercast.ini >から< peercast-jp.ini >へ変更していますので注意してください。
その時にiniファイルの再構築も行うようにして下さい。
万全を期すなら
1、オリジナル版をインストール後、レジストリエディタでpeercast項目を検索
2、"C:\Program Files\PeerCast\peercast.exe" -inifile "C:\Program Files\PeerCast\peercast.ini" -url "%1"のような項目が見つかったら
(必要であればアプリケーションパスと)peercast.iniをpeercast-jp.iniへ変更してください。
+バージョン名について
『Eシリーズ』は日本独自拡張や本家フォーラムで公開されたパッチを実験的に取り込む等、試験的なリリースです。通常版であるexeファイルのみが含まれます。
『Pシリーズ』はEシリーズを参考に必要最低限な拡張をしたリリースです。Winamp Plugin版はこのシリーズにしか含まれません。
=主に参考&取り込みさせていただいたところ
・< http://members.tripod.co.jp/peercast_jp/ >
:初代スレの852氏。GUI周りの日本語参照。
・< http://peercast.pns.to/ >
:Mofon氏。黄色い壁付きYP-CGI、FreeBSD移植版とPeerViewの開発者。
・< http://www.geocities.co.jp/SiliconValley-SanJose/7097/ >
:2chダウンロード板[PeerCast - CH7]の709氏。UTF-8デコード対応コードとWin9x系でのGUIクラッシュ対策コードの取り込み。
:なお、ここではoddcast_dsp_wa2のUTF-8対応版も配布されています。
・< http://www.ag.wakwak.com/~dober/ >
:2chダウンロード板[PeerCast - CH15]の264氏。Push=Yes-Kickコードを提供してもらいました。
:なお、別途インストーラー付き日本語表示+壁蹴り版といくつかwinamp2用DSPの日本語対応版を配布されています。
・< http://www.ac.wakwak.com/~mikage/web/sakura/ >
:ProjectTeam Uni/大石みかげ氏。SSTP対応にあたってEZSSTP for VC++を使用。
=JP版の初期値と数値変更とそれに伴う注意点
・showMoreInformation、searchPulldownを有効にしています。
・ストリームループ対策機能(bumpErrorMETA、bumpAccumulateCnt)を有効にしています。
・Max.Incomingを10、Max.TotalStreamsを8、Max.Outputを560、refreshHTMLを20にしています。
・MAX_HITSを200から300、MAX_SERVENTSを32から48へ値を上げています。
・[JPextend3]、[JPextend4]は初期値から変更する場合は項目内容を理解した上で行うようにして下さい。
@注1:ストリームループ対策機能により一部の配信チャンネルの正常受信が阻害される場合があります。
@注2:Bump Error META Node(bumpErrorMETA)ですがNSV、MP3でIDタグがない、WMA/WMVの一部チャンネルへの接続が切断されます。
上記チャンネルを受信する場合はBump Error META Node(bumpErrorMETA)をOff(No)にして下さい。
=設定画面の簡易回線帯域設定ウィザード機能でのMax.Incoming/Max.TotalStreams/Max.StreamsPerChannel/Max.Outputの設定値
・Setting Wizard
:56K/ISDN - 2/2/1/64
:DSL/Cable - 8/6/3/384
:T1/ADSL - 12/10/6/768
:T3/FTTH - 15/15/10/3072
・Setting for Movie Relay
:ADSL(low) [ADSL1.5M] - 8/3/1/400
:ADSL(high) [ADSL8M-] - 10/5/3/800
:FTTH - 12/15/12/9216
タイプ選択後、"設定を保存"ボタンを押すと数値が変わります。
あくまで中継にあわせたおおよその目安です。
バンド幅やストリーム数は各自、回線速度やマシンパワーにあわせて調整してください。
=日本語化パッチとの違い
・GUIとInfoのフォントの種類と大きさを変え見やすさを向上。MSゴシックからMS UI Gothicフォントを使用。
・タスクトレイメニューとWeb管理画面の一部を日本語化とHTML画面でのチャンネル名/曲名等文字化け対策。
・GUIボタン追加、拡張機能など。
=本家との違いと拡張&追加部分
・Win9x系におけるChannel Info GUIでのクローズ時に不正な処理を起こす問題の対策を行っています。
・起動後のServerIPがループバック/プライベートアドレスでルートモードでない場合にはHTML画面に警告文が表示されます。
・MIN_CONNECTVER/MIN_PACKETVERを0.117Bから0.119Dに置き換え可能。【min119D = Yesにすると0.119D未満のVerからの直接接続・パケットを破棄します(繋がりません)。】
+OS共通部分
「Shift_JIS対応の一部、UTF-8デコード部についてはWin32依存します」
・HTML管理画面のShift_JIS対応。文字化け対策&拡張。- UTF-8の場合、Shift_JISへデコードします。- 表示がおかしい場合もあります。
:All ChannelsのHitsで(Stable/Busy/Firewalled)数、[closestHit/furthestHit]を表示。
:InfoのChannel IDを< http://[自IP:Port]/pls/[id].pls >リンクに対応。
:SearchのGnere/Bitrateをプルダウン形式メニュー対応にしてみる。
:設定画面の一部日本語化と項目追加。
:設定画面で簡易回線帯域設定ウィザード機能搭載。
:IndexでのInformationでTotal IDLE、Channel/Stream Host Cache、Connection statsとNetwork Hits Stats、Useful Link項目追加表示。
*『winamp-chansの改造版を搭載』 - chnannels filter = Yes時にはソート順をリスナーの多い順から。[アーチスト-曲 (ジャンル-アルバム)]名表示(UTF-8->Shift_JISエンコードを行います)。
Rank、状態、WWW、壁率、Busy率、Skips数、Hits数、視聴率を表示。チャンネルフィルターも行います。Stop時に上に統計が出ます。
*『ViewXMLのShift_JIS出力に対応』 - UTF-8の場合、Shift_JISへデコードします。- 表示がおかしい場合もあります。
*『HTML-Relayed ChannelsでのKeep制御機能実装』 - UnKeepが可能。
*『似非AutoRelayKeep機能実装』 - Off=無効、1=モード1、2=モード2。
*『似非autoSearch/IDLEkill機能』 - Relayed ChannelsでSearch/IDLEになると自動切断します。一応タイムアウト時間設定もできるようになりました。
*『似非Extend Stream Per Channles機能』 - チャンネル接続時の表示bitrateに対応してmaxStreamsPerChannelが変化します。
+Win32部分
・GUIとタスクトレイメニュー、ポップアップの日本語化。文字化け対策&拡張。- Shift_JISとUTF-8に対応。- 表示がおかしい場合もあります。
:Show GUIで各種設定画面等へのジャンプボタン追加。リンク追加。GUIの最小化が可能。
:Show GUIでチャンネル数、Out/In/TotalConnection - Out/Local/TotalStream、起動時間の表示などを追加。
:Show GUIのチャンネル表示で[Busy/Firewalled]数表示の追加。リレー表示で継続(Keep)状態切り替えボタン追加と表示など。
:Show GUIの接続先表示でQueue-Agent-Kbpsの表示を追加。
:Show GUIにSTボタン追加。検索、再生済みチャンネル、接続先の更新の停止/開始ができるようにした。
:Channel Info GUIで壁率(push/host*100)表示追加。
:左クリックメニューにおけるチャンネル一覧のグレー不可表示を強化。リレー再生追加。
*『SSTP対応』 - 伺か(何か、偽春菜、あれ以外の何かwith任意)、SSPにメッセージを送ります。EZSSTP for VC++ライブラリ使用。
*『チャイム機能』 - 受信時/曲切り替え時に音を鳴らします。Win32API-PlaySound使用。
*『拡張メッセージ機能』 - NT_PEERCAST-Popupでのリレー増減告知とNT_UPGRADE-Popupを流用してBroadcast時にHTML-放送状況に移動するとアイコン変化とメッセージが出ます。
+わかる人向け&テスト機能
【なるべく初期値から変更しないでください。】
*『RelayHostキャッシングのタイプ指定』
*『Firewalled偽装』
*『flowControl機能の無効化』
*『RootMsgの無視』
*『XMLでホスト情報出力の抑制』
*『numSkipsのBumpタイミングカウント数の変更』
*『readDelay値の強制指定』
*『searchカウント等の変更』
*『Stream-Connect待機時間の変更』
*『Broadcast時の簡易壁チェックとキック機能』
*『ストリームループ対策機能強化』
+テスト追加分
【MPG/MOVストリームは0.119D/0.119D-FreeBSD/0.119D-Win32JP(P,E2)/0.119D-UTFではType認識されません。ローカルネットワーク以外では使用しないで下さい。】
ストリームタイプでMPG/MOVが選択可能。
0.116ですでにMPG/MOVの読み取りコードが書かれていましたが実際には有効になっていませんでした。それを認識できるようにしてみました。
file://でデータとしてBroadcastできることを確認しましたがリアルタイム再生にはVLCなどのMPEG映像ストリーム対応が必要な上に帯域的にメリットは全然ないような気がします。
MOV(QuickTime)は確認すらしていません。(ついでにRTP/RTSPには対応していません)
XMLで新たに自身のIP/root/AGENT/OSと状態(stable/busy/push)、チャンネルごとのSkips合計を出力します。
=設定ファイル補足
iniファイル中にはネットワークにかかわる重要な設定部分が存在します。
わからない部分は初期値から変更しないようにしてください。一部の項目はネットワークに悪影響を及ぼすおそれがあります。
JP版での拡張部分は[JPextendx]でまとめてあります。
HTMLの「Setting〜」はオリジナル版とJP版共通、「設定画面〜」はJP版のみです。
[Server]
・serverPort、autoServe
「serverPortを設定画面で確認可能」、「GUIで変更可能」
使用Port番号とサーバー起動。ルータで開放する場合はTCPのみで可。
・forceIP
「取得IPアドレスをInformationで確認可能」、「設定画面で確認可能」、「GUIで変更可能」
PeerCastで取得IPアドレスがおかしい(127.0.0.1等ループバック/プライベートアドレスになっている)場合に補正IPアドレスを指定。lookupHostの異常、固定グローバルIPアドレス割当サービスを受けている場合など特別な理由がない限り必ず空欄にしておいて下さい。
・isRoot
「Settingで変更可能」
Rootモードにするかどうか。IPリフレクタなどになれると思われるが特別な理由がない限り通常はNoのNormalモードにしておいてください。
・maxBitrate、maxStreams、maxStreamsPerChannel
「Settingで変更可能」
送信ストリームに使う帯域、最大送信本数、チャンネルごとの最大本数。0で無制限。初期設定が128Kbpsになっているので要調整。最大送信本数の目安としては上り帯域÷受信ストリームの最大レートを指定。
・maxIncoming、maxOutgoing、maxTryout、minConnected
「Settingで変更可能」
ネットワークコネクション数。最大受け入れ接続、最大外部接続、最大試行接続、最小維持接続となる。高速回線の人はInを多めにする。3本あれば今のところ問題ないのでmaxOutgoing、minConnectedはなるべく変更しないように。
・maxPreviewTime、maxPreviewWait
「Settingで変更可能」
PeerCastネットワークを介さずに直接接続される場合の設定?。視聴時間と再接続時の試聴待ち時間。0で時間無制限になります。通常は変更しないでいいでしょう。
・serventBandwidth
「Settingで変更可能」
ネットワークコネクション帯域。1本当たり1Kbpsしか消費しません。特に変更しなくてもいいでしょう。
・firewallTimeout
起動時からのFW判定時間(秒指定)。この期間を過ぎてもIn-ConnectionがなければFWフラグが立ちます。なおFWフラグが立っていてもIn-Connectionを受けた段階でNormalタイプに変わります。
・forceNormal
「タイプはGUI、Settingで確認可能」
FWでない状態が確定している場合にNormalタイプに固定したい場合にYes指定。
・rootMsg
「Settingで変更可能」
Rootモードで起動した時にクライアントに送るメッセージを設定。Rootから受けた場合にはメッセージが記録される場所でもあります。
・authType、cookiesExpire
「Settingで変更可能」
HTML-管理画面につなぐときの認証方式とcookieタイプの指定。通常は変更しなくてもいい。
@追記:Basic HTTPでpasswordが空欄だと第三者からの外部アクセスが容易になりますので注意して下さい。
・networkID
変更すると同一IDで別ネットワークの構築ができるようだが既存のネットワークに接続できなくなるのでクローズドネットワーク作成時以外は絶対に変更しないでください。
[Client]
・autoConnect
「Settingで変更可能」、「GUIで変更可能」
Yesの状態でlookupHostとキャッシュホストにOut接続を行います。Noの状態ではOut接続は出ないですがIn接続はYes/Noにかかわらず受けることができます。
・lookupHost
「Settingで変更可能」、「GUIで変更可能」
起動時に他のホストのIPアドレスの問い合わせ先。現在のところ公式には< connect1.peercast.org >しか存在しない。なお、キャッシュホストがあればネットワーク接続はできるが、ここを自IPアドレスの取得に使うのでlookupHostが止まっていると場合によっては127.0.0.1にされる問題があります。
・tryoutDelay
Out-Connection接続要求待ち時間?。
・refreshHTML
「Settingで変更可能」
HTML-管理画面の更新間隔(秒指定)。0にすると手動更新になります。
・relayBroadcast、minBroadcastTTL、maxBroadcastTTL
放送時のTTL増加時間。最少、最大TTL値。初期設定から変更しない方がいい。
・pushTries、pushTimeout、maxPushHops
REQUEST時のHost-Push要求回数、要求時間(秒指定)、要求Hops。pushTries、pushTimeoutを少し減らすことでREQUESTになったときの実質的な自動Bumpと同じ効果が得られます。
・autoQuery、queryTTL
リレーのためのネットワーク自動要求時間(秒指定)、要求TTLみたい。初期設定から変更しない方がいいかも。
@追記:TTLというのは、簡単にいえば「ネットワーク上でどれだけ離れているか」を表す数値。一つ経由するたびに数値が一つ減ります。そして自分のところでTTLが0になったクライアントの情報は、他のところへは伝えられません。
[Privacy]
・password
「Settingで変更可能」、「GUIで変更可能」
パスワードです。空欄の場合はローカルホストからしかHTML-管理画面につなげない仕様になっています。放送する場合は必ず設定しなければなりません。
・maxUptime
「設定画面で変更可能」
Uptime偽称(秒指定)。0で無効。Up時間がこの設定値を超えた場合でもこれ以上上がらないようになります。3600以下にはしないこと。
[JPextend1]
・showMoreInformation
Noの場合、HTML表示がオリジナル版に近くなります。なお、NoではHTMLでName,Genre,Track.Infoの文字コード変換を行わずダイレクト出力します。
・channelsSortMode
全チャンネル表示でのチャンネルソートの初期値指定。0で標準のチャンネル名降順。
1=チャンネル名昇順、2,3=ジャンル名降昇順、4,5=ビットレート降昇順、6,7=タイプ降昇順、8,9=ホスト数降昇順、10,11=リスナー数降昇順になります。
・autoRelayKeep
「設定画面で変更可能」
0 = Off、1 = Mode1、2 = Mode2。初期値は0。
Mode1・・・再生を止めた後自動的にKeep=Yesになります。
ただし、再生停止してもずっとRECIEVE状態にしようとするので解除するにはRelayedから切断するしかないです。また、接続要求が来るとIDLE->RECIEVEされ続ける問題があります。
Mode2・・・再生中(リレーチャンネルでListeners>=1)からRelay要求(Relays>=1)が来れば自動的にKeep=Yesになります。
また、再生停止(リレーチャンネルでListeners=0)状態の時、(Relays>=1)から(Relays=0)に変わったときにKeep=Noになるようになっています。
・searchPulldown
「設定画面で変更可能」
Genre/Bitrateのプルダウン選択の有無。
・channelsFilter
「設定画面で変更可能」
左クリックメニューにおけるチャンネル一覧のグレー不可表示とwinamp-chansの改造版でチャンネルフィルターの有無。
・autoIDLEkill、autoSearchKill、searchTimeout、idleTimeout
「autoIDLEkill、autoSearchKillを設定画面で変更可能」
Relayed ChannelsでのSearch/IDLEチャンネルの自動切断の有無。searchTimeout、idleTimeoutでそれぞれの待機時間を指定(秒)。0だと即時切断します。
autoSearchKill = YesでもSearch中でKeep=Yesのチャンネルの自動切断は行いませんが、autoIDLEkill = Yesが同時指定されている場合、Keep=Yesに関係なく切断を行います。
[JPextend2]
・extStreamPerCh、lowStreamPerCh、middleStreamPerCh、highStreamPerCh
「extStreamPerChを設定画面で変更可能」
0 = Off、1 = Type1、2 = Type2。初期値は0。
Type1・・・RECIEVE時にmaxBitrate÷(表示ビットレート×1.3)の値(小数点以下切り捨て)をmaxStreamsPerChannelに設定します。
maxStreams=0の場合は0に、maxStreamsPerChannel=0の場合は1に、maxStreamsPerChannel > maxStreamsの場合はmaxStreamsPerChannel = maxStreams-1になります。
Type2・・・RECIEVE時の表示ビットレートに対応してmaxStreamsPerChannelが変化します。lowStreamPerChで〜100Kbps、middleStreamPerChで100〜200Kbps、highStreamPerChで200Kbps〜の値を指定。
・hideNodeInformation
YesにするとHTML-Channel InfoでノードIP情報等の出力を行いません。
・winExtMessage
「設定画面で変更可能」
NTポップアップでリレー増減告知とBroadcast時のアイコン変化を行うかどうか。
・winSendSSTP
「設定画面で変更可能」
チャンネル接続時、受信時等でSSTPメッセージ送信を行うかどうか。
winExtMessage = Yesが指定されている場合、受信時のみ送信になります。
・winPlaySound、winWavePath
winPlaySound = Yesで受信時に winWavePath =で設定されたWaveファイルを鳴らします。まともにエラーチェックをしていませんのでwinWavePathには必ず【日本語を含まない形でフルパスで鳴らしたいWaveファイルの場所】を記述するようにして下さい。
[JPextend3]
・switchLookup、anotherLookup
switchLookup = YesにするとlookupHost =の代わりにanotherLookup =をLookup Hostとして接続します。通常時はNoでいいです。
・showAdvancedOptions
showMoreInformation = Yesの指定が必要です。Yesにすると設定画面で設定可能項目が増えます。追加設定項目の意味がわからない、使わない場合はNoにしておいてください。
・useFlowControl
FlowControlの使用の有無。Yesから変更しないでください。
・allowGnutella
Yesにすると"PEERCAST CONNECT/0.1"でなく"GNUTELLA CONNECT/0.6"としてコネクトを開始します。既存のネットワークに接続できなくなるので絶対にNoから変更しないでください。
・warningLoopback
Yesでルートモードでない場合にServerIPがループバック/プライベートアドレスの時、HTML-警告を出します。初期値はYes。
・bumpErrorMETA
「設定画面で変更可能」
Yesにすると受信時のHEADとMETAパケットが0(ほとんどがRECIEVEしても無音かsyncErrorになる)であれば該当ノードからBumpします。初期値はYes。
接続時にループバック/プライベートアドレスのノードまたはSkipsが1以上のノードへの接続を回避するようにします。
・bumpAccumulateCnt
「設定画面で変更可能」
Yesにするとチャンネル受信時にビットレートが〜100Kbpsであれば5、100〜200Kbpsであれば25、200Kbps〜であれば50にbumpcount値の設定を行います。
[JPextend4]のbumpcount値とは別の設定になります。初期値はYes。
・fakeFirewalled
YesにするとIn-Connectionがある状態でもTypeをFirewalledにする謎の機能。forceNormalより優先されます。Connectionを受け入れなくするわけではありません。Noから変更しないでください。
・ignoreRootMsg
relayBroadcast値等いくつかはlookupHostによって決定されますがこれを無視することでクライアント側で設定できるようになります。トラブルの元になるおそれがあるので通常はNoにしておいてください。
・restrainXML
YesにするとXMLでホストIP情報(ChannelとHostCache)を出力しません、XMLから情報取得を行う外部ツールが動作異常を起こすおそれがありますので注意してください。初期値はNoになっています。
・oldCacheType
0.119DではiniファイルでのRelayChannelキャッシングがKeep=Yesだけになっていますが、Yesにすると0.118C同様のChannel-Relayに入ったもの全てiniファイルに書き出すようにできます。
・min119D
Yesにすると、MIN_CONNECTVER/MIN_PACKETVERを0.119Dに置き換えます。初期値はNo。
[JPextend4]
・advancedLog
1でLOG_Channelでfileストリーム時のsleep(time)値の推移、2でLOG_ChannelでストリームPeerCastのDATA値の推移、3でLOG_ChannelでストリームRAWのPOS値,DATA値,SYNC値の推移、4でhandshakeCMDの全リファラ、5でLOGでXMLライト,sysディレイ値の推移を見ることができます。
見る必要がない場合は0にしておいてください。
・bumpskips
「設定画面で変更可能」
skips累積値がこれを超えた場合に「Too many skips」を出して該当ホストからBumpします。初期値は50。
0にするとsyncPosエラーが発生した場合即座にBumpをかけるので、比較的エラー発生が少ない低レート音声ストリーム受信ではループストリームを掴みにくくなります。
逆にエラーが発生しやすい高レート動画ストリームなどの場合は値を小さくしすぎると頻繁にBumpをかけるようになるので注意が必要です。
@追記:処理優先順位はbumpskips->bumpcount->bumpAccumulateCntになります。
・bumpcount
初期値0で無効。syncPosエラー累積値がbumpcount数を超えた場合、該当ホストからBumpします。エラーカウント初期化はHEADかMETAパケットを受けた時に行います。
・forceReadDelay
初期値0で無効。10以上にするとcheckReadDelay時にストリームビットレートから算出されるsys->sleep(time)を無視してここで設定された値を使うようになります。
もともと0.118Cでfile://での暫定対策用に作ったものなので現在ではほとんど意味がありません。変なトラブルの元になりますので実験以外では使わないようにして下さい。
・findCount
findProc時のfindカウント数。初期値は300。変更する場合は必ず60の倍数で指定するようにしてください。
・searchCount
findAndRelay時のsearchカウント(秒)。初期値は180。変更する場合は必ず60の倍数で指定するようにしてください。
・prefetchPchCnt
give upとchannel closeする前のprefetchパケット数。初期値は10。
・prefetchTchCnt
triggerChannel時のprefetchパケット数。初期値は20。
・syncTimeoutCnt
SYNC waitのsyncTimeout数。初期値は30。
・waitForSec
Stream-Connect待機時間(秒)。初期値は60。
・updatePerSec
HTML-Bandwidth更新間隔(秒)。初期値は5。変更する場合は必ず1以上であまり大きな値にしないでください。
・kickPushStart
初期値0で無効。1以上でBroadcastチャンネルのリレー数がkickPushStart値以上になる場合、接続してくる壁ホストと思われるもの(Push=Yes&Stable=Yes)をKickチェックします。
bumpErrorMETA = Yesが指定されていればリレー数に関係なくlocalIPのKickチェックを行います。
ex.= 1だと接続してくる全てのPush=Yesを切断。= 2だと1本のみ許容して、リレーが2本以上になる時に繋げにきたPush=Yesを切断。
値を少なくすればするほど真性Push=Yesのリスナー排除になっていくので使うときは注意してください。
総ホスト情報取得状態によってや送信先が強制Normalされている場合にはうまく動作しません。
maxStreams、maxStreamsPerChannel >= kickPushStartにしないと効果が出ません。
作動中はリレーチャンネル表示でRelaysの数字の後ろに*が付きます。
・kickPushInterval
初期値0で無効。kickPushStartが有効になっていないと意味がありません。
10(秒)以上指定されている場合、リレー中でもリレー数がkickPushStart値以上になっていればstreamControl値ごとにチャンネル情報内から壁ホストと思われるものをKickチェックします。
以下、ストリーム数がmaxStreamsに達した時の挙動。
まともに動作しませんのでkickPushStart併用時の監視秒数指定以外は0のままにしておいてください。
1 = Type1・・・pushIDがセットされていた場合に切断。動作しません。
2 = Type2・・・古いノードを1つ切断。In/Out-Connectオーバー処理に使われるfindOldestServentをそのまま使っているので、実際にはどうなるかわかりません。
[Filter]
「Settingで変更可能」
ネットワークIPのタイプ別許可/拒否の設定。特定のIP拒否などもできるが通常はそのままで。
なお、全く接続できない場合は255.255.255.255がNetworkにチェックされてるか確認。
Network・・・チャンネル情報等の許可。
Direct・・・直接接続の許可。
Private・・・帯域制限等のない接続の許可。
Ban・・・接続の拒否。
50件まで設定できるようになっているようだが未確認。
[Notify]
「タスクトレイメニューから変更可能」
NTタスクトレイポップアップの設定。Win9x系、UNIX系では影響ありません。
PeerCast・・・接続時。
Broadcasters・・・DJメッセージがある時(動いていなかったのをとりあえずb18.1以降で修正)。
TrackInfo・・・チャンネルのトラック情報が変わった時。
[Server1]
[Server2]
「Settingで変更可能」
serverPort、serverPort+1でのサーバー動作/データ通過許可の設定。通常はそのままで。
不用意に変更するとHTML-管理画面が開けなくなったり、放送/リレーができなくなります。
HTML・・・ウェブインタフェースへの接続を許可。
Broadcasting・・・放送用接続を許可。
Servent・・・チャンネル情報等のやりとりを許可。
Data・・・ストリーム等のやりとりを許可。
[Broadcast]
・broadcastMsgInterval
MP3ストリームの場合、再生中のトラック情報とDJメッセージの切り替え時間の設定。初期設定で10秒ごとに切り替わります。
・broadcastMsg
「Settingで変更可能」、「GUIで変更可能」
DJメッセージです。日本語で入れた場合、日本語対応版でない場合は表示が文字化けするので注意。
・icyMetaInterval
「Settingで変更可能」
MP3ストリーム内に挿入されるアーティスト、タイトルなどのトラック情報の間隔(バイト数)。特別な理由がない限り8192から変更しないように。
・broadcastID
サーバント固有の識別番号。GnutellaのGUIDに相当する。
・deadHitAge
「Settingで変更可能」
チャンネル/ホスト情報保持時間(秒指定)?。長くするとチャンネル/総ホストの把握数が多くなるがそのぶんデッド状態のものも更新されにくくなるはず。
[Debug]
・logDebug、logErrors、logNetwork、logChannel、pauseLog
ログに関する設定。全てSetting/Log View、GUIで行えます。
・idleSleepTime
用途いろいろ。変更しないように。
[RelayChannel]
Keep=Yesのチャンネル情報が書き出されます。
@追記:JP版ではDescriptionの書き出しを追加しています。
[Host]
ホストキャッシュの書き出し。
=PeerCastの仕様部分
・Max.ServentConnection = 32 -> JP:48
・Max.HostCache = 100
・Max.FindChannel = 200
・Max.ChannelNodeHits = 200 -> JP:300
・Max.RelayedChannel = 16
・Max.IdleChannel = 8
=Win32コマンドラインオプション
・-zen (showGUI = false)
・-multi (allowMulti = true)
・-kill (killMe = true)
・-inifile
・-url
=SSTP対応について
なるべくSSTPサーバを立ち上げている状態でSSTPメッセージ送信使用時のみwinSendSSTP = Yes(設定画面で変更可能)にして下さい。
伺か(MATERIA)period583、SSP1.08.03のデフォルトゴーストにて動作確認、CROWでは動作しない可能性が高いです。
NOTIFY/1.1、localhost&Port:9801固定です。SocketSSTPのみです、DirectSSTPには対応していません。PeerCast側でのメッセージカスタマイズ設定はありません。
別途、ゴースト製作者向けの通知するイベントの一覧を添付しています。
接続時、アップグレード通知、受信時にさくらとうにゅうが局名とタイトル等をしゃべります。
概ね安定して動作しているようですが、一応、試作扱いなのでSSTP通信チェックとか非常にいいかげんだったりします。
ゴーストによってはこんなしゃべりじゃねぇなどの精神的ダメージがあるかもしれませんが、現在のところこれはさくらとうにゅう向け仕様とさせていただきます。
@注:Port:9801をリスニングしない、NOTIFY/1.1に対応していないベースウェア、またゴーストによっては動作しないか、誤動作を起こすおそれがあります。
=JP版のチャンネルフィルターについて
オリジナル版では左クリックメニューにおけるチャンネル一覧のグレー不可表示はBusy率-100%の時しか行われません。
JP版ではこれに加えてFireWalled率-100%、Skips過多、チャンネル名が空欄、タイプがUnknown、ビットレート異常(2000Kbps超過)の場合にも行うようになっています。
チャンネル一覧表示(winamp-chansの改造版)ではchannelsFilter有効時にはBusy率-100%、FireWalled率-100%、チャンネル名が空欄を表示に加えません(channelsFilter無効時でもStatus欄では6条件のどれかに該当していれば"-"表示になります)。
channelsFilter = Noにすることでこれらのフィルターを行わないようにすることができます。
ただし、channelsFilterのY/Nに関係なく全チャンネル表示では上記の6条件のどれかに該当するチャンネルではビットレート表示が小さくなります。
なお、リレーチャンネル表示ではチャンネルが送信最大値に達した時、ビットレート表示が小さくなります。
@注:これはフィルタリングされないチャンネルの受信可能を保証するものではありません。また、フィルタリングされたチャンネルでも受信できることもあるかもしれません。
=既知の不具合みたいなもの
・autoIDLEkill、autoSearchKill、bumpErrorMETAでまれに誤爆することがあります。
=前バージョンとの違い
+b18->b21
・GUIにSTボタン追加。検索、再生済みチャンネル、接続先の更新の停止/開始ができるようにした。
・[RelayChannel]でDescriptionの書き出しを追加。
・advancedLogの設定項目の一部をbumpAccumulateCntへ移動。->b19
・updatePerSec設定追加。->b19
・channelsSortMode追加。->b18
・showMoreInformationからhideNodeInformation分離追加。 ->b18
・本家版でいつのまにか機能しなくなったNTポップアップのDJメッセージ復活。->b18.1
・bumpErrorMETA強化。->b18
・トラック情報のNTポップアップの改造。->b18.1
・HTMLの若干の変更。
+b15.3->b17.3
・bumpcount機能追加。->b17
・advancedLog変更。->b17
・[JPextend1]にshowMoreInformation追加。->b17
・showAdvancedOptionsを[JPextend3]に移動。->b17
・bumpErrorMETA機能追加。->b16
・kickPushStart強化。->b16
・streamControlをkickPushIntervalに変更。->b16
・ログ取り強化設定をstreamControlからadvancedLogに移す。->b16
・[JPextend1]にshowAdvancedOptions追加。->b15
・ログ取り強化版。streamControl = 3,4,5,6でいろいろ。->b15
+b11->b13.8
・kickPushLimitをkickPushStartに変更と仕様を少し変えた。->b12
・InformationでConnection stats(Count)表示追加。 ->変更:b12:Add Kick Push.b13.6
・2chスレPeerCast-13の829氏のコードを元にBroadcastチャンネルの壁蹴り機能強化。->b13:Fix.1.2:変更.3-5
+b8->b11.2
・MAX_HITS、MAX_SERVENTSの数値変更。
・oddcast_dsp_v2のUTF-8対応版製作者から頂いたPushHost-Kickコード移植+。未テストなのでうまく動作するかわかりません。->b10=/b11
・extStreamPerChのType1の仕様変更。->b11
+b3->b5F->b8
*『チャンネル一覧表示(winamp-chans改)を実行するとメモリーエラーを起こして不正終了する問題を修正』
・コンパイラをVC6.0(SP5)に変更。->b5F
・ignoreRootMsgで共用していた起動時のループバックアドレス警告のY/N設定を[JPextend3]のwarningLoopbackに分離。
・怪しいstreamControl機能追加。->b6
・似非Extend Stream Per Channles機能の拡張?。->b8
・HTML、GUIの修正追加。->b8:Setting for Movie Relay追加。
+b1->b3
*『VorbisPacketのMAX_BODYLEN、ChanPacketBufferのMAX_PACKETS、agentStrの値を元に戻す。』
・autoSearchKill設定追加。autoSearchKill/autoIDLEkillのthreadtimeoutが設定可能になった。
・一部のLOG出力のコメント化部分を外す。
・接続状況でChannelID(12文字まで)を表示する。
・リレーチャンネル表示でストリームフルであればStatus表示が小さくなる。->b5F:StatusをBitrateに変更。
・[JPextend4]でsyncTimeoutCnt、waitForSec設定追加。
+a->b1
*『数値変更を行っています。オリジナル版との互換性テストが十分に行われていませんので注意してください。』
・VorbisPacketのMAX_BODYLENを65536から131072、MAX_HITSを200から400、ChanPacketBufferのMAX_PACKETSを64から128、MAX_SERVENTSを32から64、agentStrを16から32へ値を上げた。
・数値関係を[JPextend4]に移動。findCount、searchCount、prefetchPchCnt、prefetchTchCnt設定追加。
04/01/03[Win32]PeerCast 0.119D-JP (E1b21)
GUIにSTボタン追加。[RelayChannel]でDescriptionの書き出しを追加。advancedLogの設定項目の一部をbumpAccumulateCntへ移動。updatePerSec設定追加。channelsSortMode追加。・showMoreInformationからhideNodeInformation分離追加。NTポップアップのDJメッセージ復活。bumpErrorMETA強化。トラック情報のNTポップアップの改造。HTMLの若干の変更。