OBS を使用したXboxOneやPS4のゲーム配信1 ( Twitch ) & OBSでMP4動画キャプチャ
- 2015/11/06 22:58
- カテゴリー:動画キャプチャ & エンコード, XboxOne ゲーム, PS4
関連記事:
2014年9月16日
「 xbox one の 感想や設定等 」
2011年8月1日
「 HD画質動画キャプチャーの 環境構築 」
2015年8月31日
「 ノートPC & デスクトップPC を Windows10 Pro へアップグレード 」
2015年12月27日
「 PowerDirector14 Ultra購入&設定等 と Windows10での動画キャプチャ&エンコード 」
■ 前置き
まず、元々XboxOneやPS4には、ゲーム機だけでも手軽にゲーム配信が出来る機能が有り、
ゲーム機から各配信用アプリ( Twitch等 ) を起動して、アカウントを取得し、
簡単な設定を行うだけで、ゲーム配信が出来る様になります。
普通にゲーム配信するだけであれば、ゲーム機の配信機能だけで十分だとは思います。
なので、細かい配信画質設定 ( 画質&音声のビットレート、解像度、フレームレート、
エンコード方式 ) を細かく調整したい方等以外には、あまり意味のない記事になるかもしれません。
ちなみに、『 OBS 』とは、Open Broadcaster Software の略で、
PCで配信が出来る無料のフリーソフト ( 現時点 )です。
PC経由でOBSを使用したゲームの配信を行う場合、
PCでの動画のキャプチャーが出来る環境が必要になります。
※ OBSでは、その他にWebカメラやデスクトップ等の画面の配信等も可能
それでも、OBSを使用するメリット ( 勿論デメリットも ) もあるので、
それらを踏まえて今回の記事は、あくまで自分の感想 ( 各配信方法の違い ) と
OBSのTwitchの配信の細かい設定等をスクリーンショット ( SS ) 付きで記載します。
■ 自分の個人的な配信についての感想と説明
◎ ゲーム機での配信 ( 主に遊んでいるXboxOneでの仕様に基づく内容です )
メリット
・専用アプリ ( Twitch等 ) を起動して簡単な設定を行うことで手軽にすぐ配信が出来る。
・ XboxOneの場合ですが、
配信を開始すると、自分のフレンドさんの画面内に実績表示みたいな形で、
「 ( ゲーマータグ ) さんが、( ゲーム名 ) の配信を開始しました 」
等のメッセージが自動的に表示され知らせてくれる、
自分とフレンドさんのフィードにも同様の配信のメッセージが表示され履歴として残る。
※ XboxOneの場合そのフィードの配信メッセージの所を選択することで、
Twtichアプリが起動して その配信中のゲーム配信を見ることが出来る。
・配信中に、ゲーム画面以外を表示&操作した場合 ( フレンド、メッセージやり取り、
ホーム画面等 )、 配信を見ている方に見えないように配信中の画面には、
自動的にプライバシー画面が表示される。
※ XboxOneのプライバシー画面 ( 実際には画面の一部分がアニメーション表示 )
デメリット
・手軽に配信が行える分、配信の設定はシンプルで細かい調整は出来ない。
※ 画質設定 ( ビットレート )は、 1000 or 1500 or 2000 kbp等の選択肢から選ぶ形で、
配信画面解像度の選択はない、音声もマイクのボリューム調整が出来た程度だと思う。
kinect等のカメラがある場合ゲーム画面の中にカメラ画面が追加される形でも可能。
・配信中は、ゲーム機本体におそらく多少なりとも負荷がかかっていそうで、
高負荷なゲームによっては、通常時より少しフレームレートが下がっている気がする。
※ ゲームによっては全く気にならないとは思いますが、負荷が高そうなFarCry4を
以前テスト配信した場合、違和感を感じたので。
◎ PC経由でOBSを使用した配信
メリット
・配信設定をかなり細かく設定出来るので、Twitch等で視聴者側の配信画面が
途切れる場合等 ( 混みあってる時間や配信が高ビットレートでの兼ね合い )、
細かい画質の調整がやりやすい。
※ 特に配信画面が視聴者側で途切れてまともに見れない状態の場合、
ビットレートを下げる事になると思いますが、
一定の高解像度 ( 720p以上 ) でビットレートをただ下げるだけの調整よりも、
解像度を480p等に下げてビットレートも下げて調整する方が、
ブロックノイズが発生しなくて綺麗に見える場合が多いと思う。
※ 細かい調整自体は、この記事で後々説明しますが、
主に変更調整するのは、画面解像度、ビットレート、フレームレート、
エンコード形式部分等。
※ マイク等で実況配信を行う場合、OBSにマイクのデバイス設定やボリューム調整が
があるので、PC経由のマイク及びヘッドセットを使用することになる。
・ゲーム機本体は配信に関係なく普段通りゲームをするだけなので、
本体に全く処理の負荷等がかからない。
※ 高負荷なゲームを配信時に普段と違う少しだけの処理落ちも感じることもない。
・PCでの動画キャプチャー環境でキャプチャーが出来るゲーム機ならば、
XboxOneやPS4やWiiU等を特に気にせずに、動画キャプチャー機器への接続を
切り替えるだけで配信が出来る。
※ PCでOBSを起動して配信開始ボタンをただ押すだけの簡単な作業。
※ この記事で後々説明しますが、OBSのデバイス設定の解像度と
ゲーム機の出力解像度を同じにする必要がある。
頻繁にキャプチャー機器への接続を切り替える場合、HDMIセレクター等も
準備しないと接続端子が痛んでいくと思う。
・XboxOneの場合ですが、
配信を開始すると、自分のフレンドさんの画面内に実績表示みたいな形で、
「 ( ゲーマータグ ) さんが、( ゲーム名 ) の配信を開始しました 」
等のメッセージが自動的に表示され知らせてくれる、
自分とフレンドさんのフィードにも同様の配信のメッセージが表示され履歴として残る。
※ XboxOneの場合そのフィードの配信メッセージの所を選択することで、
Twtichアプリが起動して その配信中のゲーム配信を見ることが出来る。
・配信中画面( 音声もきちんと含む )を、H.264 ( MP4 )として自分のPCに
自動的に保存する機能が有るので、キャプチャーソフトとしても使える。
動画自体は、配信中画面、もしくは配信しなくても録画開始ボタンがあるので
動画キャプチャーだけでも可能、自動的なキャプチャー保存はしない選択も可能。
※ 画質自体は、配信設定の画面解像度、ビットレート、フレームレートに依存。
デメリット
・配信の為には、動画キャプチャーが出来る環境が必須。
※ OBS自体にもゲームのプレビュー画面はありますが、配信に違和感なく快適に
遊ぼうと思うなら、HDMI分配器等の分配器もしくは、キャプチャー機器に
バススルー機能が有りで、普通にキャプチャー機器とテレビ等に分配する事が推奨。
・配信中、ゲーム画面以外 ( フレンド、メッセージやり取り、ホーム画面等 )を
表示した場合、ゲーム機は普通に遊んでいるだけの状態なので、プライバシー画面には
切り替わらず、そのままの画面が配信されるので注意。
※ 視聴者側にメッセージやり取り等を見せないようにしたい場合は、手軽なのが
Windows10 PC の場合はXboxアプリ、それ以外のPCではXbox公式HPに
XboxIDとパスワードでサインインする事で、フレンドの表示やメッセージのやり取りを
ゲーム機の画面に関係なく直接行うことが可能。
もう1つの手段は、OBSで配信用シーンとは別に、あらかじめ自分で
プライバシー画面の様な画像で画像のスライドショーシーン ( 単一画像だと
フリーズした画面と勘違いしないよう )を用意してOBSで自分でシーン切り替えが必要。
・配信中に、配信画面確認用にブラウザ ( IE等 )でtwtichの自分の配信画面を表示する場合、
本当によく忘れがちな事ですが、配信開始前に必ず配信確認用画面の音量ボタンを
’ MUTE ’ に設定する。
それと、デスクトップ上で流れる音が配信音に合成されるので、注意。
※ この記事で後々説明しますが、MUTEにしないと配信の音と
視聴者側の画面 ( 多少遅れて表示される画面 ) の音で合成されて、
2重で音が配信されておかしくなる。
※ デスクトップ上で流れる音の合成とは、例えばSkype等を起動していて、
フレンドのオンラインで音が鳴った場合、その音も配信の音に合成されて
配信されてしまう。
実際の画面ではこんな感じ。
・これは直接的なデメリットではないけれど、OBSで自動的にキャプチャーした
H.264 ( MP4 ) の動画は、画質設定でフレームレートを60 FPSに指定していた場合、
キャプチャー後の動画を確認しても普通に滑らかで気付きにくいが、実際は1フレーム程度
フレームレートが低下した動画でキャプチャーされてる。
※ ただし最近使用しているOBS Studioの方であれば、フレーム低下は起こらず普通に
MP4キャプチャ出来る様です。
たまたまOBSでキャプチャーされた動画を、PowerDirector12 Suiteで編集しようと
ファイルを読み込んで作業した時に気づきました。
■ OBSを使用したTwitchの細かい設定等
※ あくまで自分色々テストしてきた中の設定なので、参考程度にどうぞ。
まず設定をする前に、Twitchアカウントの取得とOBSの導入が必要です。
Twitch公式HP:http://ja.twitch.tv/
TwitchHPに普通に日本語メニューで「登録」とあるのでマウスで左クリックをし、
簡単な情報を入力して登録を完了させる、実際には下記の様な感じ。
・ユーザー名:ログイン時に使用するので、英文字でゲーマータグみたいな感じで
覚えやすい物が妥当。配信中画面でメッセージを入力した場合に
表示される自分の名前にもなる。
・パスワード:ログイン時に使用するので、他人に分かりにくい様な
英文字と数字の組み合わせ
・生年月日:適当でもいいような気はする。
・Email:Twitchでログイン後に、他の方の配信をみてお気に入り登録した場合や
個別メッセージ等を受信した場合、このEmailに通知してくれる。
OBS公式HP:https://obsproject.com/
OBSの導入は、GetOBSの下に「Windows7/8/10」( ※ MulutiPlatformではない方 )
とある方をDLして普通にPCにインストールするだけ。
これでだいたい準備は完了したので、実際にOBSを起動して設定に入っていきます。
・OBSを起動すると初めはシーン及びソースに何もない状態なので、各枠内で
マウス右クリックをし、追加を選択。
ソースに関しては、ゲーム配信の場合はビデオデバイスを選択する事になります。
※ ソースは複数選択出来ますが、シンプルな配信の場合は1つで十分です。
・ソースとして追加したビデオデバイスを、マウスの左ダブルクリックして、
デバイス ( キャプチャ機器 )の選択と各設定。
※ あくまでデバイス設定なので、配信解像度と配信FPSは別の箇所で設定が行える。
デバイス:キャプチャ機器名を選択。
ポイントフィルタリングを使用:ここでは特に必要ないので「チェックは外す」。
インターレース解除:特に必要ないので、「なし」。
特定の解像度:「チェックを入れる」
解像度:キャプチャー機器への入力解像度を選択。自分の場合は、「720p( 1280 x 720 )」。
※ ゲーム機のオプション設定の出力解像度も、この解像度と同一数値にする必要がある。
FPS:キャプチャー機器への入力フレームレートを選択。
自分の場合は、「59.9405 FPS」 ( 自分のキャプチャー機器の60FPSに相当する最大値 )。
※ あくまでキャプチャ機器の設定なので、配信FPSが30FPSの場合でも、
ここでは60FPS指定しても問題ない。
その他はSSの通りほぼ変更なし。
・OBSメインメニューは右下に色々あるので、設定の前に各メインとなる操作の説明。
設定:配信の細かい設定全般を行う
配信開始:実際に配信を開始する
録画開始:動画キャプチャーのみを行う = キャプチャソフトとしての利用。
配信プレビュー:配信をする前の確認用に、実際に配信する画面がウインドウ内に表示。
・OBSメインメニューの「設定」を、マウス左クリックして設定画面を開き、
最初の一般タブで、言語がもし「日本語」になっていなければ、
日本語を選択。
・設定のメニューの変更の少ない「放送設定」を先に設定。
モード:「配信」
サービス:「Twitch」 ( ※ 他の配信用等、streamなど色々設定がある )
FMS URL: Twitchのサーバの場所を選択、「Asia:Japan」ならどこでもいいと思う。
デフォルトの「Asia:Tokyo Japan」でよさげです。
※ 「Asia:Japan(2)」等のデフォルト以外の予備っぽいサーバの場合、
日によっては、接続自体が出来ない場合がある。
プレイパス/ストリームキー:OBSとTwitchサービスを関連付けさせるための文字列。
※ 実際にTwitchのHPで、自分のIDとパスでログインを行い、メニューのダッシュボードを
選択、ダッシュボードページの配信キーを選択、その左下のShowKeyボタンを押して、
ウインドウが開くので許可を押すと、ストリームキーが表示されるので、
文字列をコピーして、OBSのストリームキーの部分で貼り付ける。
自動再接続:「チェックを入れる」
ネットワークインパクトを最小化:「チェックを外す」
※ ネットワークインパクトにチェックを入れるとなぜか自分の環境では、
フレームレートが不安定になる。
自動的に配信をファイルに保存: 配信時にPCで自動的にキャプチャーを行う設定なので、
何も問題がなければ「チェックを入れる」
ファイルパス:キャプチャー動画の保存場所の指定
・設定のメニューの頻繁に調整する「エンコード」を設定。
※ ビットレートの変更は、ここで行う。
エンコーダー:自分の環境では、「x264」を選択。
※ NVIDIAのグラフィックボードをPCにつけていて、ハードウェアエンコードの
"NVENC"に対応していれば、「NVIDIA NVENC」を選択。
CBRを有効にする:固定ビットレートにしたいので「チェックを入れる」
CBRパディングを有効にする:固定ビットレートとセットで必要なので「チェックを入れる」
特定バッファサイズを使用:ビットレートと同程度の数値を入力するので「チェックを入れる」
ビットレート:画面解像度やフレームレートによって適度な数値を入れる。
自分の場合は、今回は「2200」を指定してます。
詳細は、格闘ゲーム等で 60 FPS のフレームレートで滑らかに
配信したかったので解像度を480pと360pの間の410p ( 730 x 410 )と想定し、
目安は下記の公式HPを参考にしつつ、配信プレビューでブロックノイズがないか
確認等を行い、余裕を持ったその数値で落ち着きました。
※ 自分の場合、普段は480p & 30FPS : 1500前後で行うことが多いです。
ちなみに、推奨は、1000 ~ 3000 kbps 位らしい。
※ 高ビットレートの方が勿論画質は上がりますが、Twitchのサーバ自体が
重かったり、おそらく込み合っていたりすると、ビットレートが高いと
視聴者の方の画面では、配信が連続で途切れてしまいまともに視聴出来ない
ので注意。
一応、Twitchの公式のOBS設定ヘルプページ には、
フレームレートが、30 FPS基準だと思うけど、
Recommended bitrate for 1080p: 3000-3500
Recommended bitrate for 720p: 1800-2500
Recommended bitrate for 480p: 900-1200
Recommended bitrate for 360p: 600-800
Recommended bitrate for 240p: Up to 500
とあるので参考程度に。
バッファ:余り気にせず、ビットレートと同様の数値を入れておく。
・設定のメニューの頻繁に調整する「ビデオ」を設定。
※ 実際の配信解像度と配信FPSの変更は、ここで行う。
配信映像:ビデオデバイスの解像度と同じ数値で設定。
自分の場合は、720p ( 1280 x 720 )。
※ ちなみにビデオデバイスの解像度設定より小さい解像度を選択すると、
画面全体が表示されずに、その解像度の分しか表示されないので注意。
解像度の縮小:配信映像の解像度の画質をフィルタをかけて綺麗に縮小変換させるので
適度な倍率 ( 解像度 ) を選択する。
自分の場合は今回エンコード設定で、60 FPS を重視していて
既に仕様を決めていたので、410p ( 730 x 410 )の「1.75」を指定。
※ 実際に配信する映像の解像度はここの数値上の物だと思う。
フィルタ:好みもありますが、デフォルトのバイリニアは若干ぼやけるので、
「バイキュビック」を指定。
FPS:配信フレームレートは、基本的に 30 FPSの設定で十分だと思う。
60 FPS が仕様のゲームで滑らかな映像を視聴者に
見てもらいたい場合は、自分の今回の設定の様に、「 60FPS 」で指定。
Aeroを無効にする:Windows のシステムでグラフィックボードを少しでも使用させない為にも
「チェックを入れる」
・設定のメニューの「サウンド」を設定、ほぼそのままの規定値。
マイク/他のサウンドデバイス:ヘッドセット等のデバイスでマイクを使用する場合等に
デバイスを設定する程度だと思う。
・設定のメニューのたまに調整する「詳細設定」を設定。
※ x264のプリセットとエンコードプロファイルは、ここで行う。
マルチスレッドの最適化を使用する:基本的に複数コアのCPUが多いと思うので
「チェックを入れる」
プロセスの優先度:他のアプリケーションより処理を優先させて
処理落ちを出来るだけさせない為、「高」を指定。
シーンバッファ時間:特にデフォルトのままでいいと思うけど、「1000」を指定。
x264のプリセット:ultra fast ~ Medium の間なら問題ないと思うけど、
処理が軽い → 処理が重い
画質より処理速度優先 → 処理速度より画質優先
なので、自分の環境では「faster」を指定。
※ まだCPU的には余力はあるけれど、それほど変わらないので適当。
エンコードプロファイル:Twitchでは、mainを推奨しているので、「main」を指定。
※ highプロファイルでも問題はないが、高解像度でもないので
mainでも画質は微妙にしか変わらない。
キーフレーム間隔:Twitchでは、2を推奨しているので、「2」を指定。
※ 特に0の自動を選んでも変わらないが、影響もないので推奨通りの設定。
CFRを有効にする:固定フレームレートを有効にしたいので、「チェックを入れる」
今回は久々の記事の投稿で長文になりましたが、以上でOBSの説明と設定は終了です、
お疲れ様でした。
最後に、OBSの配信時に忘れがちなブラウザでの確認の場合のボリューム設定を必ず"MUTE"に
するのだけは注意してお忘れなく~。
■ OBSをただの高画質な動画キャプチャ専用として使用した設定と、
OBS出力動画(MP4)を未加工でアップロードした動画の画質テスト
ゲーム : ブレイブルー クロノファンタズマ エクステンド ( BBCPEX )
XboxOne、PS4、PS3で発売中 ( 動画は、XboxOne版 )
先に書きますが、ゲームプレイ自体は練習不足でコンボミスも多いので
全く期待しないで下さい(ノω;`)
アーケードモードを 難易度HELLでラスト( 敗北 ) まで。
【 OBS設定 】
※ 高ビットレート = 配信用ではなくキャプチャ用なので注意
・CBR有効
・CBRパティング有効
・ビデオビットレート:15000、バッファ:15000
・サウンドビットレート:256
・配信映像:1280 x 720 ( 720p )、解像度の縮小:未設定
・FPS:60 ( 実際はOBS出力されてるのは1フレーム低下したもの )
・Aero無効
・x.264プリセット:veryfast
・エンコードプロファイル:high
・キーフレーム:2
・CFR有効
未加工でそのままアップロードしましたが、キャプチャ時はフレーム落ちの表示は0%、
再生すると極稀にフレーム落ちしてそうな感じ、でも、だいたい安定しています。
OBS自体は処理が軽くMP4キャプチャが出来るのでHDD容量が少ない場合は、便利かもしれません。
※ 2016年6月18日追記分
■ OBS StudioでTwitch配信後( 480p、60FPS )、
そのままTwitchのウェブの操作だけで、自分のYoutubeへ
配信動画をエクスポートし、配信動画を直接アップロード。
Twitchを普通に配信し、その配信した動画をTwitchの操作だけで、自分のYoutubeへエクスポートし
Youtubeへ動画をアップロードするので、画質は配信した画質と同様の物になります。
それを行うためには、Twitchのウェブ上でやるべき設定等が3個有り、
・Twitchの設定 → チャンネル&ビデオ
「 配信を自動的にアーカイブ 」にチェックを入れる
※ アーカイブ=Twitchサーバ上に配信したプレイ動画が14日保存されて
自分や他の人に配信後でも見逃した場合でも配信動画が見れる便利な機能
・Twitchの設定 → リンク
「 Youtube 」の部分の設定を選択し、YoutubeのIDとパスを入力してTwitchと関連付ける
※ 更に詳細設定で、Youtubeの自分のチャンネルへ登録されてる人へ、Twitch配信通知?が
・Twitch → ビデオマネージャ
「 Exxport 」を選択して実行するだけで、YoutubeへTwitch配信動画をアップロード。
※ エクスポートボタンを押すと更にウインドウが開くので、そこで
通常通りのYoutubeでの動画タイトルや説明やタグを入れるだけの簡単操作。
注意事項として、
前回のキャプチャ用のOBS高画質設定と違い、自分がよく配信用で使用するOBSの配信用設定なので
画質は480p&60FPSでの画質になりますが、
Youtubeの現時点の特徴で、720p未満の解像度の場合は30FPSでの動画再生になってしまうので、
Twitich:480p、60FPS配信 → Youtubeエクスポート: 480p、30FPSへ変換
されてしまいますのでそこだけ注意。
前回の高画質キャプチャ用の720p&60FPSと比較する為に、今回も同じゲーム。
ゲーム : ブレイブルー クロノファンタズマ エクステンド ( BBCPEX )
ゲーム自体は、今回はフレンドさんとのネット対戦です。
【 OBS Studio設定 】
※ 今回から自分の環境は、OBS クラッシック → OBS Studioへ変更してます。
それに伴い一部設定がなくなってるのでその個所は下記の様に消してあります。
・CBR有効
・ビデオビットレート:2000、バッファ:2000
・サウンドビットレート:160
・配信映像: 1280 x 720 ( 720p ) ※ 実際には下の解像度の縮小設定が適応される
・FPS:60 ( ※ OBS Studioへ変更後は、1フレームレート低下が無くなり正常化 )
・x.264プリセット:faster
・エンコードプロファイル:main
・キーフレーム:2