Export to GitHub

nicolivehelper - Manual.wiki


新しいマニュアルサイトはこちら。
http://miku39.jp/nicolive/nicolivehelper/man/'>http://miku39.jp/nicolive/nicolivehelper/man/

Manual (version 1.1.49)

1.1.45用 簡易 マニュアルです。
初めてインストールした場合、ここに飛ばされます。
1.1.5で初めて、拡張のインストール後、更新後の初回起動でページに飛ばす機能が載るので、
1.1.5への初回アップデートに限り更新インストールでもこのページにやってきます。

生放送への接続の仕方(Tip help)

  1. 接続したい生放送のページを開く
  2. そのページでコンテキストメニューを出す
  3. NicoLive Helperを選ぶ



特徴

  • Firefox Extensionのため、Firefox3.5以降が移植されている環境であれば、いかなる環境でも動作します。
    Win,Mac,Linux(Debian squeeze,lenny/Ubuntu),Solarisで確認済み。

他のツールにはない特徴として、

  • ロスタイム計算を行う(ニコ生用ツールの中では初) ※現在はロスタイム時間がサーバの重さで非常におかしいので、1分固定にしています。
  • ファイル、ブックマーク、リンク、ブラウザタブなど、いろいろ*とドロップして登録できるストック(sm9105183)
  • ストックをプレイリストとして扱い、ニコニコ動画を利用して動画を連続再生する機能
  • 運営コメントを利用して任意のJavascriptコードを実行し、仕様にない動作をさせることが可能
  • 生放送終了時に、ブラウザの視聴ページも一緒に閉じることができる機能

データ保存の優先順位

  • NicoLive Helperは複数のウィンドウを開くことが出来ますが、基本的に、最後に閉じたウィンドウの持っている内容が保存されます。(視聴者で利用しているときはリク、再生履歴は保存されない)
  • 窓1,2を開く。
    窓1でストックを全削除して閉じる。
    窓2でストックに追加して閉じる。
    すると、窓2の内容が最終的に保存されます。
  • ウィンドウ間のデータ一貫性は考慮していません(大変な仕事になるので)。
  • ただし、設定内容はプリファレンスシステムを用いているので、設定内容を変更すると、全てのウィンドウに反映されます。(一部を除く)

Donation

これでうまい飯でも食ってくれや程度の寄付は随時受け付けています。
PayPal日本アカウントなので厳密な意味では寄付でなく購入という形ですが。
寄付の有無によって便宜を図ったりすることは行いません。
https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=EDQKQV3ME3Q24'>https://www.paypal.com/ja_JP/JP/i/btn/btn_buynowCC_LG.gif' />

Startup(起動)

NicoLive Helperは複数の生放送で同時に使用できるよう、マルチウィンドウで動作します。
接続したい生放送のページ*を開き、そのページでコンテキストメニュー(右クリックメニュー)を出し、NicoLive Helperを選択すると、そのページで放送されている番組に接続します。
生主の場合、リクエスト、再生履歴は保存されますが、リスナー時には保存されません。

生放送のページではないところからウィンドウを開いた場合(生放送に接続しないとき)は、
オフラインモードとして動作しています。事前のストック準備などに。

  • 設定→その他→ウィンドウで自動起動を設定してあれば、生放送視聴時に勝手にウィンドウを開きます。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/nico_startup.png' />

ツールバー

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/toolbar.png' />

左から、「プレイスタイル」、「リクエスト可否」、「次の動画の再生」、「自動再生の一時停止」、「動画の再生を停止」、「サウンドオンリー」、「メイン、サブ画面の交換(/swap)」、「サブ画面」、「コマンド(ニコ生の各種コマンドリスト)」、「設定」、「NicoLive Helperのウィンドウリスト」

自動再生では、リクエスト→ストックの優先で再生していきます。つまり、リクエストがあるかぎりはストックは一切再生されませんので、主セレ混ぜてランダム再生したい場合は、リクエストに登録しておく必要があります。

手動(順次)

「再生」ボタンかツールバー「次曲」ボタンを押すことで、順次再生します
自動(順次) リクエスト→ストックの優先で、自動で上から順次再生します
自動(ランダム) リクエスト→ストックの優先で、自動でランダムに再生します
手動(ランダム) 「再生」ボタンか、ツールバー「次曲」ボタンを押すことでランダムに再生します。
手動(消化数順)
自動(消化数順) リスナーのリクエストの消費数順で再生します。
ストックからリクエストボタンによってリク追加したものは、リスナーのリクエストが全て消化されるまで再生されません。テキストボックスから動画IDを入力して追加したものはリクエスト消化数順再生の対象になります。
  • 「自動再生」とは、現在再生中の動画が終わった時に自動で次の動画を再生するかどうかです。
    何も再生されていない状態から自動で再生開始することはありません。
  • ランダム再生でも先読み行いますが、先読み後にシャッフルしたり、リク、ストックの状態などが変化すると期待した動画が再生されません。(再現性のある乱数を使って数値調整しているので)
  • 動画情報で{=statement}から再生するたびシャッフルしかけるのが安全なんですかねぇ。

次曲

次の動画を再生します。
「サブ画面」が押されていたらサブ画面で再生します。

一時停止

このチェックボタンが押されている間、現在の動画の再生が終わっても、自動で次の動画を再生しません。次曲ボタンなどで再生を行ってください。

停止

動画の再生を停止します(/stop)
「サブ画面」が押されていたらサブ画面の再生を停止します。

サウンドオンリー(マイクアイコン)

このボタンにチェックを入れると、現在再生中の動画をサウンドオンリーにします(サブ画面ボタンの効果あり)。チェックを外すと、再生中の動画のサウンドオンリーを解除します。
また、このチェックが入っている間はサウンドオンリーで再生開始をします。

メイン、サブ切り替え(矢印アイコン)

メイン、サブ画面を交換します(/swap)

サブ画面

このチェックボタンが押されていると、
再生、停止、サウンドオンリーをサブ画面に対して実行します。

コマンド

アンケート、サウンドオンリー解除、などのコマンドのリストをいくつか置いています。

設定

従来の基本設定タブも含め、全ての設定項目はここに集まっています。

ウィンドウ

他のNicoLive Helperのウィンドウ一覧を表示して、そのウィンドウに移動できます。
また、ウィンドウサイズを初期状態に戻すもココです。
放送ID(lvXXXXX)を入力して接続放送IDであるlvXXXXXを直接指定して接続します。URL丸々コピペで大丈夫です。 バックアップと復元 現在のリクエスト、ストック、再生履歴のバックアップ、復元を行います 連続コメント 連続コメント用ウィンドウを開きます アンケート(Lv25+) 公式のアンケート用ウィンドウを開きます アンケート結果を表示する /vote showresult を送ります アンケート結果を消す /vote stop を送ります サウンドオンリー(メイン) /soundonly on を送ります サウンドオンリー(サブ) /soundonly on sub を送ります サウンドオンリーを止める(メイン) /soundonly off を送ります サウンドオンリーを止める(サブ) /soundonly off sub を送ります カメラ映像に切り替え /play を送ります JSONファイルダウンロード 動画情報設定で指定したJSONファイルをダウンロードします 配信開始 配信開始します。ニコ生アラート等で配信開始されたか確認することを推奨。公式コンソールで配信開始ボタンが押せない時にでも 次枠へ 現在の番組を再利用して、新規番組登録ページに移動します その他 使用頻度の低いと思われるものをまとめています  Automatic Broadcastingこのメニューにチェックすると、生放送に接続すると同時に放送開始を行います。自動ジングル再生がなかった場合、放送開始30秒後にリク>ストックの優先で動画を再生開始します。放送終了時(/disconnect受信時)またはロスタイム2分経過した後、次枠獲得のため新規番組登録ページへジャンプします。このとき、about:configの「greasemonkey.scriptvals.http://miku39.jp/nicolivehelper/WakutoriF modified.WakutoriFMode」を 1 にセットします。  ロスタイム作成 チェックがあると、動画を視聴したままロスタイムに突入できるようにします。新旧バージョンのどちらでも使用できます(多分)。このチェックがある最中は放送終了ができません。  無料延長を行う 予約枠で無料延長処理を行います。  自動無料延長 チェックがあると、終了3分前になると無料延長処理を自動で行います。  放送時間延長 放送時間を延長します(有料延長に対応)  プレイログチェック リクエスト受付時、co154での再生履歴を参照し、前回いつ再生されたか確認できるようになります(co154専用)。参考にどうぞ。  強制生主モード 座席番号が急に変わったりして生主で動かないときの緊急用に。  処理中のリクエストを破棄 リクエストの処理が終わらずリクエストの受付ができなくなった場合に、一旦、現在処理中のリクエストを破棄して、再度リクエストを受け付けられるようにします。  分類エンジンの学習情報を初期化 今までに学習した内容を消去し、学習をやり直します。

延長処理について

コマンド→その他→放送時間延長から、すべての延長処理が行えます。

  1. まず、延長する前には「更新」を選び、所持ポイントと延長メニューを更新します。
  2. 正常に動作すれば、このメニュー内に延長可能なアイテムが追加されます。
  3. あとは、延長したい時間とポイントを確認して、選んでください。
  4. 所持ポイントが足りなければアラートが出ますし、延長を実施する前には、所持ポイント、消費ポイントを確認するダイアログが表示されます。
  5. この機能は実際に金銭を消費するため自己責任で(MITライセンスで提供しているので自己責任なのだけど大事な事なので(ry)

リクエスト

リスナーコメントで sm/nm番号が流れたときに、リクエストキューに追加されます。複数動画IDが含まれている場合は先頭の 1つ が対象です。
入力ボックスから追加する場合、sm/nm番号(複数可,sm0sm1sm2 みたいに連結されたままでも、どんなゴミが含まれても、(sm|nm+数字)で認識するので)を入力すると、リクエストキューに追加されます。

  • 自貼り(自張り)コメント付きでされたリクエストは、緑色になります。
    リクエスト縛り、新着制限はすり抜けて、自貼りリクエストは受け付けます。リクエスト不可のときは自貼りでも受け付けません(自貼りを騙るリク荒らし対策)
  • 自貼りさんのコメントリフレクション登録用に、リクエストのコンテキストメニューからリク主をコメントリフレクション登録するメニューがあります。
  • リクエストタブからのコメントリフレクション登録では、ダイアログでの入力初期状態に P名 が設定されます。
  • リク主のコメント番号の下に、再生開始までの所要時間を表示します(1.1.29+)
  • 再生できなかった動画は「リク・再生エラー」に移動し、自動再生の場合は、即座に次の動画の再生を開始します。
  • 他の生主へのリクエスト引き継ぎ用に、コンテキストメニューから残リクエストの動画IDをクリップボードにコピーできます。
  • リクエストにカーソルを持って行くと、チップヘルプで動画のビットレートを表示します。
  • 左下にあるプログレスバーでコンテキストメニューを出すと、再生中の動画をマイリスト登録できます。
  • 学習結果に基づいて動画を分類し、ラベルを張ります。
    トレーニング結果によるので、利用者それぞれで分類のされ具合は異なります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_request.png' />

アンカー指定

アンカー指定は、リクエスト不可中に、特別にリクエストを受け付ける「区間指定」のような形で載っています。
そのため、アンカー指定を行うときは、リクエスト不可の状態であることが必要です。(コメントの説明のところを参照)

今までは、リクエスト不可状態にしたあとコメントタブから所定のフォーマットのコメントを行うことでアンカー指定を行っていましたが、リクエストタブからダイアログによって指定することが可能になります。
アンカーを設定すると、自動でリクエスト不可状態に切り替わります(要注意)。

コメント番号、リクエスト受け付け最大数は「半角数字」で、入力してください。未入力の場合は、未指定での動作になります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/anchor-request.png' />

リクエスト処理状態

  • リクエストを受け付けて処理(動画情報取得)中かどうかを示す表示を、リクエストタブに追加しました。(1.0beta3+)
  • 表示されていて数が減る気配がない場合、通信エラーかもしれないので、タイムアウト30秒~1分くらい待ってみてください。タイムアウト分は処理キューから抹消するはず。
  • まれにリクエスト処理が止まることがあるみたいで、その場合は、コマンドメニューから「処理中のリクエストを破棄」することで復帰できます。(1.0beta4+)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_request2.png' />

リクエストのJ-WID検索(1.1.26+)

従来は、コメントタブから作品コードを選択し、コンテキストメニューを表示することで検索していましたが、JASRACのJ-WID検索に限り、リクエストタブからも検索できるようになりました。他の音楽著作権管理団体のは気が向いたらで。
コメントに複数含まれている場合は、最初の1つを認識します。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_request3.png' />

ストック

ストック(いわゆる主セレ)。マイリスト(公開マイリスト含む)からインポートできます。
公開マイリストの取り込みはマイリストのURLを入力欄に入れてください(マイリストのページやリンクなどをドロップしてもOK)。
灰色になっているものは再生済みのもの、ピンクのものは未再生のものです。
灰色のものは自動再生の対象になりません。

  • 数字10桁の動画IDを使用できます(チャンネル動画等)。ただしコミュニティ動画の場合はAPIで動画情報を取れないため未対応です。
  • .txtのファイルをストックにドロップすると、テキストファイル内のsm/nm番号を読んでストックに追加します。
  • テキストファイルだけでなく、動画やマイリスのリンク、検索ページのタブもドロップできます。(sm9105183)
  • カテゴリ別のランキングページのタブもドロップできます。
  • 再生済みのストックは次に再生する動画の候補になりませんが、「再生済みを解除」すると、次の動画の候補になります。
  • コンテキストメニューからは、P名設定などができます。
  • リクエストにカーソルを持って行くと、チップヘルプで動画のビットレートを表示します。
  • 全体の再生スタイル指定とは個別に、ストックに対して再生スタイルを指定できます。
    「---」のときは、従来通り、ツールバーでの指定に影響します。
  • 学習結果に基づいて動画を分類し、ラベルを張ります。
    トレーニング結果によるので、利用者それぞれで分類のされ具合は異なります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_stock_menu.png' />

リクエスト・ストック内検索

  • リクエスト、ストックは、CTRL+F で動画検索をすることができます。
    MacだとApple+F
  • F3 で次を検索します。
    Macだとシステム環境設定のキーボードから、標準のファンクションキーとして使用にチェックしないとダメなんですね。
  • 検索対象は、画面に表示されている全てのテキストです。
    とはいえ手抜き検索なので、レートの★とかも検索対象になります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/searchfromrequeststock.png' />

リク・再生エラー

リクエスト受け付けを(縛り外などで)拒否した動画と、再生時にエラーとなった動画をリストアップします。

  • 白はリクエスト受け付けできなかった動画(縛り条件を満たしていない)
  • 灰色は再生時エラー(生放送で引用が許可されていない、/playコマンドを送信したらサーバからエラーが返ってきた時)
  • 2010/3/25のメンテで、再び生放送引用拒否動画の再生時エラーを出すようになったので、再生できなかった動画もリストアップするようになります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_errorrequest.png' />

再生履歴

ボカロ系生放送のプレイリストスレッドに書き込みやすい体裁で、記録しています。
動画IDを範囲選択してコンテキストメニューを出すと、マイリスト登録もできます。
消去ボタンは、再生履歴を消去し、再生済みの動画も、再度、リクエストを受けとるようになります。

  • NicoLiveHelperのウィンドウを開いて生放送に接続し、経過時間が 3分以内のうちに動画が再生された場合、番組名、放送ID、開演日時を記録します。
  • タイムシフトに接続すると、その放送のプレイリストを作成します。
  • テキストボックスを編集しても 実際の再生履歴は消去されない ので、消去ボタンを押して消去してください。
  • テキスト復旧は、内部の履歴データに基づいて再生履歴テキストを復旧します。
    番組名は放送IDは記録されていないので、動画IDとタイトルのみの復旧になります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_history.png' />

新しい再生履歴表示が追加されました。

  • こちらが、内部の再生履歴データそのものです。
  • ※今のところ個別削除とか考えていません。要望があればやってもいいかなくらいに。
  • テキスト復旧はこのリストを元に復旧させます。
  • タブ間移動していると、なぜか再生履歴の表示位置が上に移動していることがあるけど、原因不明。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_newhistory.png' />

コメント

ただのコメントビューア。発言もできます。
コンテキストメニューから コテハン設定、背景色設定、リフレクション登録、コメントのコピー ができます。

ここからコメントを発信する場合、アンカー指定のリクエスト受け付けを実行することができます。
>>10-20@5」と主コメすると、コメ番10~20の範囲で最大5個受け付けることになります。
アンカー>>100-120@5つリク受け付けます」とか「安価>>100-120」(@がないときは受け付け個数制限なし)でもOK。

  • 動画IDにカーソルを持って行くと、動画のブログ貼り付け用の表示がカーソル位置付近に現れます。
  • >>開始コメ番-終了コメ番@受付個数」の形式が主コメに含まれていればOK
  • 有効なアンカー例:
    >>35-」コメ番35番以降全て
    >>35-50」コメ番35-50番
    >>35-@5」コメ番35番以降5個まで
  • アンカー指定でのリク受け付けは「リクエスト不可」の状態でのみ行われます
  • アンカー指定中は「受け付けました」の自動応答はありません。ただし、受け付けエラーは自動応答します。
  • 指定したアンカーを無効にするには再度「リクエスト不可」を選択してください。
  • 「運営コメ欄に表示」にチェックがあると、必要に応じて発言前に /cls を行い、運営コメ欄にコメントを表示します。
    コメント入力欄からの発言のみで、自動応答などは対象外です。
  • /clsがやってこない間6秒間隔で再送しますが、ラグは面倒見切れないので、/cls→コメント→/clsとなって、コメントがほとんど表示されずに消されてしまうこともありえます。
  • OS側で持つコンポーネントの色選択ではないので、背景色に選べる色はこんな感じ。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_comment_menu2.png' />

JASRAC,e-Licenseコード検索

JASRACコード、e-Licenseコードを範囲選択(おおざっぱでOK)しポップアップメニューを開くと、
ブラウザにタブを追加し、指定管理コードの検索結果を表示します。

  • 0xx-xxxx-x がNGに引っかかってしまうため、0xx=xxxx=x や 0xx/xxxx/x で代用することもできます。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/jasrac-code.png' />

コメントリフレクション

  • コメントリフレクション登録すると、視聴者のコメントを運営コメントを使用して再コメントを行います。
    ニコリクVAの副管理者というと分かりやすいかも。
  • NG処理がサーバ側で行われるため、NGユーザ登録を行うとその人のコメントが一切送信されなくなるため、NGユーザ登録設定の口はあっても一切効果はありません。
  • 表示する名前は「設定した名前+さん」になります。「天気さん」と設定すると「天気さんさん」になるので注意。
  • リフレクションは枠内のみ有効で、枠を越えたリフレクションは行いません。
    また、ウィンドウを閉じる時、放送を終了する時にNGユーザー登録は全て解除します。
  • 運営コメントに名前を表示では、「名前さん:<br>コメント」の形で運営コメントします。
  • 運営コメント欄、左上にある名前欄に表示では、運営コメント欄左上隅にある名前表示欄に、指定の名前を表示します。
    運営コマンドに認識されないよう ZWSP(\u200b)を使って、運営コマンドに認識されないようにしています。
  • バックステージパスコメントの表示を利用できます。
  • なぜコメントリフレクションって呼ぶのかって?
    ニコニコ生放送にはリスナーに生主権限を一部付与できる機能がなく、受け取ったコメントを再送信するくらいしかできないので。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/commentreflection.png' />

  • コメントの流れが速いときでも操作しやすいよう、コメントタブ下部に設定用の領域があります。
  • 登録したコテハンの削除は、ここで、DELキーを押してください。(Macだとfn+DEL)
  • コテハン設定削除を、DELキーだけでなくコンテキストメニューからも可能に。
  • 「自動コテハン登録」などはNicoLive Helper本体の機能ではなく追加機能です。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_comment3.png' />

コメント内リクエスト操作(1.1+)

コメントビュー内から、リクエスト(自貼り)に関連する操作を行えます。

  • 「リクエストを自貼りに設定する」
    自貼りフラグを設定し、背景色を緑にします。
  • 「リクエストを先頭に移動する」
    指定の動画をリクエストキューの先頭に移動します。

いずれも、リクエストに指定の動画が存在する場合に有効です。(なければ何も起こらないだけ)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_comment2.png' />

動画DB

ただの動画DB。条件指定して動画検索を行うことが出来ます。
動画のDB登録は、マイリストまたは入力ボックスへの入力で行えます。

  • リクエスト送信は、リスナーなら動画IDをコメント送信、主ならリクエストタブ行きです。
  • ストックタブと同じものをドロップして、動画DB登録できます。
  • 検索結果が表示されているときにUpdateボタンを押すと、検索結果内で1週間以上更新されていない情報を取得します。10件/10秒ずつ。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_moviedb.png' />

フォルダ分類による動画整理(1.1.18+)

マイリスト25個では分類には数が足りんということで、
ごく一時期に仮想マイリスト機能として本物のマイリストに乗りかかるような形で実装したことがあって、意見求むとテスト公開したもののとくに意見などもなく封印していたものを、
いい加減にマイリストが手狭になってきた…とUI部分だけ別途作成する感じに改めて搭載。

  • 動画DBにあるデータをフォルダという形で整理するため、動画DBに登録されている動画が対象です。(仮想マイリストが発端なので、今のところはツリー構造は考えてなし)
  • 作成できるリスト数、リストに登録できる動画数に制限はありません。
    登録動画数はあまり増やすと逆に使いづらくなると思うので、リストを増やす方向がいいかも。
  • 動画をリストから削除しても、動画DB自体には動画情報は残ります。
  • 動画DBにない動画をリストに追加した場合、動画DBにその動画情報が追加されます。
    また、動画DBを引用する手前、DBへ新規にデータ追加が必要となる場合には即座にリストに反映されない場合があります。その場合はリストの選択し直し等で。
  • ドラッグ&ドロップで動画の移動・コピーができます。
    通常D&D:移動、CTRL押しながらD&D:コピー
    Macだとどうキーアサインになるんだろう…。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/tab_folderdb.png' />

再生中動画のマイリスト登録

  • 左下のプログレスバーのコンテキストメニューからマイリス登録を行うことができます。
  • CTRL+M でとりあえずマイリストします。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/add_mylist.png' />

内蔵ブラウザ

そういえば、右ペインにブラウザがあったのを忘れていました。

  • 開くボタンで生放送のページを開きます
  • あとは通常のブラウザと同じようにリンクを辿って他のページに行くことも出来ます
  • ヘッダ、フッタは消去しています。邪魔なので。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/browser.png' />

NicoLive Helper Settings

基本設定

接続時にジングルを再生する

Helper起動時、放送開始から3分未満、まだ何も再生されていない時に、5秒待ってから、指定の動画を再生します。
コミュニティ毎にジングル動画を指定することができます。
  • ジングル動画IDの後ろに、/co0000 とコミュニティIDを記述すると、そのコミュ用のジングルになります。
  • コミュニティ指定がない動画IDは、その他のコミュニティで再生されます。
  • sm7113282 sm6941824/co154 sm6941769/co154 sm7113282/co154」開発主の例
  • co154 初音ミクコミュで生主する場合、sm6941824,sm6941769,sm7113282 の3つからランダムで選択して再生します。
  • それ以外のコミュでは sm7113282 を再生します。

自動再生時、放送枠内に収まるように再生する動画を選択する

枠に収まるように動画を選択して再生します。

ロスタイムを考慮し、若干の枠オーバーを許容する

ロスタイムを計算し、そのロスタイム時間を含めて、次の動画を選択します。

次の動画を再生するまでの待ち時間

動画と動画の間の待ち時間を入力します。

1つの動画の最大再生時間

動画を再生する最大の時間を指定します。15分ある動画を自動で5分で切りたい時など。0は無制限です。

リクエストに対して自動で運営コメントを返す

リクエストの受け付けについて運営コメントします。

運営コメント欄に表示する

リクエストへの応答コメントを、hiddenで表示した運営コメントを事前に消去し、運営コメント欄に表示するようにします。

リクエストの新着(7日)規制を行う

VOCALOID生放送基準で7日以内に投稿されたリクエストを拒否します。

再生済み動画のリクエストを受け付ける

再生履歴にある動画のリクエストを受け付けるようになります。

n分以上前に再生された動画を受け付ける

再生済み動画のリクエストを、どのくらい過去に再生されていれば受け付けるかを分単位で指定します。

1枠1人あたりのリクエスト受付数

1枠に1人あたりいくつのリクエストを許可するかを指定します。0は制限なしです。

初音ミクのライブモード(開発主用)

動画分類機能とカスタムスクリプトで、ここでやろうとしていたことは実質できるようになってしまったので、存在意義が…。
開発主用なので、開発主のユーザIDでのみ効果があります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_basicsettings.png' />

動画情報

運営コメントで行う、動画情報をカスタマイズできます。
使用できるマクロは後述で。

  • 1行目から空行になるところまで、8秒間隔でコメント送信します。
  • コメ欄に動画IDを直接入力して再生したとき、動画情報を主コメしない設定は、ジングル動画の情報も出なくなります。(ジングル再生が動画ID直接入力再生と同じなので)
  • 「P名D名を自動認識しない」は、末尾にP,DのあるタグをP名として扱わなくなり、P名ホワイトリストに列挙されたP名のみをP名として認識するようになります。
  • JSONファイルのあるURI(URL)にある先の、ファイルの中身は { "sm9": 値, "sm10": 値 } となっているものです。
    ミクノ度の場合は、http://mikunopop.info/play/count.json など。
  • file:// でお使いのPC内のファイルも指定できます。
  • 動画情報のコメント{json}マクロで置換されます。
  • このファイルは、生主で起動するときに読み込みます。
  • 動画情報以外のコメントをした場合、指定の行数目の動画情報を再送信します。
  • 動画情報(最大4行)のコメント送信が終わったあとに発言したコメントから有効です。
    動画情報送信中の場合は、コメントしても再送信は行いません。
  • 動画情報プレビューは入力欄で何かキーを押したときに更新されます。
    XHTMLとして評価されるので、正しくないと一切表示されません(レンダリングエンジンはルールに厳しいのです)
  • プレビューに表示される動画情報は、ストックの1番目のものか、「私の時間(sm1340413)」です。
  • flashのレンダリングとGeckoのレンダリングは違うので、あくまで(色とかの)参考にしてください。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_movieinfo.png' />

  • エクスポート・インポートすることで、この動画情報設定をファイルを介して他者と共有したり、設定を保存したりすることができます。

P名ホワイトリスト

  • P名として認識したい文字列を、1行につき 1つずつ記入して、保存ボタンを押してください。
  • 内蔵のP名リストと併合して使用します。
  • ウィンドウを閉じ、開き直した後から有効になります。(ウィンドウを開くときにしか読んでいないので)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_pnamewhitelist.png' />

運営コメント

リクエストを受けるときに応答する運営コメントをカスタマイズできます。

  • 空欄にしておくと、その応答はコメントなしになります
  • そういうことで、個別に応答の有無を指定できます。
  • 「連続コメント用テキストファイル保存先」は、連続コメントウィンドウでリストアップされたい.txtファイルのあるフォルダを指定します。
  • 運営コメントタブ内の設定を、プリセット登録することができます。
    コミュ別に差し替えたいときにどうぞ。
  • 応答コメント設定が /(スラッシュ)から始まる文字列の場合、「>>コメント番号」を付加しなくなります。(1.1.34+)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_comment.png' />

スタートアップコメント
  • 生放送に接続したとき、何も再生していないとき、開始3分以内のときに、スタートアップコメントとして発言します。
  • 1行5秒間隔で送信します。
  • 5秒間隔とはいえ、ラグがひどい時には前後することもあります。
  • 最近のニコ生はたまに主コメが配信されないことがあるのも、注意。
  • 主コメなので、{hoge} は一通り使用できます。
    とはいっても、{title}などの動画情報は利用できないですが。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_startup-comment.png' />

リクエスト制限

リクエストを受け付ける動画の条件(リク縛り)を指定します。
指定した条件をプリセット名を指定して保存することができます。
プリセット名を入力し、登録ボタンを押してください。
プリセットを削除する場合は、削除したいプリセット名を入力し、削除ボタンを押してください。

登録ボタンを押した場合は、プリセット読み込み*メニューに追加されています。
削除ボタンを押した場合は、プリセット読み込みメニューからは項目は削除されません(面倒なので。そんな細かいところ修正しなくてもいいよね)が、Advanced Settingsを開き直すと消えています。

タグの条件では、(半角)空白区切りで OR 条件指定できます。完全一致ではなくて、部分一致です。

  • タグ「初音ミク 鏡音リン」を含む と指定すると、タグに、初音ミクまたは鏡音リンがある動画を受け付けることができます。
  • タグ「初音ミク」を含む、「名誉のランキング除外 歌ってみた」 と指定すると、だいたいぼからん基準。
  • タグ「アイドルマスター」を含む、「紳士協定違反」を含まない と指定すると、紳士協定違反を除いたアイドルマスター動画を受け付けることができます。
  • 0 と指定した項目は無視します。
  • 投稿日指定では、両方に同一の日時を使用したり、日時の前後関係が矛盾しているときに無視します。
  • 投稿日の始点は 0:00:00 から、終点は 23:59:59 までになっています。2007/08/01~2007/08/31 と範囲指定した場合、8/1 0:00:00 ~ 8/31 23:59:59 になります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_restrict.png' />

  • リクエストNG動画を、動画ID(sm,nm)で1行1つずつ列挙していってください。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_ngmovie.png' />

視聴者コマンド

  • /s /del /ver /version /dice があります。
    PITASEに合わせて、行頭/から。@の方は対応しない。
  • /ver はNicoLive Helperのバージョンを(これだけ視聴者コマンドOFFでも実行する)。
  • /s はリクエストの確認。
  • /del/del all でリクエスト全削除、/del sm9 で指定のリクを削除。
  • /dice はダイスロールの結果を応答します。
    /dice 2D+5/dice 3d10-2 と書く。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_listenercommand.png' />

その他

  • コメントログを保存するときは、必ず保存先を指定しておいてください。
  • コメントログの保存先は、コミュニティ・チャンネル生放送の場合は、そのIDのフォルダを作成しその下に、公式生放送等で特定のコミュ・チャンネルIDを持たない場合は、指定のフォルダ直下(従来通り)になります。
  • n分前通知の方法を選択することができます。
  • 延長時のメッセージを変更することができます。(1.1.34+)
    これは動作未確認で、バグっていると延長成功していても失敗した通知がされる可能性があります。ただし、終了時刻は更新されていると思うので、ステータスバーの経過時間にカーソルを合わせると新しい時刻になっていると思われます。
  • NGワード処理を有効にすると、NGワードが含まれたコメントでコメント番号がスキップした場合に、それをコメントビューに表示します。また、設定によりその際に通知を行います。
  • コメント入力補完プリセットは 「文字,コメント」 と、1行ずつカンマ区切りで記入します。
  • コメントログファイル名で使える置換キーワードは以下。
    ファイル名の検査は行わないので、デフォルトから変更する場合、注意。
{request_id}放送ID {title} 番組名 {year} 現在の年 {month} 月 {date} 日 {hour} 時 {min} 分 {sec} 秒

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_etc.png' />

↑のようにすると、こんな風↓になります。

  • ジングル設定のかわりに、こっちにジングル動画を列挙させて再生させるのもありかと。
    自動ジングル再生だと普通の進行管理するので、ジングルが再生エラー(status=error)になると、ジングル再生せずに次曲に飛んでしまう欠点が。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_etc_autocompletesample.png' />

  • メインウィンドウで使用するフォントを選択できるようにしました(0.9.14+)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_etc2.png' />

  • 最前面表示はWindowsでのみ有効です。
    さらにFirefox自身がZオーダー管理、整列しているのかいまいち動作が怪しい。
  • 自動ウィンドウ開閉を行うとき、まとめて生放送のページも閉じることができます。
    ニコ生アラートのブラウザ起動と合わせれば、長時間のながら視聴に便利。
  • シングルウィンドウモードが追加されました。
    シングルウィンドウをONにしたら、NicoLive Helperのウィンドウを開き直して下さい。
    タイトルバーにSingle Windowと表示されていればシングルウィンドウモードで動作しています。
  • 動作は今までのマルチウィンドウ時と同じように動作します(1つのウィンドウを使い回すようになっただけ)。
    リスナー時でもリク拾ったり、再生履歴記録したり、そのままなので、消去せずのままで生主やるときに、拾ったデータは利用されます。
  • データ保存のルールはそのままのため、ウィンドウを閉じるときに、生主か、視聴者か、オフラインかの影響を受けます。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_etc_window.png' />

放送終了前通知

以下のイメージはMac OS X 10.6によるものです。

通知領域

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/nlh-notice-noticearea.png' />

ダイアログ

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/nlh-notice-dialog.png' />

ポップアップ with Growl

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/nlh-notice-popup.png' />

情報バー ニコニコ生放送の情報バー(正式名称は不明)を用いて通知します。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/nlh-notice-infobar.png' />

動画分類(0.9.14+)

※以前のお試し版を使用したことがある場合は、一旦、コマンド→分類エンジンの学習情報を初期化を行ってください。

機械学習(machine learning)を用いて動画を分類します。
ニコ動の場合、一般的に動画分類に有効に使えるような情報ってタグくらいしかないなぁってことで、タグを見て学習します。
タグだけなら、このタグがあったらこれに振り分けとかいうフィルタリングルールでも
いいかもしれないけど、ルール作成が手間なので、機械学習で勝手に覚えてもらうように。

  • 自分(開発主)の利用に不都合がない範囲で機能が載ります。
  • 変更した後は「コマンド→分類エンジンの学習情報を初期化」してください。つまり、学習のやり直し。
    0.9.14の学習エンジン的には、増やす分には問題ないけど減らす方には対応していないので。なぜなら、初音ミクのライブモードで固定的に使うものだったため。
  • 分類を多くするとそれだけ計算量、メモリ使用量(コーパスをオンメモリで持っているので)が増えるので、ほどほどにすべし。
  • 分類してラベル貼りを行うには、事前に学習が必要です。
  • 分類結果に基づいてリクエストの受付チェックをするには、次節のスクリプトを作成する必要があります。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_classifier.png' />

  • 初期状態は上記の通り。好きなように、削除、登録してください。
  • 項目を空っぽにすると、初期状態に戻ります。
  • 学習した後、その場ですぐにラベルを張り替えません。全部、計算し直しになるため。
    分類チェックで期待した結果が得られていれば問題ありません。
  • トレーニングセット(学習に使用するデータ)は、無作為抽出が好ましいと思います。
    自分の場合、ミクオリジナル曲、リンオリジナル曲、以下略で検索し、テケトーに動画を選んで、学習させました。
    以後は、分類の誤りなどがあり次第、学習と。

(ボカロ曲がオリジナルか否かの2分類なら、タイトルも使える情報なのだけど。)

スクリプト(0.9.14+)

特定のシーンで任意のスクリプトを評価し、その結果を利用して次の動作を決定します。
がんばってjavascriptコードを書いてください。
用事がないのに間違って打ち込んでしまわないように、チェックボックスで編集ONにしないと編集できないようにしています。

  • スクリプトを編集した後は、Helperを開き直してください。
    裏技じゃないけど、Helper開き直さずにスクリプトの修正を反映させることは可能です。後述。
  • まずはリクエストチェック用スクリプトから。
  • eval()の返り値を利用します。
    リクエストを拒否する場合、返り値は「文字列」になるようにしてください。
    これは、リクエストへの応答コメントに使われます。
  • 文字列以外(nullとかundefinedとかObjectとか)を返した場合はリクエストを受け付けます。
  • 後述の運営コメントのマクロにある「使用できる動画情報の例」で使える情報が、チェック対象になる動画の情報になります。
    info.view_counterがリクエストされた動画の再生数で、以下略。
  • NicoLive Helperの上で実行されるので、他の情報にもアクセスできます。({=statement}と同様)
  • 下のサンプル画像の例だと、再生数99900以上10万未満の、殿堂入り目前の動画のリクエストに対して、「殿堂入り間近のためリクエストを拒否しました」と応答し、リクエストを拒否します。
    空文字を返すと応答メッセージなしです。(運営コメント設定と同じ)
  • 例:if(info.view_counter<100000&&info.view_counter>99900){ ShowNotice(info.video_id+"は殿堂入り直前です"); }
    殿堂入り目前のリクがきたときに、通知領域で通知を行う。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_etc_customscript.png' />

  • 設定内容が変わると、設定内容の変化を検出して、設定を読み込みし直します。それに合わせて、スクリプトもロードするので、その辺の適当な設定項目を変更してOKボタンすれば、その場で、スクリプトの変更が反映されます。
    Macのプリファレンスシステムのデフォルトだと、値を変更するとすぐに保存されるので、その辺のチェックボタンをOFF/ONするだけでいいのかな。
スクリプト(コメントフィルタ)1.1.45+

設定→その他→スクリプトで、コメント1つ1つに対して処理可能なユーザーカスタムスクリプトの定義をする窓口を設けました。
とくに、生主、視聴者の区別なく、処理します。

if( chat.comment_no==100 ){ なにかする }

とか書いて、適当に処理してくれればOK。
何をできるのかは書ききれないためソース嫁で。


chat.noコメント番号 chat.comment_noコメント番号 chat.user_idコメ主のユーザーID chat.textコメント内容 chat.dateコメント日時(UNIX時間) chat.premium生主=3 プレミアム=1 一般=0 他いくつか chat.anonymity184かどうか chat.mailコマンド欄 chat.name名前 chat.locale言語 chat.origin日本(nicovideo.jp)からか海外(niconico.com)からかのパラメータだったはず

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/commentfilter.png' />

Twitter

Twitterにつぶやくことができます。

  • NicoLive Helper自身で直接つぶやくか、ニコニコ生放送のつぶやき機能を使うか、選択します。
  • 直接つぶやく場合は、Twitterアカウントの認証を行って下さい。
    ニコ生を利用する場合は、ニコニコ生放送側でTwitter認証を行って下さい。
  • xAuthを使用しているため、IDとパスワードを入力して認証が成功したあとは、以後これらの入力は不要です。また、ID・パスワードは保存していません。
  • 「配信開始した時につぶやく」は、コマンドメニュー上から配信開始した時につぶやきます。
  • 「動画を再生した時につぶやく」は、動画情報を送信する時につぶやきます。
    動画情報を送信しない場合はつぶやきません。
  • CTRL+T でどこからでもつぶやくことができます。
  • 140文字のチェック・長文省略などは行っていないので、エラーになった場合は情報バーに表示されます。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/adv_twittersetting.png' />

連続コメント

歌詞コメ用に用意したもの。

  • 運営コメント設定で指定されたフォルダにあるテキストファイル(.txt)をリストメニューで選択して、テキストボックスに読み込むことが出来ます。
  • テキストファイルをドロップしても読み込みます。
  • 文字コードは UTF-8 です。
  • 「\n」で改行を仕込むことが出来ます。(1.0beta4)
    「\\」で「\」記号になります。
  • 「/コマンド/コメント」で行単位にコマンド指定できます。(1.1.34+)
    例:/green shita/なんとかかんとか
  • コメント中に運営コマンドが必要な場合は、たとえば「/green//perm コメント」こんな感じになります。最初の/~/の間がコマンドとして扱われて、残りはすべてコメントになります。
  • 秒数を指定して1行送信ボタンを押すと、その間隔でテキストが空になるまで自動送信します。途中、手動に切り替えると、自動送信を停止します。(1.1.49+)

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/continuouscomment.png' />

視聴履歴メニュー

  • 履歴メニュー内にNicoLive Helperを設け、視聴履歴を記録しています(1.1+)。
    1.0系ではツールメニュー内。
  • クリックすると生放送のページへジャンプします。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/browseroverlay.png' />

キーボードショートカット

Win/LinuxはアクセラレータキーはCTRL、MacはCommand になるので、その辺は適当に読み替えてください。

F5 リクエスト・ストックの再描画 F3 次の動画を検索(CTRL+Fで検索した後) CTRL+Fリクエスト・ストックを検索する CTRL+M現在再生中の動画をとりあえずマイリストする CTRL+TTwitterでつぶやく(NicoLiveHelperから直接つぶやくので、設定から認証が必要) CTRL+Wウィンドウを閉じる CTRL+R再接続を行う CTRL+Bバックステージパスコメントを利用してコメントする(放送主のみ/1.1.18+) CTRL+Zアンドゥ(1.1.52+) CTRL+1~CTRL+0左から1,2,3...番目のタブに移動する(1.1.30+) CTRL+← 左のタブに移動する(1.1.52+) CTRL+→ 右のタブに移動する(1.1.52+)

プレイリスト(おまけ)

生放送に接続していないオフライン時、
ストックの再生ボタンを押すと、ニコニコ動画でその動画を再生します。
以降、ストックの最後に向かって、連続で再生します。

3.6.4あたりで実装されたOut of Process Pluginの影響か、自分のところではよく動作しなくなります。


運営コメントのマクロ

{title} 再生中の動画のタイトル {view} 再生中の動画の再生数 {comment}再生中の動画のコメント数 {mylist} 再生中の動画のマイリスト数 {mylistrate}再生中の動画のマイリスト率 {date} 再生中の動画の投稿日時(yy:mm:dd hh:mm:ssの形式) {length} 再生中の動画の再生時間(mm:ssの形式) {tags} 再生中の動画のタグ(35文字ちょいで改行される) {pname} 再生中の動画のP名(D名) 不明のときは空文字 {username}再生中の動画の投稿者名(1.1.48+) {id} 再生中の動画の動画ID {description}再生中の動画の説明文(先頭40文字まで) {additional}再生中の動画の個別の追加情報 {requestnum}リクエスト残数(数字のみ) {requesttime}リクエスト総時間 mm:ss の形式で {stocknum}ストック残数(未再生のもの) {stocktime}ストック総時間(未再生のもの) mm:ss の形式で {json} 再生中の動画の、動画情報設定で指定した先のJSONファイルにある情報と置換します {mylistcomment}マイリストからストック追加した場合、再生中の動画のマイリストコメントがあれば、マイリストコメントと置換します {pref:min-ago}生放送の終了前 n 分通知設定の n と置換します。 {end-time}放送終了になる日時(1.1.34+) {progress}プログレスバーをコメントします。
  • {additional}は、コンテキストメニューの「追加情報設定」から設定した任意の文字列に置換します。
    ある動画に「○○発売中!」とか登録しておけば、{additional}の部分が「○○発売中!」に置換されて主コメが行われます。

for Advanced users(上級者向け)

{=statement} と書くと、式を評価した結果と置換します。

  • ステートメント内の、最後に評価した式の結果と置換します。
    つまり、{=1+1;""}と書くと、まず式1+1を評価、次に式""を評価ときて、最後に評価した""(つまり空文字)と置換します。
  • レシピでたびたび""がラストに来ているのは、計算だけ行って何も表示させないためです。
  • {=1+1} と書くと、2 と置換します。
  • {=info.mylistcomment?info.mylistcomment:"マイリストコメントはありません"} と書くと、
    マイリストコメントがあればそれを、なければマイリストコメントはありませんと主コメする。
  • {=info.view_counter/info.comment_num} だとボカロ系で見られる聴き入り度。
  • 条件分岐もOK。
  • コミュニティ別コメント変更もできるし、夢がひろがりんぐ。
  • javascriptの解釈できるステートメントであればいいので、上級者ユーザーはnicolivehelper.jsを読みつついろいろ試してみるといいかも。

使用できる動画情報の例:

info.cnoリク主のコメント番号。リクエストではないときは0 info.video_id動画ID info.titleタイトル info.description動画の詳細(先頭40文字) info.first_retrieve投稿日(UNIX時間) info.length再生時間(mm:ss形式) info.length_ms再生時間(ミリ秒) info.view_counter再生数 info.comment_numコメント数 info.mylist_counterマイリスト数 info.highbitrate平均ビットレート(kbps) info.pnameP名(D名) info.mylistcommentマイリストコメント。ないときはundefined

リクエスト制限への応答で使える情報の例:

info.restrict.view_from再生数(以上) info.restrict.view_to 再生数(以下) info.restrict.mylist_fromマイリスト数(以上) info.restrict.mylist_toマイリスト数(以下) info.restrict.videolength動画の時間(秒)以下 info.restrict.date_from投稿日(以後) info.restrict.date_to 投稿日(以前) info.restrict.requiredkeywordその動画のタグに含まれる必須キーワードのリスト info.restrict.forbiddenkeywordその動画のタグに含まれる禁止キーワード info.restrict.numberofrequests1人あたりのリクエスト受け付け最大数

JSONファイルについて

{ "sm9": value, "sm10": value, "sm11": value }
のように、動画IDをキーに値が設定されているオブジェクトのJSONです。
このリストにない動画の値は 0 になります。

再生時間の再定義について

APIで取得できる動画の再生時間と、実際に再生したときの再生時間が異なる動画が結構な数あります。(例:sm1986944)
自動再生している時に動画の最後が途切れてしまって残念なことになってしまわないよう、再生時間を再定義できるようにしています。

  • Extensionのインストールされるパスの親の場所に nlh_videolength.csv というファイルを置く。
    デバッグタブを見て、VideoLength CSV=d:\path\to\nlh_videolength.csv と書かれているディレクトリに用意すればOK
  • 「動画ID,再生時間」を列挙する。
    例: http://code.google.com/p/nicolivehelper/source/browse/nlh_videolength.csv
  • NicoLive Helperのウィンドウを開いたときに読み込んでいるので、ウィンドウを開き直し、
    実際にリクやストックに登録してみて再生時間が定義した通りになっているか確認する。

初音ミク(co154)専用機能(1.1.27+)

http://183.181.4.48/~amano/co154/playlog.pl'>http://183.181.4.48/~amano/co154/playlog.pl にある最近のプレイログを参照し、このリストに含まれる動画がリクエストされた場合に、特定の配色でハイライトします。

最近、生主が変わったことをいいことに直前の枠で流れた動画と同じ動画をリクエストされるのが非常に気になったので(同一リク主かは分からないけど)、生主が、直近に流れた動画かどうかを確認しやすいように。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/mikulive-recentlyplayed.png' />

Automatic Broadcasting(Experimental)

Automatic Broadcastingモードで行うのは、以下の3つです。

  • 生放送に接続すると、配信開始を自動で行います。
  • 接続後、ジングル>リク>ストックの優先で、必ず動画を再生開始します。以後は通常通りに進行。(通常はジングル再生か、何か再生ボタンを押すまでは再生開始しない)
  • 放送終了時に自動でウィンドウを閉じる設定になっている場合、自動ウィンドウクローズを行う時に、about:configの「greasemonkey.scriptvals.http://miku39.jp/nicolivehelper/WakutoriF modified.WakutoriFMode」を 1 にセットし、新規番組登録画面(現在の番組を再利用する)にジャンプします。

あとは、Greasemonkeyスクリプト等で枠取りを自動化するなど。自分は枠鳥Fを待ち行列仕様に改造したものを使用。

枠鳥F改造版などは元のライセンスがはっきりしていないプログラムなので、現初音ミクのライブ関係者(判断基準は通常のPart#枠を不定期でもやっていると自分が認識している生主)にのみにコッソリお渡しするということで(ミクライブ生主特典)。

外部ブラウザ

外部ブラウザのクッキーを使用しているとき、リンクを開くときに外部ブラウザを使用します。

Firefoxのオプションのココで設定できるものですので、取り消したいときなどはオプションから指定してください。

http://wiki.nicolivehelper.googlecode.com/hg/Manual.attach/externalbrowser.png' />

Tips and Q&A

no loginのダイアログが出る

  • 「オプション→プライバシ→記憶させる履歴を詳細設定する→サードパーティのCookieも保存する」にチェックがあるかどうか確認する。チェックがなければチェックする。

※ニコニコミュニティ(co105163)で、サードパーティクッキーを保存しなくても使用可能なテスター向けバージョン置いてあります。

また、過去の報告によると、以下のいずれかで改善することもあります。

  • ツール>オプション>詳細>ネットワークから、キャッシュを消す。
  • 設定>プライバシーにあるCookieを個別に削除から、ニコニコ動画のクッキーを削除して、ログインし直す。
  • Firefoxを一回アンインストールし、再インストールしてみる。
  • プロフィールマネージャで新しいプロフィールを作り、そちらで試してみる。
    新しいプロフィールで設定など初期状態から使ってみる。
    プロフィールマネージャはWindowsではスタートメニューにありますが、
    Macだとターミナルで /Applications/Firefox.app/Contents/MacOS/firefox-bin -ProfileManager みたいです。
    新しいプロファイルで動くようなら、設定とかアドオンとかに何かありそうですが、どこをどう変更すればいいか検討つかないので、ブックマークなどバックアップとって引っ越しするのも手かも。

それでもダメなようでしたら、使用環境を添えてIssueかニコニコミュニティの掲示板へ。

DBアクセスに失敗する場合

動画データベースにはFirefoxを終了させても永続するデータも保存されています。
動画DBの仕様自体はバージョン1.1.1(最近機能追加したフォルダDBもこの段階で実装済み)くらいから変わっていないのですが、
最近たびたびファイル破損による動作不良を耳にしています。

SQL Optimizerなどを使用してこのデータベースを最適化すると壊れる場合があります。

SQLiteのデータベースファイルを復旧(repair,recovery)するツールを使用することもできると思いますが、そういったことを行うのが難しい場合、以下のデータベースファイルを削除することで、問題は解決すると思います。
ただし、動画DBに登録してあったり、記録されていたデータはなくなります(つд・)

  • Windows Vistaの場合(例)
    C:\Users\ユーザー名\AppData\Roaming\Mozilla\Firefox\Profiles\プロファイル名\nicolivehelper_miku39jp.sqlite
  • Mac OS Xの場合
    /User/ユーザ名/Library/Application Support/Firefox/Profiles/プロファイル名/nicolivehelper_miku39jp.sqlite

また、使用OS、使用ストレージデバイス(HDD/SSD/USBメモリ/RAMディスク等)、ファイルシステムととその空き容量、
Firefoxのバージョン番号、あと気になることはPCの終了のさせ方(スリープ、サスペンド、電源OFF)あたりが気になるので、報告してもらえるとありがたいかも。

(ぶっちゃけデータベースのACID性はSQLite、つまりファイルシステムに頼っているので、リペアツール使うか、削除して作り直すかの以外ではこちらでは対処不能の可能性大)

ジングル動画の動画情報送信を止めたい

  • 「動画IDをコメント欄に直接入力して再生した場合、その動画情報を主コメしない」をチェック。

マイリスト登録時にマイリストコメントを記入したい

  • CTRL(Win,Mac共通)キーを押しながらマイリスト登録すると、マイリストコメント入力ダイアログが表示されて、そこから記入します。

チャンネル動画を扱いたい

  • 10桁数字のチャンネル動画は、リクエストとしては自動で拾いません。
  • ストック追加では、10桁コードには対応しています。
  • 10桁コードのリクエストは、
    1. コメントビューアでコピー(コンテキストメニューからか範囲指定してCTRL+C)
    2. ストックに登録
    3. リクエストに移動
  • とちょっと面倒な仕様にしています。

終了前通知や自動無料延長を実行するタイミングがずれている

  • お使いのPCの時計が日本標準時(JST)からずれていると思われるので、時刻合わせを行ってみてください。
    http://www2.nict.go.jp/w/w114/tsp/JST/JST5.html

データのバックアップ

設定自体はFirefoxのプリファレンスシステムを用いているため、
バックアップってどうやるんだろう…。
それ以外の動画DBやP名設定などは、

  • Windows Vistaの場合(例)
    C:\Users\ユーザー名\AppData\Roaming\Mozilla\Firefox\Profiles\プロファイル名\nicolivehelper_miku39jp.sqlite
  • Mac OS Xの場合
    /User/ユーザ名/Library/Application Support/Firefox/Profiles/プロファイル名/nicolivehelper_miku39jp.sqlite

ウィンドウ座標をデフォルトに戻す

0.9.9でウィンドウ座標、サイズの保存方法が変わりました。
ウィンドウサイズはコマンドメニューからデフォルトに戻せますが、
座標は戻せません。


最前面表示にならない

Windowsでのみ効果があるようです。

Mac OS X 10.4 Tiger/Ubuntu(GNOME)は最前面表示にならず。
ウィンドウマネージャに依存する機能だから仕方ないかも。

というか…ウィンドウシステムやウィンドウマネージャに頼らず
FirefoxががんばってZオーダー順に並べている感じがする。だからダイアログとかが予想外に後ろに隠れたりするのかも。
Windowsで最前面指定してもFirefoxウィンドウ内で最前面になるだけで、他のウィンドウにはZオーダーで負けてるし。XPCOM経由してWin32 APIから最前面にもできるけど、それやるとZオーダー管理がめんどくさそうだ。

プログレスバーが表示されない

これもOSによるようです。

表示されるWindows 7/Vista/XP, MacOSX, OpenSolaris 2009.06 表示されない その他

リクエスト、ストック登録に登録されない時

リクエスト、ストックの登録は、主でもリクエスト制限などの縛りの影響を受けます。
縛りルールを逸脱するのは主でも許されないってことで。
ただし、登録後に縛り設定しても、登録済みのものは残ります。

動画再生時間について

最大再生時間は分単位でしか設定できないけど、
次の動画を再生するまでの待ち時間も加わるので、
実際には、最大再生時間(分)+待ち時間(秒)と、秒単位で次に飛ばせたり。

{=statement}レシピ

実際に試してないものもあるので、こうすればこうなるだろう的なノリで、例をピックアップ。
動かなかったらスマソ。

タグに色を付ける

  • {=GetColoredTag(info.tags,["ミク","リン","ルカ"],["#7fffbf","#ffff00","#ffb2d3"]);}
    ミクを含むタグを#7fffbf、リンを含むタグを#ffff00、ルカを含むタグを#ffb2d3の色を付ける。

特定のタグをピックアップする

  • {=GetSelectedTag(info.tags,["ミク","リン","ルカ"],["#7fffbf","#ffff00","#ffb2d3"]);}
    ミク、リン、ルカを含むタグをピックアップして、色を付ける。

リクエスト可否切り替え時に動画情報を再送信

  • リクエスト可否切り替え時のコメントに、{=NicoLiveHelper.revertMusicInfo();}
    動画情報のところでリクエスト受け付け状態を出している場合に、可否切り替えに合わせて動画情報を送信します。

リクエスト応答にBSPコメントを使う

  • こうすれば多分可能であるというアイデアを伝えて実際に試してもらったので紹介> http://d.hatena.ne.jp/nogic/20100805/1281022616

その他2

  • 動画情報コメで、 {=info.cno?info.cno+"番さんのリク":"主セレ"}
    動画情報で「3番さんのリク」か「主セレ」と出す。
  • 任意の主コメで、{=NicoLiveHelper.allowrequest?"リクエスト受付中":"リクエスト停止中"}
    好きなところで、現在のリクエスト受け付け状態を出す。
  • 任意の主コメで、{=GetAddonVersion()}
    NicoLive Helperのバージョン番号を出す。
  • コミュ別に、{=NicoLiveHelper.community=="co154"?"この番組は初音ミクコミュよりお送りしています":"その他のコミュから"}
  • 現在の日時を出す。 {=GetDateString(GetCurrentTime()*1000)}
    2010/01/19 0:57:43 と出る。
  • リクエスト受付時の応答コメで、
    {=if(info.selfrequest){ NicoLiveHelper.topToRequest(NicoLiveHelper.requestqueue.length); }}
    多分、自貼りのリクは最上位に行くはず。(試してない)
  • {=NicoLiveHelper.userdefinedvalue[info.video_id]||"ミクノ度なし"}
    例えばミクノ度が0の動画では「ミクノ度なし」出して、そうでないときはミクノ度の数値を出す。
    {json}だとデータのない動画は 0 になるので、そういうのが不都合な場合に。
  • {=GetFormattedDateString((info.first_retrieve+691200)*1000,"%Y/%m/%d");}
    解禁日を表示
  • リクエスト上限数仕様の拡張(アイデアレベルなので動作確認してないよ)
    動画情報コメで、{=NicoLiveHelper.request_per_ppl[info.user_id]--;""}
    とやると、リクエストを再生するたびにリクエスト受け付け数カウントを減らすので、上限数に達した視聴者でも、動画が再生されれば、再生した回数分、またリクエストできるようになる…はず!
    動画が短すぎて主コメされないと意味ないですが…。
  • リク受け付け応答で、{=NicoLiveHelper.requestqueue.length>=6?NicoLiveHelper.setAllowRequest(false):""; ""}
    リクが6個以上になったらリク受け付けを停止。
  • 0.9.13で主コメマクロ展開を正規表現に頼らなくしたので、以下のも使えるはず。
  • リクエストの受け付け応答コメントで、{=if(NicoLiveHelper.requestqueue.length>=6){ NicoLiveHelper.setAllowRequest(false); } ""}
    多分、リク6件受け付けるとリク受け付け不可に切り替わると思う。
  • で、動画情報コメで、{=if(NicoLiveHelper.requestqueue.length<=2){ NicoLiveHelper.setAllowRequest(true);} ""}
    とすると、リクが2個になったら受け付け再開と。

こうネタ出ししていると、応答コメントならぬ、その条件を満たすときにどのような命令を実行するのかですね。
運営コメ使って本来の仕様にない動作を定義できるのは、ニコヘルさんだけ(ぉ
(ただ単にevalしているだけですが)

しかし、videoだったりmusicだったり統一感なくてサーセン。
元々ボカロ系生放送からスタートだったので音楽=musicで始めたあと、途中からvideoを使い出したので。

Use Case

  1. ニコ生アラート等を利用して放送開始時に生放送のページを開く
  2. NicoLiveHelperを自動で開く、閉じる設定をON。自動タブ閉じもON
  3. 放送終了すると自動でタブも閉じるので、ながら視聴に
  1. ロスタイム作成にチェック
  2. 自動無料延長もチェック
  3. 他のツールと異なり、残り時間0表示になってもリロードの必要なく放送継続(リクエスト放送でのみ確認)

あとがき

このExtension(日本語版では拡張機能と呼ばれる)の名前どうしようかなぁと考えたとき、
チュートリアルで作ったのがTag Helperで、
そういえばDownload Helperとか~Helperって名前結構あるよなぁ、
AMOで検索しても他にニコ生拡張なさそうだし、
これが最初になるなら「ニコニコ生放送ヘルパー」にしよう。
で、英語名がNicoLive Helper。

略称としてニコヘルが登場するまでは、自分的にヘルパーが略称でした。
(ヘルパーだと何のヘルパーかわからないな)

ちなみに…Javascript、XML、DOMなどの根幹技術はすでに知っていても、
Extension開発は初なのであまりいいコードではないことは確か。
XBLとか覚えると整理できるんだろうなぁ。

現行全ボカロを分類させようとすると、ちょっと計算量が多すぎたので、
クリプトン発売のVOCALOID2を主分類にして、
ミク、リン・レン、ルカ、その他、NG の5分類にしてみた。
これを元に「その動画はルカうたのようですが主判断をお待ちください」とか、
「主NG動画のようですが(ry」とかやるんだ…。

機械学習は便利だよね。
いちいちNG動画リストに動画ID登録するくらいなら、
学習させてNG動画のパターンを覚えてもらう方が使い出がある。
NG動画の派生動画もNGに分類できるし。