• このエントリーをはてなブックマークに追加
ニコ生の録画方法 まとめ
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

ニコ生の録画方法 まとめ

2014-01-12 20:38
  • 22
  • 321
最終更新日 2014/01/12
TSのない放送のコメントを保存する方法について追記。

ニコ生の保存には rtmpdump が主に使われているが、この記事では無料で配布しているWindows用の namarokuRecorder と kakorokuRecorder を使う方法と、もう少し発展的な使い方のまとめ記事。

目次


用意するもの
用語の説明
生放送の予約・録画
タイムシフト(以下TS)の保存
有料放送の録画
TSの特定の時間だけ保存
TSのない放送のコメントを保存する方法
録画・保存に必要なツールまとめ

用意するもの


namarokuRecorder と kakorokuRecorder の 配布コミュニティ のトップページからリンクをたどって保存する。

kakorokuRecorder が起動できなければ Microsoft .NET Framework 4 をインストールする。

ユーザー生放送と公式枠でない(高画質放送がない)チャンネル生放送*を録画する namarokuRecorder の rtmpdump を nht.r.ribbon.to から rtmpdump-2.4-git-20131007_20131123.zip を保存して差し替える。

* その他の例でタイムシフト視聴するときに「タイムシフト視聴する」のアラートが出るのが公式枠、出ないのが普通のチャンネル生放送でユーザー生放送と同様に放送ページを開くとタイムシフト視聴できる放送

アニメの生放送や、録画放送を録画する namarokuRecorder の rtmpdump(librtmpも一緒に) は rtmpdump-2.4.zip に差し替えて上の namarokuRecorder と使い分ける。

ユーザー生放送のTS用の rtmpdump を nht.r.ribbon.to から rtmpdump-2.4-git-20131007_20131123.zip を保存する。保存場所は kakorokuRecorder の rtmpdump と一緒に rtmpdumpTS などとリネームして同じ場所に置く。

ユーザー生放送や kakorokuRecorder で保存できない場合は RTMPDumpHelper を上と同じ rtmpdump-2.4.zip を使って rtmpsuck と一緒に使うか、API にアクセスして直接コマンドを調べて rtmpdump を実行する。

フォルダ内のまとめ

  • namarokuRecorder_A : 生放送を保存するツール, ニコ生用の rtmpdump に差し替える
  • namarokuRecorder_B : 上の方法で録画できないチャンネル生放送(高画質放送がある)や公式生放送を保存するツール, KSV さんの rtmpdump 一式に差し替える
  • kakorokuRecorder : TSを保存するツール 既存の rtmpdump と ユーザー生放送のTS用の rtmpdump を併用する
  • RTMPDumpHelper : 上3つで保存できない生放送やTSを保存するツール. KSV さんの rtmpdump 一式に差し替える。 フォルダ数を減らしたい場合は namarokuRecorder_B と同じフォルダに RTMPDumpHelper も置く

【有料】 ニコニコの視聴に便利なアドオン・拡張機能 48選
【有料】公式の検索で生放送履歴を調べる方法【非公開も可】

用語の説明


予約:生放送前の放送を予約すること
録画:生放送中の放送を保存すること
録画放送 : 録画した内容を生放送で放送すること
タイムシフト機能とは (タイムシフトキノウとは) [単語記事] - ニコニコ大百科

生放送の予約・録画

ユーザー生放送とアニメでないチャンネル生放送、公式生放送を録画する場合

namarokuRecorder の rtmpdump を nht.r.ribbon.to から rtmpdump-2.4-git-20131007_20131123.zip を保存して差し替える。
使うツールは namaroku(予約) と namarokuRecorder(録画)。

namaroku 起動時の画面
33cf6aacedc3aedff7cfd9e3534f6d29d6d134ec

特定のコミュニティやユーザーの放送を予約する場合は「新規登録」から設定する。特定の生放送を予約する場合は「放送予約」タブから放送番号を入力して「追加」を押す。

新規登録 画面
コミュニティIDとユーザーIDで登録でき、登録したデータの通知方法とグループ分け、メモを記入できる

3da7d16621b307888614a579fa9a5f95f487e418

その他の機能に ニコ生アラート(βα)で登録してあるコミュニティを namaroku に登録できたり、登録したコミュニティやユーザーが存在するかの確認、コミュニティやユーザーのサムネイルを保存できる。namaroku 単体では放送アラートとしても利用できる。

保存されたファイル名が長い場合には ツール(T) < オプション(O) < 録画タブ から「独自設定」で
c25d3e0daef1429b120c2fa07db18a96afb90e5c

{0}_{1}

とするとファイル名が長くならず、普段見ている放送は放送タイトルだけで放送者や放送コミュニティがわかる。

公式のアニメ放送や録画放送の場合

rtmpdump を https://github.com/K-S-V/Scripts/releases から rtmpdump-2.4.zip を保存して、今まで使っていた namarokuRecorder と使い分けて、新しく namaroku フォルダを作って、rtmpdump.exe と新たに librtmp.dll をコピーする。

追加引数に「-R」を追加する。すると今までどおり放送を保存できる。
追記 2013/11/24 -R 指定を除外した。

上2つの方法でも録画できない場合

RTMPDumpHelper(rtmpsuck)を使って(64bitブラウザは64bitの RTMPDumpHelper を使うこと)解析して、command.txt(古いバージョンでは Command.bat やそれらが出力されないこともある)に出力される最終行のコマンドをコピペし、改めてメモ帳などにコピーして、拡張子を「.bat」に変更して rtmpdump がある場所にバッチファイルを移動して実行する。3時間以上ある場合はそこで分割されるのでそこの時間までシークして再度コマンドを取得する。
c43fe0e21aac5b3414d4f2e25a970b6e39e68308

タイムシフト(以下TS)の保存

使うツールは kakorokuRecorder。以下 kakoroku と表記。

kakoroku 起動時の画面
bc28681ba5f9c40b20396fa5100a530d508588ef

TSの保存をより便利にする機能もあり、放送ページの一括登録、同じ放送内で分割されたTSがあればそれだけ保存、TSだけ・コメントだけ保存、TSのエンコード(要:ffmpeg 非推奨)ができる。

ニコ生TSの一括登録に便利なサイト

ユーザー生放送のTSの場合

追記 2013/11/14
生放送メンテナンス:11月14日(木)06:00~08:30‐ニコニコインフォ
のメンテナンスで再びユーザー生放送のTS保存に放送時間分だけかかるようになった。ユーザー生放送の保存には kakoroku Version 1.5.4 で  nht.r.ribbon.to から rtmpdump-2.4-git-20131007_20131123.zip の rtmpdump を使い、rtmpdump を rtmpdumpTS などにリネームしておく。

ツール(T) < オプション < rtmpdump指定 よりユーザー生放送の「既定のrtmpdumpを使う」と「規定の引数を使う」のチェックを外す。

8a4c41a4ab658e01d707deb151a1bfb5962c2451

参照をクリックしてリネームした rtmpdumpTS  を指定し、入力フォームをクリック、テンプレート下の「設定1」をクリックし、-r のところを -vr に変更して OK をクリックし、オプションの画面もクリックでおしまい。これでいつも通りに kakoroku で保存できるようになるが、ユーザー生放送は放送時間だけ保存に時間がかかる。よく見ると、コマンドの最後に -v があって、重複コマンドになっているが、何故か -vr にしないと保存できないのでこの方法を採っている。しかし -vr にしなくても保存できる人とできないとがいるなど環境によって異なる。

3bea63f4e3336aca4b269fe4f9e361c681f87ddf

分割されたユーザー生放送の場合、2ファイル目以降で失敗するので、lv123456789,2 などとして別アドレスとして登録する。

追記 2013/10/30
緊急生放送メンテナンス:10月29日(火)06:00~08:30‐ニコニコインフォ
このメンテナンスを終えて一部のユーザーで今までユーザー生放送を kakoroku で保存できなかった人が保存できるようになり、保存できた人ができなくなった。

Axfc Uploader(削除済み) から保存した rtmpdump を cmd を使ってコマンドを手動入力する。この方法は保存に生放送の放送時間と同じだけ時間が掛かるが、多重起動が出来て以前のようにTSを見続ける必要がない。コメントは普段通り kakorokuRecorder でコメントだけ保存する。

コマンドは readme.txt より

rtmpdump -o out.flv -r "rtmp://*******.live.nicovideo.jp:1935/liveedge/ts_******_**_*" -C S:"********:lv********:*:**********:****************" -N "rtmp://*******.live.nicovideo.jp:1935/fileorigin/ts_**,/content/********/lv*********_***********_*_******.***?**********:**:****************" -v

録画が途中で止まる場合は、最後の -v を -R にしてください


readme.txt の説明でわからない場合は NCV のプラグイン の NCVRTMPDumpWrapper の出力コマンドを参考にしてみてください。最終的なコマンド例は少し下で説明してあります。

NCV のプラグイン の NCVRTMPDumpWrapper を使っている場合は出力先を「なし」にして開始ボタンを押しコマンドを表示させ、メモ帳などに一時的にコピペして、-r を -N に書き換え、「mp4:content」の部分を「,content」に変え、保存ファイル名の -o out.flv を決めて、「http://watch.live.nicovideo.jp/api/getplayerstatus?v=lv********」にアクセスして、下の方にある[getplayerstatus/rtmp/url]の部分を -v -r または -vr とし、cmd の実行コマンドとする。保存が途中で止まる場合は -vr とせずに、-r と -R を併用する する。オプションの順番は気にしなくても良い。

getplayerstatus へのアクセス方法は、ほげに至る病-ニコニコミュニティ のブックマークレットが便利。放送ページ(http://live.nicovideo.jp/watch/lv*****)からブックマークレットをクリックすると別タブに getplayerstatus のページが表示される。 ブックマークレットの保存方法は、コマンド全部を選択状態にしてブラウザのブックマークツールバーに持って行くと保存できる。表示名が長ければ右クリックからプロパティより名前を短くする。

NCVRTMPDumpWrapper の出力例から以下の手順で書き換える
rtmpdump.exe -r "rtmp://*******.live.nicovideo.jp:1935/fileorigin/ts_00/mp4:content/********/lv*********_***********_*_******.***?**********:**:****************" -C S:"********:lv********:*:**********:****************" -o -

-r を -N に変えて、-o に保存ファイル名を指定、「mp4:content」の部分を「,content」に変える
rtmpdump.exe -N "rtmp://*******.live.nicovideo.jp:1935/fileorigin/ts_00/,content/********/lv*********_***********_*_******.***?**********:**:****************" -C S:"********:lv********:*:**********:****************" -o out.flv

-vr は getplayerstatus の下の方にある[getplayerstatus/rtmp/url]部分(liveedge で検索)を記入
rtmpdump.exe -vr "rtmp://*******.live.nicovideo.jp:1935/liveedge/ts_******_**_*" -N "rtmp://*******.live.nicovideo.jp:1935/fileorigin/ts_00/,content/********/lv*********_***********_*_******.***?**********:**:****************" -C S:"********:lv********:*:**********:****************" -o out.flv

コマンド例
rtmpdump -vr "rtmp://nleta09.live.nicovideo.jp:1935/liveedge/ts_130707_16_0" -N  "rtmp://nlpoca36.live.nicovideo.jp:1935/fileorigin/ts_00/,content/20130707/lv12345678_113801837000_2_2f0ea3.f4v?1373180000:30:df1326d2ba856168" -C S:"123456:lv12345678:0:1373186378:57223884a5aab47b" -o out.flv

cmd.zip を解凍して cmd.bat を rtmpdump と同じフォルダにおいて cmd.bat を実行して上のコマンドをコピペして Enter キーを押す。
f1715074d44bf3f540da3c2c0f25d32439fda97b

3時間以降であったり、分割されたTSは、getplayerstatus より、fileorigin を検索して上から2番目以降のアドレスを -N のオプションに書き換えて再度 cmd を実行する。これで接続できないときはコマンドには有効期限があるので再度、NCVRTMPDumpWrapper でコマンドを取得し直すか、下の方にある[getplayerstatus/rtmp/ticket]部分(ticket で検索)を、-C S: の部分に書き換えて再度 cmd を実行する。

参考スレ:【ニコ生】namareco namarokuについて語ろう Part19

従来のユーザー生放送のTSの保存方法

RTMPDumpHelper で rtmpsuck を使って、TSを見ながら保存する。しかしこのままだと放送が最後まで再生されると最初に戻ってしまい、ファイルが上書きされるので、URLを放送終了時間に指定しておけば最初に戻らなくなり上書きされなくなる。 2ちゃんねるのスレ>474 より
例えば http://live.nicovideo.jp/watch/lv127872748#188:01
をブラウザで一度開いて最初のところにシークバーを移動させてから再生と録画を開始する。書式は「#分:秒」なので時間の部分を分単位に変換する必要がある。

また分割ファイルを録画する場合は、一度 kakorokuRecorder で保存し、右下のログを見るか、テキストのログを見て開始時間を調べてシーク時間を見つける。2ちゃんねるのスレ>469 より
★放送開始(x分x秒~)
★timeshift1.flv
★放送開始(xx分xx秒~)
★timeshift2.flv

有料放送などのAPIが暗号されたの録画・保存

RTMPDumpHelper(rtmpsuck)を使って解析して、command.txt(古いバージョンでは Command.bat で出力されたり、それ自体も出力されないことがある)に出力される最終行のコマンドをコピペし、改めてメモ帳などにコピーし、拡張子を「.bat」に変更して rtmpdump がある場所にバッチファイルを移動して実行する。3時間以上ある場合はそこで分割されるのでそこの時間までシークして再度コマンドを取得する。しかし、2013年6月頃から公式生放送では3時間単位で分割されなくなった。

c43fe0e21aac5b3414d4f2e25a970b6e39e68308

不具合

kakorokuRecorder でコメントを保存した時にコメントの一部が歯抜けになることが稀に発生するので、その場合は保存する時間帯を朝など放送が混雑していない時間帯にするか、他のコメビュー、例えば NCV でコメントを保存する。

kakoroku の保存形式を flv(変換なし)以外で保存すると動画が保存されないことがあるので、原則flv(変換なし)で保存する

仕様

TSが3時間以上の長時間の放送は3時間毎に、放送が途切れた場合にはそこでかならず分割される。分割されたくなければ生放送中に録画する。kakorokuRecorder にはオリジナルのファイルが分割されていないのに分割する機能はない。長時間のTSの場合に一度の放送登録では後ろのTSファイルが保存できないことがあるのでファイルを指定して保存する。方法は放送番号に「,2」などと指定する。

例:2番目のTSが登録される
lv107698169,2

追記 2013年4月17日
本家ブログの方で更新しました ユーザー生放送のTSの仕様について

TSの特定の時間だけ保存

rtmpdump の -A, -B, -R のオプションを使ってTSの特定の時間だけを保存する方法。

例えば kakorokuRecorder でTSを保存したファイル名に「lv89834106_ 【悠木碧・内山夕実出演】咲らじ-阿知賀女子学院麻雀部- 第2局 - ニコニコ生放送_vpos-89000_1.flv」があるとする。この「vpos-89000_1」が重要で「-89000」はマイナス890秒から動画が始まり、890秒経つとニコ生の放送開始時間と同じ所から再生される。公式生放送の場合は待ち時間が大抵10分、アニメやニコファーレなどの放送は 30分待ち時間があるのでその時間を足した時間から本編が始まる。

「_1」は1番目のファイルで、2番めのファイルの場合は「_2」というファイル名になる。

特定の時間だけを保存するGUIが公開されていないので、rtmpdump のコマンドを出力してから -A, -B のオプションを組み合わせ、-R は付けなくても保存できるかもしれない。Version 1.5.0 から引数が指定できるようになった。

コマンドを実行するには cmd.zip を保存し rtmpdump と同じフォルダ内に解凍して、cmd を実行し、コマンドをコピペすればコマンドラインから rtmpdump を実行できる。

この方法で保存した場合にうまく再生できない動画が保存された場合は、時間指定を短くするか時間指定をせずに保存してから各種ツールでカットする。

ニコニコ動画に関係する編集と再生ツールのまとめ

コマンドを調べる方法

  1. MediaBox を使う
  2. RTMPExploreX(rtmpsuck)を使う
  3. RTMPDumpHelper(rtmpsuck)を使う
  4. NCVRTMPDumpWrapper を使う
  5. kakorokuRecorder を使い、Process Explorer でコマンドを調べる
  6. APIから直接調べる ほげに至る病-ニコニコミュニティ のコミュトップにある「PlayerStatusを確認する為のブックマークレット」が便利
  1. MediaBox を参照
  2. RTMPExploreX を参照
  3. ブラウザと一緒に RTMPDumpHelper(rtmpsuck)を起動して録画したい放送を見るだけ
  4. NCVRTMPDumpWrapper はNCV(NiconamaCommentViewer)のプラグイン NCVRTMPDumpWrapper の配布コミュニティ より保存して、プラグイン(P)< RTMPDumpWrapper < 設定 < RTMPDump.exe の PATH を namarokuRecorder で使っているニコ生用のrtmpdumpを指定する。NCVで放送に接続して、プラグインでは出力先を「なし」にするとコマンドが出力されるのでそれを一 時的にコピペする。
  5. Process Explorer を使う方法は、Process Explorer - technet.microsoft.com より保存し、解凍する。インストール不要なのでそのまま起動できる。kakorokuRecorder で保存しているときに Process Explorer を起動して起動プロセス内の rtmpdump をダブルクリックして「Command line:」の下のコードをすべてコピペする。
  6. APIから調べる方法は、 http://watch.live.nicovideo.jp/api/getplayerstatus/lv放送番号 にアクセスして必要なコマンドをコピペする。2番目以降のファイルを保存するのに便利だが、他の調べる方法と併用したほうがわかりやすい。

一時的にコピペしたコマンドに保存する時間を指定する

  • -A は保存開始時間(秒)を指定するオプション
  • -B は保存する動画時間(秒)を指定するオプション
    何も指定しないと最後まで保存される
  • -R は -A を指定すると最後まで保存できない場合に最後まで保存できるようになるオプション
  • -R を指定しても保存が途中で止まる場合は -A を指定せずに保存する

先の例に放送開始までの時間(890秒)と準備待ち時間(600秒)を保存しないコマンドは
rtmpdump.exe -r "rtmp://nlaoe25.live.nicovideo.jp:1935/fileorigin/01/mp4:content/20120508/lv89834106_203510025000_1_1eb546.f4v" -C S:"ID:lv89834106:0:123...:abc..." -A 1490 -R -o "lv89834106_ 【悠木碧・内山夕実出演】咲らじ-阿知賀女子学院麻雀部- 第2局 - ニコニコ生放送_vpos-89000_1.flv"

TSのない放送のコメントを保存する方法

一般的にはTSのコメントは kakoroku で保存するが、TSがない放送にはTS視聴時ができないので同時にコメントも保存できない。この場合は生放送中に kakoroku でコメントだけ保存することで取得開始した時から放送開始までのコメントを保存することができる。

この方法を取るには kakorokuRecorder.exe をコピーして kakorokuRecorder1.exe などとして、TSの映像保存とコメント保存を別にすることで楽に解決でき、普段のTS保存も別にするとTS保存の時間短縮にもなる。

kakorokuRecorder はTSの映像だけを保存。
kakorokuRecorder1 はTSのコメントだけを保存。

kakorokuRecorder1 の設定。
837ab894935289b59d5977f6c2b8ac48076c4e6e

kakorokuRecorder の設定は「放送データを録画する」にチェックを付け、「同時にコメントも取得する」チェックを外す。

録画・保存に必要なツールまとめ

生放送の場合

  • ユーザー生放送と一般的なチャンネル生放送 = namarokuRecorder + nht.r.ribbon.to の rtmpdump-2.4-git-20131007_20131123.zip
  • 普通の公式生放送 = namarokuRecorder + 同梱の rtmpdump, nht.r.ribbon.to の rtmpdump-2.4-git-20131007_20131123.zip でも可能
  • 上の方法で録画できない放送
    = namarokuRecorder + KSV さんの rtmpdump + 「-R」オプション
  • 上3つの方法では録画できないチャンネルの録画放送
    = RTMPDumpHelper(rtmpsuck)
  • 有料生放送で getplayerstatus が暗号化されている放送
    = RTMPDumpHelper(rtmpsuck) で解析して KSV さんの rtmpdump
  • チャンネル生放送でプレミアム会員なら録画できるが一般会員だと録画できない放送
    今のところ録画できないので TS で保存する。

タイムシフトの場合


TSの動画からサムネイルを出力することも出来ます。

ニコ生のTSからサムネイルを出力する


この記事は以下の記事のまとめです。
ニコ生を ffplay を使って再生することもできます。詳しくは 【librtmp】 ffmplay で rtmp を入力ソースにする を参照。

rtmpdump のコマンドに関しては rtmpdump コマンド一覧と使い方を参照。
他12件のコメントを表示
×
助かりました。ありがとう
2ヶ月前
×
VPNでも出来なくなっていたkakorokuでのTS保存が出来るようになった。マジ感謝。
2ヶ月前
×
ちょっと難しいかな・・・
2週間前
×
録画出来るようになりました!ですが、私の場合一般が全然録画できなかったので「参照をクリックしてリネームした rtmpdumpTS を指定し、入力フォームをクリック、テンプレート下の「設定1」をクリックし、-r のところを -vr に変更して OK 」を使わせていただき、上記でやったところダメだったので「-vrを-v」にしたところ出来たのでこれにも何かあると思います。
1週間前
userPhoto
ロべルト
×
>>17
-r 指定無しの rtmpdump では保存はできないはずです。もう一度全てのコマンドの確認願いますか?
コマンドは Process Explorer で調べられます。
http://technet.microsoft.com/ja-jp/sysinternals/bb896653.aspx
1週間前
×
一通り読んで作業をしてみましたが、できませんでした。lv168643462←この放送を音声保存しようと思っているのですが、kakoroku Recorder ver.1.5.4とrtmpdumpで保存するんですよね・・?(ニコラジとかではないので普通の生放送だと思っています。まだニコニコ動画について詳しくないので間違っているかもしれませんが・・・。)
rtmpdumpが開けないので、それもあるのでしょうか?(rtmpdumpは勿論kakorokuにあったものではなくダウンロードした方です)
もしかして、一般会員だと保存できないとかあるのでしょうか?
たくさん質問してしまいすみません。
userPhoto
ロべルト
×
>>19
この放送はコミュ限なので、コミュニティに参加していないと視聴できません。
さらに予約枠なのでプレミアム会員はそのまま視聴できますが、
一般会員は放送開始30分前のTS予約を入れていないと視聴できません。
生放送を視聴できるうえで rtmpdump を差し替えて、引数を指定して
保存できないのかどうか確認してみてください。
×
返事ありがとうございます。
コミュニティには入ってます。30分前にTS予約もしてました!
だから視聴することはできます。(実際に再生して見られましたので)
引数指定について詳しく教えていただいでもよろしいでしょうか?
20時間前
userPhoto
ロべルト
×
>>22
>> ツール(T) < オプション < rtmpdump指定 よりユーザー生放送の「既定のrtmpdumpを使う」と「規定の引数を使う」のチェックを外す。

この記事の引用部分以下を参考にして -r のところを -vr に変更してください。
12時間前
×
返事ありがとうございます!
実はすでにその作業はしてみたのですが、出来なかったんです・・

rtmpdumpを開こうとしても開かない(一瞬で強制的に閉じられる)のと関係があるのでしょうか?
一瞬しか見られないので細かくは見ることができませんが、真っ黒な画面に英語が少し書いてありました。
1時間前
コメントを書く
コメントをするには、
ログインして下さい。