OBS Studio ビルドツール ビルドスクリプト版 BuildStudioOBS解説 2018年08月14日 ビルド環境msysの構築の項目をOBS Studioビルド環境構築へ移動
閉じる
閉じる

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

×

OBS Studio ビルドツール ビルドスクリプト版 BuildStudioOBS解説 2018年08月14日 ビルド環境msysの構築の項目をOBS Studioビルド環境構築へ移動

2016-03-31 23:00

    ビルドツールを作成・提供してくださった皆様 および
    ビルドに関するノウハウを提供してくださった皆様に感謝


    加筆修正 2018年08月14日 ビルド環境msysの構築の項目をOBS Studioビルド環境構築へ移
                  動 それに伴う解説の再編集
         2017年09月01日 誤った解説Script64/32フォルダ内シェルスプリクトを修正
                  ・文頭01群_LIB_XXX の選択肢解説を修正
                  ・仕様一覧表と解説を加筆
                  ビルド に連続してビルドする解説を追加
                  VSC2013のビルド環境ではビルドができない旨 追加 その他
         2017年08月19日 OBSMP 環境構築Plusビルドツールで
                  BuildStudioOBSのビルド環境を構築できなくなった旨を追加
                  代わりに手動でビルド環境を構築する解説へ誘導リンクを追加
         2017年08月14日 7/26 新配信に対応するobs-rtmp-nicolive・・・解説を修正
                  それに伴い参考資料を修正
                  次回のビルドについて を追加
         2017年08月11日 ビルド環境次第でビルドができない旨と対策を文頭に追加
         2017年08月10日 プラグイン obs-rtmp-nicolive試作品 v2.2.0から現行 v2.1.0へ
                  置き換える方法を追加
         2017年03月04日 BrowserSourceを追加する方法を追加
         2016年11月10日 11/9に更新されたBuildMakeでmsys環境を構築する解説を追加
         2016年11月03日 OBSプラグインobs-rtmp-nicoliveの不具合対策β版をビルドに
                  取り入れる解説を追加 11/4 不具合対版の解説を加筆
         2016年10月16日 ビルド環境構築でOBSMP 環境構築Plusビルドツールに頼らない
                  方法を追加 他
         2016年10月08日 アンインストール を巻末に追加
                  10/6公開のMsys-AC-OBS-64/32公開に沿った解説を加筆
                  ビルド環境構築に必要なソフトの量とインストールにかかる時間
                  を追加 ほか
         2016年10月02日 新規で解説書き直し 過去に書いたブロマガURLへ転載できない
                  ので仮ページであったここを本ページに転化
         2016年09月30日 Windows 10インプレースアップグレードの解説から前のOSに
                  戻す記事を削除
         2016年05月31日 Win10環境でOBS Studioがうまく動かない時の対応を追加
    初版投稿 2016年03月31日




    ◆OBS Studioビルドスクリプト版

    スクリプト【script】

    コンピューターに対する一連の命令などを記述したもの。コンパイルを必要とするプログラミング言語によるものに対し、より簡易な言語で記述されたものをいう。

    出典 コトバンク> ASCII.jpデジタル用語辞典> スクリプトとは



    Windows環境で OBS Studio本体 プラグイン・フィルタの改良・新規開発 そのテストを行いたい方向け
    Windows10・Win8.1・Win7 SP1のOSで エンコーダFFmpeg-modified-v2 音声エンコーダFDK-AACを組み込んだ公式版OBS Studioを使いたい方向け の解説です


    OBS-Studio-XX.X.X-Small版に下記の仕様を選択してビルドをします
    HTML5フラッシュコメントジェネレーター などに必要なBrowserSourceを追加するやり方は
    解説の底に記しました

     FFmpegの仕様               音声コーデックの仕様













    OBS Studioのビルドには msys のほか Visual Studio Community 2015Qt が必要です
    ビルドに必要なソフトは総合計12GB前後 インストールにかかる総時間は2時間前後です
    更にOBS Studioを動かすために Microsoft Visual C++ 2015 の 再頒布可能パッケージ が必要です

    msys・VisualStudioCommunity2015とQtに関しては別解説 OBS Studioビルド環境構築 に記しました


    VisualStudioCommunity2013のビルド環境ではビルドができないようです

    BuildStudioOBS_1.333.1903.0以降 デフォルトでobs-rtmp-nicolive試作品 v2.2.0を組み込むようになっています
    obs-rtmp-nicoliveを作ったビルド環境がVSCommunity2015なので整合性の問題が出ます

    厳密に解説すると スクリプトを書き換えてobs-rtmp-nicoliveを組み込まない仕様にすることでVisual Studio Community 2013環境でのビルドはできます
    この場合 OBS Studioに放送URLとストリームキーを手入力してニコ生にログインします


    ニコ生ログインプラグインobs-rtmp-nicoliveを組み込みます

    17’7/26 新配信に対応するobs-rtmp-nicolive試作品 v2.2.0が公開されました
    BuildStudioOBS_1.333.1903.0以降 デフォルトで試作品 v2.2.0を組み込むようになっています
    VSC2015を使ってビルドをしたOBS Studioは32/64bit版ともに問題なく動きますが パスワード入力時に難があります
    気になる方は不具合対策をしたobs-rtmp-nicolive_2.2.0-pre2-WinV_Fix1に差し替えてください
    詳細は OBS Studio プラグイン obs-rtmp-nicolive試作品 v2.2.0 新配信対応版解説 に記しました

    資料として各msys環境でBuildStudioOBSを書き換えobs-rtmp-nicolive現行版 v2.1.0を取り入れるやり方は当解説の底に後述しました

    ※Windows 10を 前OSのアプリケーションや各種設定などをそのまま引き継ぐ「インプレースアップグレード」(上書きアップグレード)でアップグレードをした環境ではOBS Studio本体はうまく動かない場合があります そのときは USBメモリ8GBを使う Windows10のクリーンインストール を行ってください




    ビルド環境構築

    BuildStudioOBS添付のリードミーには ビルドに必要なソフトのインストール・Qtの置き場所・システム環境変数PATHの追加などを指定する方法が記載されています
    ビルド環境構築の解説は OBS Studioビルド環境構築 に記しました









    BuildStudioOBS内ファイルをビルド環境に合わせて変更する



    co1048576
    で公開されているアップローダからBuildStudioOBSをダウンロードします

    ◆BuildStudioOBSに添付されているリードミーをよく読んで下さい


    ビルド環境・ビルドしたいOBS Studioのbit数に合わせ ファイルの書き直しをします

    今回は例として32bit版OBS Studioのビルドをします




    env32.shを右クリック→「プログラムから開く」からワードパッドで開きます

    64bit版をビルドするときは env64.shを開きます







    ビルド環境に合わせ envXX.shを書き直します
    写真は書き直す前の状態です

    文頭の#付け外しをすることでビルド環境の選択をします

    Qt5.XをデフォルトのC直下に置かなかった場合は Qt5.Xのパスを実際に置いたパスに変えます
















    筆者のビルド環境は写真の通りです
    今回はビルド環境 MVSC2015と 例としてQt5.6での解説をします




    MVSC2015と 例としてQt5.6に合わせ 書き直しました

    実際は 選択したQt5.Xを指定します

    文頭に#がないのがビルド環境指定になります

    各欄一つだけ#がない状態になります

    環境に合った指定をしないとビルドはできません 間違えやすいのでよく確認してください

    Qt5.XをデフォルトのC直下に置かなかった場合は Qt5.Xのパスを実際に置いたパスに変えてください

    上書き保存をして閉じます







    書き換えたBuildStudioOBSをmsysに入れる



    msysフォルダ内homeフォルダへ














    ユーザー名フォルダへ












    ユーザー名フォルダに書き換えたBuildStudioOBSフォルダを置きます
















    ビルド



    msys内にあるmsys.batをクリックします













    コマンドプロンプトが立ち上がります












    左上角のアイコンをクリックして 既定値をクリック











    編集オプション全てにレ点を入れます
    OKで閉じます

    この設定でコマンドのコピーペーストができるようになります
















    シェルスプリクトのフォルダの在り処をコマンドプロンプトに書き込みます

    写真下のコマンドをコピーして コマンドプロンプト上で右クリックでペーストします

    ペーストができたら
    エンターキーを押します



    32bit版ビルド
    cd BuildStudioOBS/Scripts32

    64bit版ビルド
    cd BuildStudioOBS/Scripts64

    になります



    エンターキーを押した後の写真です

    シェルスプリクトフォルダの位置を把握しました










    ここからは ビルドしたい仕様のシェルスプリクトを指定します
    写真はコマンドプロンプトで指定したScript32フォルダの中身です Script64フォルダも同様です

    ※FFmpeg-modified-v2とFDK-AACを組み込む前提で解説を進めます
      他の選択肢に関しては BuildStudioOBS添付のReadMe.txtを読んでください
      当解説でも「Script64/32フォルダ内シェルスプリクト解説」で後述しています


    文頭01群はFFmpegの仕様の選択肢です

    modified-v2を組み入れたいので下記のコマンドをコピー
    ./01_BUILD_FFmpeg_SHARED_LIB_DLL_mod_v2.sh

    コマンドプロンプトにペーストしてエンターキーを押します

    エンターキーを押すとfdk-aacを含むFFmpeg-modified-v2のビルドが始まります












    fdk-aacを含むFFmpeg-modified-v2のビルドが終わった時のコマンドプロンプト











    巻末に文頭01群 ./01_BUILD_FFmpeg_SHARED_LIB_XXX の選択肢解説を置きました




    文頭02群は音声エンコーダの選択肢です
    どれかのコマンドをコピーし コマンドプロンプト上で右クリック ペーストしてエンターキーを押します

    音声エンコーダと音声ビットレート一覧表です










    ./02_BUILD_OBS.sh
    iTunesで使われている音声エンコーダCoreAudio か FFmpeg付属のAAC
    音声ビットレート32kbps~320kbpsになります
    音声ビットレートを128kbps以上使って音質を重視する放送向けです

    ./02_BUILD_OBS_HE_AAC_v1.sh
    どれがいいか迷ったら こちらを選択してください
    HE-AAC v1 通称「OBS MP 改」音声ビットレート28kbps~128kbpsになります
    音質をある程度は確保したい放送向けです

    ./02_BUILD_OBS_HE_AAC_v2.sh
    HE-AAC v2 通称「OBS MP 改二」音声ビットレート16kbps~56kbpsになります
    音声ビットレートをできるだけ低く設定し 映像ビットレートを増やしたいゲーム放送向けです
    オーディオインターフェースをお使いなら 24kbpsでも音質はそう悪くはありません


    文頭01群でfdk-aacを含むFFmpeg-modified-v2のビルドを済ませているので 上記3つの仕様のビルドを連続して行うことができます


    ビルドが終わった時のコマンドプロンプトの写真です

    別の文頭02群コマンドを指定することで連続してビルドができます






    コマンドプロンプトを閉じた後 新たに別仕様のビルドをするときは
    cd BuildStudioOBS/ScriptsXX に続いて文頭02群コマンドを指定します
    最後に何仕様をビルドしたのかメモをしておいてください

    巻末に文頭02群 ./02_BUILD_OBS_XXX の選択肢解説を置きました



    注意点

    今回ビルドしたOBS Studioビルド版とOBS Studio公式版は 共通の設定ファイルを使います
    使い分けする・テストなどの理由で下表のOBS Studioが同時にあるとき それぞれのOBS Studioの仕様と設定ファイルの内容が合っていないことがあります
    そのために設定した音声トラックのビットレートの数値が変わってしまいます


    それぞれのOBS Studioは音声エンコーダの仕様で音声ビットレート範囲が違います






    放送前に音声トラックのビットレートの数値を確認するのは面倒なので後述する「OBS Studioビルドの成否確認」でOBS Studioのショートカットを ポータブルモード に変更します
    共通の設定ファイルを使わずに それぞれのOBS Studioフォルダ内に設定フォルダを置く形になります




    文頭03群はmsys内にあるFFmpeg・FFmpeg_mod_v2のライブラリを含む 全てのライブラリのビルド生成品を削除するコマンドです

    ビルドしたOBS Studio・FFmpeg.exe・FFmpeg_mod_v2.exeを削除するのではありません


    連続でビルドをしない・時間を空けて別仕様のビルドをしないなら 文頭03群の全ライブラリ削除をした方が良いと筆者は考えます
    次回 ビルドをするときは 更新されたBuildStudioOBSが公開になったときで 全ライブラリを新造するから不要になるからです 前のライブラリのビルド生成品が新規ビルドに悪影響を及ぼすかもしれません


    入力した文頭01群と同じモードを指定します

    文頭01群で 01_BUILD_FFmpeg_SHARED_LIB_DLL_mod_v2.shを指定したので
    ./03_UNINSTALL_FFmpeg_SHARED_LIB_DLL_mod_v2.sh

    になります
    同じようにコマンドを書いてエンターキーを押して実行します

    削除が終わると上の写真と同じ様な表示が出ます
    右上隅のXボタンを押すか コマンドプロンプトに「exit」と書いてエンターキーで閉じます




    次回のビルドについて

    新しいOBS Studioに対応したBuildStudioOBSが公開されたなどで 2回目のビルドを行うときは 新しいBuildStudioOBSを上書きしてenvXX.shをビルド環境に合わせ書き直します
    中身を確認の上 envXX.shの使い回しをしてもいいでしょう


    今回は例としてビルド環境 Qt5.6とMVSC2015でビルドを行いました

    何らかの理由で 前回と同じQt5.XやMVSC2015ではない環境でビルドするときは 新たにmsysを作ってビルドしてください
    前回使用したQt5.XとMVSC2015の情報が残っているmsysで 別のQt5.XやMVSC2013を使ってビルドすると失敗する可能性があります

    写真はQt5.8とMVSC2015でビルドをしたことのあるmsysで Qt5.8とMVSC2013を指定して
    ビルドを行いニコ生ログインが出なかった(NG)obs-rtmp-nicoliveの依存を調べたときです

    問題のない(OK)に比べ Qt系の依存が2つあるのと libcurl.dll自体が違います









    OBS Studioビルドの成否確認



    Cドライブ(OSがあるドライブ)直下にOBS Studioフォルダができます










    Debug>bin>XXbitに進みます











    obsXX.exeがあればビルドは成功です











    obsXX.exeのショートカットを作って判りやすいところに置きましょう

    ここで前述した ポータブルモード にしておきましょう















    アンインストール

    OBS Studio本体のアンインストール

    レジストリは使用していません



    OBS Studioのアンインストールは
    Cドライブ(OSと同じドライブ)直下にあるフォルダごと削除するだけです










    設定ファイルの削除は 隠しフォルダを表示する設定 にしてC:\Users\ユーザー名\AppData\Roamingにあるobs-studioフォルダを削除します
    公式版・ビルド版のどちらかを残すときは 設定ファイルを削除しないでください

    Windows環境でのOBS Studio設定フォルダ

    公式版とBuildStudioOBSを使用したビルド版で設定ファイルは共通です
    32bit/64bit・バージョン新旧の間で設定(プロファイル・シーンコレクション)は共通になります














    OBS Studioを起動し設定をします

      ニコ生一般ユーザー生放送 通常配信向け設定解説
      ニコ生ユーザー生放送 新仕様「新配信」設定解説

      ニコ生チャンネル放送用の設定解説









    Script64/32フォルダ内シェルスプリクト解説




    文頭01群 ./01_BUILD_FFmpeg_SHARED_LIB_XXX の選択肢解説です


    文頭01群は 生成されるFFmpeg.exeの選択肢です

    FFmpeg・FFmpeg-modified-v2に
    それぞれfdk-aacあるなしの選択です



    fdk-aacを組み込まない選択肢は ビルドにかかる時間が その分短くなります



    文頭02群 ./02_BUILD_OBS_XXX の選択肢解説です


    文頭02群は 音声コーデックの選択肢です





    それぞれのOBS Studioは音声エンコーダの仕様で音声ビットレート範囲が違います
    PCにiTunes(Apple Application Support)があればCoreAudio・無ければFFmpeg付属のAACになります





    スクリプト文頭01郡でFFmpegの仕様・fdk-aacあるなしを スクリプト文頭02郡で音声コーデックの選択をします
    文頭02郡のfdk-aacを使う使わないの選択でも文頭01郡が関係しています

    スクリプト文頭01郡・文頭02郡と その関係を表にまとめました

    FFmpegビルドをする文頭01郡の仕様一覧です

    ビルドをしたFFmpegを基にOBS Studioの音声コーデックを選ぶ文頭02郡の仕様一覧です




    BrowserSourceを追加

    こちら からobs-browser-X.XX.zipをダウンロードし解凍します
    OBS Studioが起動していたら 終了します
    解凍して現れたbit数フォルダを
    C:\OBS-MP-WinXX-※※.※.※-音声コーデックの仕様\Release\obs-pluginsフォルダにドラッグします

    写真は公式版OBS Studio解説からの流用です 実際は32/64どちらかのフォルダだけ移します















    参考資料

    ※正式版が出たときにすぐ対応できるようビルド版にobs-rtmp-nicoliveを組み込む旧解説を記します

    ※11/4 obs-rtmp-nicolive が更新されました 不具合対策新仕様 に対応しました
    筆者のPC環境Windows10Pro 64bitでlibcurl.dllの置き換えをせず放送(通常配信・新配信β)できました
    同日に更新されたBuildStudioOBSは同日更新されたOBS Studio公式版0.16.3ベースに対策されたobs-rtmp-nicoliveを取り込んだビルドができます
    ビルドしてテスト放送してみてください



    ScriptsXXフォルダ内のGIT_CHECKOUT_obs-rtmp-nicolive.shを右クリック→「プログラムから開く」からワードパッドで開きます



















    GIT_CHECKOUT_TAG="v2.0"を書き換えます





















    例として
    https://github.com/raccy/obs-rtmp-nicolive/releases のPre-release(ベータ版)であるv2.1.0-pre1をビルドに取り込みます

    GIT_CHECKOUT_TAG="v2.0"のv2.0を組み込みたいバージョン名に書き換えます



    GIT_CHECKOUT_TAG="v2.1.0-pre1" に書き換えました

    上書き保存をして閉じます
























    参考資料


    OBSプラグインobs-rtmp-nicoliveのテスト版ではない現行版をビルドに取り入れる

    7/26 新配信に対応するobs-rtmp-nicolive試作品 v2.2.0が公開されました
    BuildStudioOBSはデフォルトで試作品 v2.2.0を組み込むようになっています
    ※MVSC2013環境ではビルドができません
     MVSC2015環境では問題なくビルドができ 試作品 v2.2.0も正常に動きます
    何らかの理由で現行のv2.1.0を組み込みたいときはスクリプトを書き換えます


    ScriptsXXフォルダ内のGIT_CHECKOUT_obs-rtmp-nicolive.shを右クリック→「プログラムから開く」からワードパッドで開きます

    文頭の#を付け替えることでobs-rtmp-nicoliveのバージョンを変更します




    試作品 v2.2.0から現行 v2.1.0に変更したときの写真です

    文頭に#がないのがビルド環境指定になります

    上書き保存をして閉じます

























    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。