Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

- [English](../index.md)

このパッケージには Unity の [**Unity Render Streaming**](../../../com.unity.template.renderstreaming/Documentation~/index.md) を基に作られた公開 API とサンプルプロジェクトが含まれます。
このパッケージには Unity の [**Unity Render Streaming**](../../com.unity.template.renderstreaming/Documentation~/jp/index.md) を基に作られた公開 API とサンプルプロジェクトが含まれます。

現在、1 つのサンプルがあります。

Expand Down Expand Up @@ -62,10 +62,3 @@
<img src="../images/browser.png" width="240">









Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,25 @@

**Render Streaming** は以下の機能を含みます。

- シグナリングサーバとの通信
- シグナリングサーバーとの通信
- カメラからの入力をストリームとして送信
- ブラウザからの入力とイベントとの関連付け

<img src="../images/renderstreaming_inspector.png" width=500 align=center>

## プロパティー
## プロパティ

| パラメータ | 説明 | デフォルト |
| パラメーター | 説明 | デフォルト |
| ---------------------------- | ------------------------------------------------------------ | ------------------------------- |
| **URL Signaling** | シグナリングサーバのURLを指定します | http://localhost |
| **Ice Servers** | STUN/TURN サーバをリストで指定します | |
| *Urls* | STUN/TURN サーバのURL を指定します | [stun:stun.l.google.com:19302\] |
| *Username* | TURN サーバを利用するときに使用するユーザ名 | |
| *Credencial* | TURN サーバを利用するときにサーバーにログインするときに使用する資格情報 | |
| *Credencial Type* | TURN サーバを利用するときにログイン時に使用される資格情報の種類を指定します | Password |
| **Interval** | シグナリングサーバへのポーリング頻度を秒単位で指定します | 5 |
| **Streaming Size** | ストリーミングに使用するフレームバッファのサイズです | 1280, 720 |
| **Capture Camera** | ストリーミング用のカメラを指定します | |
| **Array Button Click Event** | ブラウザ上のボタンクリックイベントを登録します | |
| *Element Id* | ブラウザから送られる ID を指定します | |
| *Click* | ボタンクリックイベントを登録します | |

| **URL Signaling** | シグナリングサーバーの URL を指定します | http://localhost |
| **Ice Servers** | STUN/TURN サーバーをリストで指定します | |
| *Urls* | STUN/TURN サーバーの URL を指定します | [stun:stun.l.google.com:19302\] |
| *Username* | TURN サーバーを利用するときに使用するユーザ名 | |
| *Credencial* | TURN サーバーを利用するときにサーバーにログインするときに使用する資格情報 | |
| *Credencial Type* | TURN サーバーを利用するときにログイン時に使用される資格情報の種類を指定します | Password |
| **Interval** | シグナリングサーバーへのポーリング頻度を秒単位で指定します | 5 |
| **Streaming Size** | ストリーミングに使用するフレームバッファのサイズです | 1280, 720 |
| **Capture Camera** | ストリーミング用のカメラを指定します | |
| **Array Button Click Event** | ブラウザー上のボタンクリックイベントを登録します | |
| *Element Id* | ブラウザーから送られる ID を指定します | |
| *Click* | ボタンクリックイベントを登録します | |
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,23 @@

## トラブルに関する質問

### ブラウザにストリームが表示されない
### ブラウザーにストリームが表示されない

ブラウザのバージョンが古い可能性があります。最新のバージョンをインストールしてください。
ブラウザーのバージョンが古い可能性があります。最新のバージョンをインストールしてください。

### iOS Safari で動作しない

Web サーバの[起動時オプション](webserver.md)を確認してください。**Safari** 及び **iOS Safari** は、 **http** では WebRTC の機能を利用できません。 **https** を利用する必要があります。
Web サーバーの[起動時オプション](webserver.md)を確認してください。**Safari** 及び **iOS Safari** は、**http** では WebRTC の機能を利用できません。 **https** を利用する必要があります。

### 実行時に初期化で失敗する

**Nvcodec** が利用可能なグラフィックボードが利用可能であることを確認してください。また、グラフィックドライバは最新のバージョンをインストールしてください。`com.unity.webrtc` のドキュメントも確認してください。
**Nvcodec** が利用可能なグラフィックボードが利用可能であることを確認してください。また、グラフィックドライバーは最新のバージョンをインストールしてください。`com.unity.webrtc` のドキュメントも確認してください。

あるいは、Graphics API は現在のところ `Dirext3D11` のみになります。それ以外の API を選択している場合は初期化に失敗します。
また、Graphics API は現在のところ `Dirext3D11` のみサポートされます。それ以外の API を選択している場合は初期化に失敗します。

### Web サーバの起動に失敗する
### Web サーバーの起動に失敗する

ポートがすでにほかのサービスに使われているかどうか確認してください
ポートがすでにほかのサービスに使われていないか確認してください

## 利用環境に関する質問

Expand All @@ -28,44 +28,44 @@ Unity 2019.1 以降で利用可能です。

### 利用可能な OS は?

Windows10 x64で利用可能です。他の OS にも順次対応予定です。
Windows10 x64 で利用可能です。他の OS にも順次対応予定です。

### ハードウェアの制約は?

ハードウェアエンコードに NVCodec を利用しているために、 NVIDIA のグラフィックボードが必須になります。NVIDIA の[サイト](https://developer.nvidia.com/video-encode-decode-gpu-support-matrix)で、NVCodec が利用可能なグラフィックボードであることを確認してください。

### 利用可能なブラウザは
### 利用可能なブラウザーは

各種ブラウザの WebRTC の対応状況に依存しています。
各種ブラウザーの WebRTC の対応状況に依存しています。

## 機能に関する質問

### 複数の端末に配信できる?

可能です。ただし、配信端末の数が増えるほど、配信側に負荷がかかります。最新の デスクトップ PC であれば720p の解像度で5台程度の配信は可能ですが、それ以上は [SFU](https://webrtcglossary.com/sfu/) と呼ばれる配信サーバを介して利用する必要があります
可能です。ただし、配信端末の数が増えるほど、配信側に負荷がかかります。最新の デスクトップ PC であれば 720p の解像度で 5 台程度の配信は可能ですが、それ以上は [SFU](https://webrtcglossary.com/sfu/) と呼ばれる配信サーバーを介して利用する必要があります

### Simulcast には対応している?

バージョン1.0 現在未対応です。
バージョン 1.0 現在未対応です。

### 複数のカメラの映像を配信することは可能?

バージョン1.0 現在未対応です。
バージョン 1.0 現在未対応です。

### 画像品質を上げるには?

画像品質はネットワーク品質に依存します。

### リアルタイムレイトレーシングには対応している?

バージョン1.0 現在未対応です。
バージョン 1.0 現在未対応です。

## サポートに関する質問

### Unity から技術的なサポートは受けられますか?
Unity フォーラムに専用の[カテゴリ](https://forum.unity.com/forums/unity-render-streaming.413/)がありますので、質問することが可能です。
また、バグや機能要望については [Github Issues](https://github.com/Unity-Technologies/UnityRenderStreaming/issues) にご報告ください。
また、バグや機能要望については [Github Issues](https://github.com/Unity-Technologies/UnityRenderStreaming/issues)にご報告ください。

### Unity を GCP などにホスティングしてレンダリングサーバとして利用できますか
### Unity を GCP などにホスティングしてレンダリングサーバーとして利用できますか

Unity はレンダリングサーバとしての用途のサポートは行っていません
Unity はレンダリングサーバーとしての用途のサポートは行っていません
228 changes: 228 additions & 0 deletions Packages/com.unity.template.renderstreaming/Documentation~/jp/https.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,228 @@
# **https 用の自己署名証明書**

## **コンテンツ**

* [前提条件](#Prerequisites)
* [Windows](#Windows)
* [1. Chocolatey](#1.-Chocolatey)
* [2. OpenSSL](#2.-OpenSSL)
* [手順 1:秘密鍵を作成する](#Step-1:-Create-a-Private-Key)
* [手順 2:証明書ファイルを作成する](#Step-2:-Create-a-Certificate-File)
* [手順 3:Windows で認証局(CA)を信頼する](#Step-3:-Get-Windows-to-Trust-the-Certificate-Authority-(CA))
* [手順 4:ローカルドメインサイトを作成する](#Step-4:-Create-a-Local-Domain-Site)
* [手順 5:秘密鍵(client-1.local.key)と、新しく作ったドメイン用の認証リクエスト(client-1.local.csr)を作成する](#Step-5:-Create-a-Private-Key-(client-1.local.key)-and-Certificate-Request-(client-1.local.csr)-for-the-New-Domain)
* [手順 6:新しい証明書(client-1.local.crt)を発行する](#Step-6:-Issue-the-New-Certificate-(client-1.local.crt))
* [手順 7:webserver.exe を実行する](#Step-7:-Run-the-webserver.exe)

## **前提条件**

### **Windows**

#### ***1. Chocolatey***

* Chocolatey は Windows で動作するパッケージマネージャーです(Windows で動く apt-get や yum のようなものです)
* Chocolatey はこちらのリンクからインストールできます:[https://chocolatey.org/install](https://chocolatey.org/install)

#### ***2. OpenSSL***

* OpenSSL は堅牢で商用レベルでの利用にも耐えられる、機能豊富な Transport Layer Security(TLS) および Secure Sockets Layer(SSL)プロトコルのツールキットです。
* インストール

```terminal
choco install openssl.light
```

## **手順 1:秘密鍵を作成する**

* 次のコマンドを実行します:

```terminal
"C:\Program Files\OpenSSL\bin\openssl.exe" genrsa -des3 -out rootSSL.key 2048
```

* パスワードを入力します:

```terminal
Enter pass phrase for rootSSL.key:
```

* パスワードを確認します

```terminal
Verifying - Enter pass phrase for rootSSL.key:
```

## **手順 2:証明書ファイルを作成する**

* 次のコマンドを実行します:

```terminal
"C:\Program Files\OpenSSL\bin\openssl.exe" req -x509 -new -nodes -key rootSSL.key -sha256 -days 1024 -out rootSSL.pem
```

* パスワードを入力します:

```terminal
Enter pass phrase for rootSSL.key:
```

* ソフトウェアを利用する国の 2 文字の国コードを入力します:

```terminal
Country Name (2 letter code) [AU]:CA
```

* ソフトウェアを利用する場所(州、都道府県など)の名称を入力します:

```terminal
State or Province Name (full name) [Some-State]:Quebec
```

* ソフトウェアを利用する地域(市区町村、郡など)の名称を入力します:

```terminal
Locality Name (eg, city) []:montreal
```

* ソフトウェアを利用する組織の名称を入力します:

```terminal
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Unity
```

* 組織内で所属しているビジネスユニットの名称を入力します:

```terminal
Organizational Unit Name (eg, section) []:Verticals
```

* ソフトウェアを利用するコンピューターの「完全修飾ドメイン名(FQDN)」または利用者自身のお名前を入力します:

```terminal
Common Name (e.g. server FQDN or YOUR name) []:Tony
```

* メールアドレスを入力します:

```terminal
Email Address []:anthonyma@unity3d.com
```

## **手順 3:Windows で認証局(CA)を信頼する**

1. `マイクロソフト管理コンソール(mmc.exe)`を検索して起動します

![mmc.exe](./images/https_step3_01.png)

2. `ファイル > スナップインの追加と削除...` を選択します

![スナップインの追加と削除...](./images/https_step3_02.png)

3. `証明書` をクリックして、次に `追加 >` をクリックします

![スナップインの追加と削除...](./images/https_step3_03.png)

4. `コンピューター アカウント` を選択して `次へ >` をクリックします

![スナップインの追加と削除...](./images/https_step3_04.png)

5. `ローカル コンピューター (このコンソールを実行しているコンピューター)` を選択して `完了` をクリックします

![スナップインの追加と削除...](./images/https_step3_05.png)

6. 証明書が追加されたことを確認して、`スナップインの追加と削除` ウィンドウの `OK` をクリックします

![スナップインの追加と削除...](./images/https_step3_06.png)

7. `コンソール 1 - [コンソール ルート]` と表示されているウィンドウの左側で、`コンソール ルート > 証明書 (ローカル コンピューター)` を展開します

![スナップインの追加と削除...](./images/https_step3_07.png)

8. `信頼されたルート証明機関` を選択して、`証明書` を `右クリック` し、`すべてのタスク > インポート...` を選択します

![スナップインの追加と削除...](./images/https_step3_08.png)

9. `証明書のインポート ウィザード` ウィンドウが表示されるので `次へ` をクリックします

![スナップインの追加と削除...](./images/https_step3_09.png)

10. [手順 2:証明書ファイルを作成する](#Step-2:-Create-a-Certificate-File) で作成した `rootSSL.pem` ファイルを指定して、`次へ` をクリックします

![スナップインの追加と削除...](./images/https_step3_10.png)

11. `証明書をすべて次のストアに配置する` を選択して、`信頼されたルート証明期間` が `証明書ストア:` フィールドの値に設定されていることを確認して、`次へ` をクリックします。

![スナップインの追加と削除...](./images/https_step3_11.png)

12. `完了` をクリックします。

![スナップインの追加と削除...](./images/https_step3_12.png)

## **手順 4:ローカルドメインサイトを作成する**

1. `127.0.0.1 client-1.local` を `C:\Windows\System32\drivers\etc\hosts` ファイルに追加します。

```hosts
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host

# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost

127.0.0.1 client-1.local
# End of section

```

## **手順 5:秘密鍵(client-1.local.key)と、新しく作ったドメイン用の認証リクエスト(client-1.local.csr)を作成する**

次のコマンドを実行します。なお、下記のフィールドの値は [手順 1:秘密鍵を作成する](#Step-1:-Create-a-Private-Key) で使った値と同じであるとします。
* C=CA (国)
* ST=Quebec (州)
* L=montreal (地域)
* O=Unity (組織)
* OU=Verticals (ビジネスユニット)
* CN=Tony (ユーザー名)
* email<span>Address=anthonyma@unity3d.</span>com (メールアドレス)

```terminal
"C:\Program Files\OpenSSL\bin\openssl.exe" req -new -sha256 -nodes -out client-1.local.csr -newkey rsa:2048 -keyout client-1.local.key -subj "/C=CA/ST=Quebec/L=montreal/O=Unity/OU=Verticals/CN=Tony/emailAddress=anthonyma@unity3d.com"
```

## **手順 6:新しい証明書(client-1.local.crt)を発行する**

* 次のコマンドを実行します:

```terminal
"C:\Program Files\OpenSSL\bin\openssl.exe" x509 -req -in client-1.local.csr -CA rootSSL.pem -CAkey rootSSL.key -CAcreateserial -out client-1.local.crt -days 500 -sha256 -extensions "authorityKeyIdentifier=keyid,issuer\n basicConstraints=CA:FALSE\n keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment\n subjectAltName=DNS:client-1.local"
```

* パスワードを入力します:

```terminal
Enter pass phrase for rootSSL.key:
```

## **手順 7:webserver.exe を実行する**

* 次のコマンドを実行します:

```terminal
.\webserver.exe -s -p 443 -k client-1.local.key -c client-1.local.crt
```
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading