この ボイス サンプル (Voice Sample) は、C SDK 用のクライアントとサーバーのアプリケーションを使用してセキュアな ボイス チャット システム を実装する方法の実例を示しています。
このサンプルには以下の機能が含まれています。
- 他のユーザーが参加しているルームにユーザーが参加できるようにするトークンをリクエストする (サーバー経由)
- フレンドや他のユーザーが参加しているルームに参加する
- ルームから退出する
- 自分の音声をミュートにする
- 他のユーザーの音声をミュートにする (サーバー経由、ルームの所有者のみが可能)
- 他のユーザーをルームから追い出す (サーバー経由、ルームの所有者のみが可能)
- ユーザーの発言時やミュート時にステータスの更新を表示する
- オーディオ入力/出力デバイスを変更する
Voice クライアント
Windows 32/64 ビット用のセットアップ
このセクションでは、32 ビットおよび 64 ビットの Windows オペレーティング システム用の Voice クライアントのサンプル アプリケーションのビルドおよび実行について説明します。
Win64/Win32 用の Voice クライアントのサンプル アプリケーションをビルドする
- 「
EOS-SDK.zip
」を任意の場所に解凍します。 - 「EOS-SDK\Samples」フォルダに移動します。
Samples.sln
をダブルクリックすると、Visual Studio の [ソリューション エクスプローラ] にサンプルが表示されます。- [スタートアップ プロジェクト] を [Voice] に設定します。
SampleConstants.h
を開き、自分のテスト アプリの値に合わせて、ProductId、SandboxId、DeploymentId、ClientCredentialsId、および ClientCredentialsSecret を変更します。- [ソリューション構成] で
Release_DX
またはDebug_DX
を選択します。 - [ソリューション プラットフォーム] で [x64 (Win64)] または [x86 (Win32)] を選択します。
- [ソリューション エクスプローラ] で、Voice プロジェクトを右クリックして [ビルド] を選択します。
- ビルドが正常に終了すると、「
\EOS-SDK\Samples\Voice\Client\Bin\Win64\Release_DX\
」フォルダに「Voice.exe
」が作成されています。
これで、サンプル アプリケーションを実行できるようになりました。
Voice クライアントのサンプル アプリケーションを実行する (Win64/Win32)
Voice クライアントのサンプル アプリケーションを実行するには、以下の手順に従います。
- 「
\EOS-SDK\Samples\Voice\Client\Bin\Win64\Release_DX\
」フォルダに移動します。 Voice.exe
を実行します。- サーバーのリッスン ポートを変更するには、
-serverport <port>
を追加します。 - サーバーの URL を変更するには、
-serverurl <url>
を追加します。
MacOS または Linux 用のセットアップ
セットアップの前提条件
Voice クライアントのサンプル アプリケーションを MacOS でビルドするには、次の依存関係をインストールする必要があります。
MacOS または Linux 用の Voice クライアントのサンプル アプリケーションをビルドする
- 「
EOS-SDK.zip
」を任意の場所に解凍します。 - ターミナルで「
/EOS-SDK/Samples/Voice/Client/
」に移動します。 SampleConstants.h
を開き、自分のテスト アプリの値に合わせて、ProductId、SandboxId、DeploymentId、ClientCredentialsId、および ClientCredentialsSecret を変更します。- 「
./Build.sh
」と入力して実行します (または、Mac の Finder でBuild.command
を実行します)。 - ビルドが正常に終了すると、「
/EOS-SDK/Samples/Voice/Client/Build/
」フォルダに複数のファイルが新規作成されています。
これで、サンプル アプリケーションを実行できるようになりました。
Voice クライアントのサンプル アプリケーションを実行する (MacOS または Linux)
サンプル アプリケーションを実行するには、以下の手順に従います。
- 「
/EOS-SDK/Samples/Voice/Client/
」に移動します。 - 「
./Run.sh
」と入力して実行します (または、Mac の Finder でRun.command
を実行します)。 - サーバーのリッスン ポートを変更するには、
-serverport <port>
を追加します。 - サーバーの URL を変更するには、
-serverurl <url>
を追加します。
Voice クライアントのサンプル アプリケーションを使用する
デベロッパー認証ツール にログインするには、[Dev Auth] オプションを選択してから [Log In (ログイン)] を選択します。ログインすると、Voice クライアントのサンプル アプリケーションには以下のオプションがあります。
JOIN (参加)
[JOIN] を選択すると、ルーム参加プロセスが開始されます。ルームの参加するために使用するルーム参加トークンを取得するためのリクエストがサーバー経由で行われます。
現在のルームには他にプレイヤーはいないので、新規ルームが作成されて、そのルームに自分が追加されます。[Room:] ボックスに RoomId が表示され、[ROOM MEMBERS] テーブルが更新されて、自分がルームに追加されたことが表示されます。
LEAVE (退出)
[LEAVE] をクリックすると、現在メンバーである現在のルームを退出します。
MUTE (ミュート)
[MUTE] は、ローカル ユーザーのみが使用可能であり、をクリックすると、自分の音声がミュートになります。音声がミュートになると、音声ステータス アイコンが次のような赤色に変化します。
OWNER-ONLY (所有者のみ)
ルームの所有者であれば、ユーザーをミュートにするオプションおよびユーザーを現在のルームから追い出すオプションがあります。
REMOTE MUTE (リモート ミュート)
[REMOTE MUTE] をクリックすると、そのユーザーがミュートになります。
KICK (追い出し)
[KICK] をクリックすると、そのユーザーが現在のルームから追い出されます。新しいルーム参加トークンをリクエストして付与されない限り、そのユーザーはそのルームに再度参加することはできません。
CHAT (チャット)
フレンド リストでフレンドの名前の横にある [CHAT] をクリックすると、そのフレンドのルームに自分が追加されて、そのフレンドとチャットできるようになります。
JOIN コンソール コマンドを使用して、自分のフレンドではない別のプレイヤーと同じルームに参加することもできます。
AUDIO DEVICES (オーディオ デバイス)
[SETUP (セットアップ)] ダイアログのドロップダウン メニューを使用して、入力と出力のオーディオ デバイスを変更することができます。
SPEAKING STATUS (発言ステータス)
ユーザーが発言しているときは、音声ステータス アイコンが次のような緑色の完全なスピーカーに変化します。
コンソール コマンド
JOIN (参加)
- 使用法:“JOIN ROOM_NAME”。
- ローカル ユーザーのルーム参加プロセスを開始します。
ROOM_NAME
を指定していれば、そのルームに参加します (許可されている場合)。ROOM_NAME
を指定していなければ、新規ルームが作成されて、そのルームに参加します。
LEAVE (退出)
- 使用法:“LEAVE”。
- ローカル ユーザーが現在のルームから退出します。
KICK (追い出し)
- 使用法:“KICK USER_ID”。
- 現在のルームからユーザーを追い出します。
- 自分がルーム所有者でない場合は、何も行われません。
USER_ID
は ProductUserId です。
REMOTEMUTE
- 使用法:“REMOTEMUTE USER_ID MUTE”。
- ユーザーのリモート ミュート状態を設定します。
- 自分がルーム所有者でない場合は、何も行われません。
USER_ID
は ProductUserId です。- MUTE が「
1
」であればミュートになり、「0
」であればミュートが解除されます。
Voice サーバー
Windows 32/64 ビット用のセットアップ
このセクションでは、32 ビットおよび 64 ビットの Windows オペレーティング システム用の Voice サーバーのサンプル アプリケーションのビルドおよび実行について説明します。
Win64/Win32 用の Voice サーバーのサンプル アプリケーションをビルドする
- 「
EOS-SDK.zip
」を任意の場所に解凍します。 - 「
\EOS-SDK\Samples\
」フォルダに移動します。 Samples.sln
をダブルクリックすると、Visual Studio の [ソリューション エクスプローラ] にサンプルが表示されます。- [スタートアップ プロジェクト] を [VoiceServer] に設定します。
SampleConstants.h
を開き、自分のテスト アプリの値に合わせて、ProductId、SandboxId、DeploymentId、ClientCredentialsId、および ClientCredentialsSecret を変更します。- [ソリューション構成] で
Release
またはDebug
を選択します。 - [ソリューション プラットフォーム] で [x64 (Win64)] または [x86 (Win32)] を選択します。
- [ソリューション エクスプローラ] で、VoiceServer プロジェクトを右クリックして [ビルド] を選択します。
- ビルドが正常に終了すると、「
\EOS-SDK\Samples\Voice\Server\Bin\Win64\Release\
」フォルダに「VoiceServer.exe
」が作成されています。
これで、サンプル アプリケーションを実行できるようになりました。
Voice サーバーのサンプル アプリケーションを実行する (Win64/Win32)
Voice サーバーのサンプル アプリケーションを実行するには、以下の手順に従います。
- 「
\EOS-SDK\Samples\Voice\Server\Bin\Win64\Release\
」フォルダに移動します。 VoiceServer.exe
を実行します。- サーバーのリッスン ポートを変更するには、
-voiceserverport <port>
を追加します。 - サーバーの URL を変更するには、
-voiceserverurl <url>
を追加します。
MacOS または Linux 用のセットアップ
セットアップの前提条件
Voice サーバーのサンプル アプリケーションを MacOS でビルドするには、次の依存関係をインストールする必要があります。
- cmake
- gcc (Mac 用の Xcode コマンドライン ツールを使用)
MacOS または Linux 用の Voice クライアントのサンプル アプリケーションをビルドする
- 「
EOS-SDK.zip
」を任意の場所に解凍します。 - ターミナル で「
/EOS-SDK/Samples/Voice/Server/
」に移動します。 SampleConstants.h
を開き、自分のテスト アプリの値に合わせて、ProductId、SandboxId、DeploymentId、ClientCredentialsId、および ClientCredentialsSecret を変更します。- 「
./Build.sh
」と入力して実行します (または、Mac の Finder でBuild.command
を実行します)。 - ビルドが正常に終了すると、「
/EOS-SDK/Samples/Voice/Server/Build/
」フォルダに複数のファイルが新規作成されています。
これで、サンプル アプリケーションを実行できるようになりました。
Voice サーバーのサンプル アプリケーションを実行する (MacOS)
サンプル アプリケーションを実行するには、以下の手順に従います。
- 「
/EOS-SDK/Samples/Voice/Server/
」に移動します。 - 「
./Run.sh
」と入力して実行します (または、Mac の Finder でRun.command
を実行します)。 - サーバーのリッスン ポートを変更するには、
-voiceserverport <port>
を追加します。 - サーバーの URL を変更するには、
-voiceserverurl <url>
を追加します。
Voice サーバーのサンプル アプリケーションを使用する
Voice サーバーはコンソール ベースのアプリケーションであるため、GUI 要素はなく、デバッグ テキストがコンソールとデバッグ ログファイル (デフォルトでは、「DebugOutput.log
」) に出力されます。エラーは 赤色の テキストで出力され、警告は 黄色の テキストで出力されます。
Voice サーバー アプリケーションを開始すると実行されたままになり、複数のクライアントからのリクエストが処理されます。
サーバー アプリケーションを停止するには、Ctrl+C
キーを押します。