ニコ生配信セットアップメモ
この記事は
DTM作業生放送をするのに必要な準備いろいろのメモです。
ハードウェアのセットアップ
- 映像:ビデオカードからHDMIケーブルを伸ばして同PCのキャプチャボードにつないでいる。ディスプレイ行きのDVI-Dとキャプチャボード行きHDMIはグラフィックス設定で同一の映像を出力するようにする。
- 音声:AI/Fの余ってるアナログ入出力3/4をつなぐ。メインである1/2とサブである3/4から同じ音を流す。
両方とも物理的にループバックしている。
音声の方はソフト側のルーティングをミスるとポジティブフィードバックして大変なことになるので注意。
ソフトウェア:必要なモノ一覧
配信用ツール
コメント系ツール
FFMLを選んだのは普段FFmpegを触っていて馴染みがあるから。エンコード設定は直接弄りたい。
思ったのだけど、DTM作業配信だと読み上げは邪魔なのでは。
ニコ生側の設定
初めて生放送する人のお話です。FFMLの都合でgoogle chromeだと上手くクッキーを取得できないのでIEで開く必要がある点に注意。
ニコニコ生放送のページ
コミュニティ作成画面に飛ぶのでとりあえずそのままでコミュニティ作成。
生放送画面に飛んだらこれでオッケー。
FFmpegセットアップ
https://www.ffmpeg.org/download.html:公式のダウンロードページに行ってwindows 32bit用のバイナリを入手する。入手したらProgram Files以下にでも展開しておきましょう。
なお、FFmpegのソースコードを入手して野良ビルドすることでマシンに最適(SIMDの有無とかの話)なFFmpegを得るという手もありますが、面倒臭いのでやりません。
FFmpeg Launcherセットアップ
開発者のコミュニティ
の【置き場】からダウンロード、適当な場所に展開する。FFMLの設定は以下のとおり
- 映像デバイスはキャプチャボードを選択
- 音声デバイスはAI/Fのデジタル入力を選択
- 【FFML設定】タブ内で
- ffmpeg.exeのPATH指定を埋める(さっきインストールしましたよね?)
- クッキー取得設定の取得状態にユーザーIDが表示されていることを確認
- 音声エンコード設定は
- mp3:192[kbps](flvにoggは突っ込めないんですね…)
- 映像エンコード設定は
- x264:192[kbps]
- 自動認識のチェックを外し入力解像度とフレームレートをあわせる
FFMLの合計ビットレート表示が青ならOK、緑はオーバー。
自分の場合は何故か入力解像度を誤認していたので手動で解像度を合わせた。両方のパラメータを正確に合わせないとffmpegがエラーを吐いて死ぬので注意。
まずは録画で確認
FFML側の録画機能で正しくキャプチャができているかを確認する。
「【FFMPEG】基本設定」タブ右上の【モード】ラジオボタンを録画に合わせて「配信開始」ボタンをクリック。
保存先に動画が生成されるはず。この動画を確認して意図した通りの映像が出来上がっていればOK。
放送を始める
ニコニコ生放送側の画面にデスクトップの映像を映ればとりあえずはOK。
そのまま本放送に行ってしまってもいいでしょう。
パラメータを詰めていく
ここからが本番。このためにFFMLを選んだんですからね?
まずは音声
- コーデック:mp3
- チャンネル数:stereo
- サンプリングレート:44100[Hz]
- ビットレート:192[kbps]
コーデックの選択肢は「mp3, aac」の2択です。が、AACはエンコーダーによる当たり外れが大きすぎるのでmp3ですかね?
本当はogg vorbisを使いたいのだけど、生放送で使われるflvコンテナには格納できないみたいですね。
次に映像
- コーデック:x264
- コレ以外ありえないでしょう
- ビットレート:192[kbps]
- 制限が480kbpsに拡張される深夜帯なら288[kbps]でもOK
- 解像度:640x360
- 1280x720(720p)のちょうど半分
- ちょうど半分と言うのはとっても大事
- フレームレート:30000/1001
- 画面の動きが少ないせいか、フレームレートを上げても映像は汚くなりにくい。
- 入力の半分のフレームレートを設定
- 60000/1001にすると映像がすごい勢いで流れていく
- 品質基準VBR(-crf):19
- crf19あれば十分とかなんとか
- ビットレート制限の関係でcrf19相当の映像は出てこないけどしょうがねいね
- アスペクト比:16:9
- 設定しておかないと何故か4:3で吐き出される
- プリセット:fast
- 本当はveryslowくらいにしたいけど、すさまじい勢いでフレームが流れていきやがることがあるのでfastで我慢
- これでも重ければveryfastで
字がはっきり読めるレベルの高画質はムリ。全体的に若干滲む。
次の枠を自動的に取る
FFMLは枠取りを自動でやってくれるんですね。やったぜ。
メニューバーの「ツール(T) > ニコ生(N)」から設定出来る。
でもなんかこれだけではダメっぽくて追加で設定が必要な様子。
以下の記事を参考にしましょう。
躓いた所
DVI-DとHDMIでリフレッシュレートがズレていたせいで音ズレが起きてた。両方共60FPSにしたら上手く行った。
感想
ほげぇ