2016年5月28日土曜日

OBSにXSplit Broadcasterの画面を映す

~これまでのあらすじ~
      (ノ'A`)ノ  
      (  )  
   , , , , / > 
OBS MP 改二を使えばNVENCとFDK-AACを両立できることを知った ヽ('A`)ノ 

XSplit Broadcasterの出力をOBS-MP改二に流し込んで配信することを思いつく。
しかし大元のOBS MP(Open Broadcaster Software Studio MultiPlatform)からして、
Xsplit Broadcasterの出力を正常にキャプチャできないという問題を抱えていたのであった…

↓正常にキャプチャできていない様子。色が変。カラーではなく灰色がかっている




という訳でちゃんと映るようにしよう。

※注意※
公式の対処法ではありません。
この方法を実践して何か問題が発生しても、自己責任でお願いします。

(1)    あらかじめXSplit Broadcasterの解像度を確認しておく。ここでは「640x360」とする。
(2)    OBS MP 改二を起動する。このとき、XSplit Broadcasterは終了しておく。
(3)    映像ソースを追加し、XSplit Broadcasterを配置する。XSplit Broadcasterを起動したまま配置
    しようとするとOBSが落ちる。
(4)    映像ソースに適当な名前をつけて保存。ここでは「XSplit」と名付けたとする。
(5)    OBS MP 改二を閉じる。
(6)    <ユーザフォルダ>\AppData\Roaming\obs-studio\basic\scenes\無題.jsonのバックアップを
   取った後、テキストエディタでひらく。
(7)   「"name": "XSplit"」で検索。見つけた設定箇所のsettingブロックを以下の通り変更する。
   (「640x360」の部分は(1)で設定した解像度を指定)

====================================================================
            "id": "dshow_input",
            "mixers": 15,
            "muted": false,
            "name": "XSplit",
            "push-to-mute": false,
            "push-to-mute-delay": 0,
            "push-to-talk": false,
            "push-to-talk-delay": 0,
            "settings": {
                "active": true,
                "last_resolution": "640x360",
                "last_video_device_id": ここの文字列は変更しない,
                "res_type": 1,
                "resolution": "640x360",
                "video_device_id": ここの文字列は変更しない",
                "video_format": 301
            },
            "sync": 0,
            "volume": 1.0
        },
====================================================================

(8)    上書き保存してテキストエディタを閉じる。
(9)    XSplit Broadcasterを起動する。
(10)   OBS MP 改二を起動する。




やったぜ。

まあここまでやっても、XSplit Broadcasterを起動した状態で映像ソースのプロパティを開くと
「Oops! OBS has crashed」と言われて落ちちゃうんですけどねー。('A`)
なので映像ソース「Xsplit」のプロパティには触らないようにする。
win-dshow.dllさん頑張って。crash logがパンパンだぜ。

設定ファイルをいじって何とかなるレベルの問題なので、
そのうちOBS公式が根本的に解決してくれると思います。