クラスタとエクステンションのセットアップ¶
In This Section
はじめに¶
このセクションでは、以下のことを前提に説明していきます。
- Genvid SDK の set up a development environment が完了していること。
- クラウドで DirectX Sample in the cloud を実行できること。
始める前に、以下のものも必要となります。
- ストリーム配信用の Twitch Account 。
- エクステンションを作成するための Twitch Developer Account 。
- Twitch Developer Rig のインストール。
- 動作可能な local bastion and cluster 。
Terraform の構成の編集¶
アドレス、ストリームキー、チャンネルが必要です。取得方法については、 Twitch 設定 ページのライブ配信の設定セクションを参照してください。
2 つの選択肢が存在します。
\samples\streaming_services
のtwitch.sample.hcl
を編集する。version = "1.7.0" settings { encode { stream { enable = true service = "twitch" // YOU MUST CHANGE THE ADDRESS, CHANNEL AND KEY VALUE addr = "rtmp://<twitch-ingest-server>/app" channel = "channelname" key = "live_NNNNNNNN_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" } } leaf { port = 30001 } } // end of settings link "button" { name = "Twitch Channel" template = "http://twitch.tv/${key `genvid/encode/stream/channel`}" } // end of link "twitch" config { embed_ssl { enabled = true } } // end of config
ローカルクラスタを使用している場合は、以下のコマンドでロードすることができます。
genvid-sdk load-config twitch.sample.hcl
クラウドでクラウドを使用する場合
genvid-sdk -c [clusterid] load-config twitch.sample.hcl
TWITCH CHANNEL ボタンが表示され、Twitch チャンネルにリダイレクトされます。Web サイト上の埋め込みストリームをテストするには、 CUBE SAMPLE をクリックします。
または、 Cluster UI Settings のページでパラメータをマニュアルで入力することもできます。
しかし、どちらの場合も、その後、 \samples\cube\twitch-extension\config
にある twitchsecret.sample.hcl
の中のシークレットキーを編集する必要があります。
version = "1.7.0" secrets { twitch { TWITCH_EXT_CLIENT_SECRET = "ENTER_YOUR_TWITCH_EXT_CLIENT_SECRET" } }
ローカルクラスタを使用している場合は、以下のコマンドで読み込みます。
genvid-sdk load-config twitchsecret.sample.hcl
またはクラウドでクラスタを使用する場合:
genvid-sdk -c [clusterid] load-config twitchsecret.sample.hcl
警告
クラウド上で SSL を使用している場合でも、ローカルクラスタで SSL を使用している場合でも、Web サイトに埋め込まれた Twitch をストリーミングしたい場合は、』\samples\streaming_services』 にある 『twitch.sample.hcl』 を読み込む必要があります。Web サンプルを読み込む前に ‘twitch.sample.hcl‘ を読み込むと、Web サンプルは ‘web.hcl‘ ファイルから ‘embed_ssl‘ に関連付けられた値を上書きします。
DirectX サンプルの実行¶
/samples/cube/directx
ディレクトリに移動します。プロジェクトのビルドに使用する Genvid ファイルをコピーします。
py directx.py prepare
プロジェクトのビルド
py directx.py build
サンプルをロードします。
py directx.py load
/samples/cube/web
ディレクトリに移動します。Web サイトを構築します。
py web.py build
Web サイトをロードします。
py web.py load
クラスタで SSL モジュールを使用する場合、leaf エンドポイントとWeb エンドポイントが作成されます。これらのエンドポイントは、Web サイトをロードする際に loadEndpoint() メソッドを使ってクラスタの設定でロードされます。
これらのエンドポイントのキー値は、クラスタ設定で見つけることができます。
Cluster UI を起動します。
genvid-sdk monitor
Jobs タブをクリックします。
START ALL をクリックします。
Twitch エクステンションを作成する¶
注釈
この情報は、Twitch が管理するシステムに依存しています。できるだけ新しい情報を提供できるようにしていますが、最新の情報については、Twitch developer documentation をご確認ください。
Twitch Developer Account を開きます。
Your Dashboard をクリックします。
Create Extension をクリックします。
エクステンションの名前を選択します (どんな名前でも良い)。
Continue をクリックします。
Create an Extension Version で、 Panel、 Video - Fullscreen を選択します。
Summary に何か入力します。
Create Extension Version をクリックします。
Genvid SDK が Twitch Extension Configuration Service を使用するため、起動させます。
Capabilities タブを選択します。
Select how you will configure your extension で、Extension Configuration Service を選択します。
Save Changes をクリックします。
Twitch Developer Rig をエクステンションに関連付けします。¶
Twitch Developer Rig を開きます。
必要に応じて、Twitch アカウント情報を使用してログインします。
Add Project をクリックします。
注意: 初めてプロジェクトを作成する際には、 Create Your First Project をクリックして次のステップをスキップします。
Create Project をクリックします。
Select Existing or Create New Extension の 1 つ目のドロップダウンメニューで、作成した Twitch エクステンションを選択します。
注意: 表示されない場合は、更新ボタンをクリックします。
Next をクリックします。
Twitchエクステンションプロジェクトのフォルダを選択します。
注意: ここでは、
samples\cube
です。通常は、ファイルが提供されるフォルダの親フォルダとなります。テンプレートには None - I’ll use my own code を選択します。
Next をクリックします。
Get Started をクリックします。
これで、dev rig およびプロジェクトに関連するすべての情報を含む JSON ファイルがプロジェクトフォルダに作成されます。
これで Twitch Developer Rig が、DirectX サンプルをストリーミングする準備ができました。