【m】插件上传
5
Packages/com.unity.renderstreaming@3.1.0-exp.9/.signature
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"timestamp": 1734369333,
|
||||
"signature": "YjmG/cjgDPoUy3inhxwNpkYtVHiW/sW/8VE14/SYnBzHVEUYm2lbEaOGXCbgGYs/18sd/FOccpUUSW2/7TePvE0kkGpI6QPcp1EfMF0lBl2B5pDCN6/B5HldCSaGfmN1g6VI+16h7NsXj8h28unAE7xFPvt8+kVPNhTFRtpGCXq2aZpMg7D/VJJxQMS/g3ra7fymLD9q/z3E2LhbPa5sfhjrUXM2AC+SYdiHIzlGqKR9Z1jnZ/GzD5dd4BfoFZQnBvgGYKK5TgjuNevLRxB4l4Jw7kOPyPOSJaoPA1mOPX8mD2BSOuKev1cEPzpnHVYfkoMglVcAt/ssYJwn+dU8Qv0XByTqF5CS2OfPt97dFlUFePtIc/1UcpK1EohzsVqlVYWvZ9s97eprLFAfCrMMNDBt38XYzCzIrdxGv942u3cHcn8JtYkCLuxYYl3uPFwbaonmKEtpDKVRNbfgAQeaM57SDb4NSZK7SoZ/+ZAzcLqrw3y3A7B/rUeu56qFNBtH",
|
||||
"publicKey": "LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KTUlJQm9qQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FZOEFNSUlCaWdLQ0FZRUFzdUhXYUhsZ0I1cVF4ZEJjTlJKSAordHR4SmoxcVY1NTdvMlZaRE1XaXhYRVBkRTBEMVFkT1JIRXNSS1RscmplUXlERU83ZlNQS0ZwZ1A3MU5TTnJCCkFHM2NFSU45aHNQVDhOVmllZmdWem5QTkVMenFkVmdEbFhpb2VpUnV6OERKWFgvblpmU1JWKytwbk9ySTRibG4KS0twelJlNW14OTc1SjhxZ1FvRktKT0NNRlpHdkJMR2MxSzZZaEIzOHJFODZCZzgzbUovWjBEYkVmQjBxZm13cgo2ZDVFUXFsd0E5Y3JZT1YyV1VpWXprSnBLNmJZNzRZNmM1TmpBcEFKeGNiaTFOaDlRVEhUcU44N0ZtMDF0R1ZwCjVNd1pXSWZuYVRUemEvTGZLelR5U0pka0tldEZMVGdkYXpMYlpzUEE2aHBSK0FJRTJhc0tLTi84UUk1N3UzU2cKL2xyMnZKS1IvU2l5eEN1Q20vQWJkYnJMbXk0WjlSdm1jMGdpclA4T0lLQWxBRWZ2TzV5Z2hSKy8vd1RpTFlzUQp1SllDM0V2UE16ZGdKUzdGR2FscnFLZzlPTCsxVzROY05yNWdveVdSUUJ0cktKaWlTZEJVWmVxb0RvSUY5NHpCCndGbzJJT1JFdXFqcU51M3diMWZIM3p1dGdtalFra3IxVjJhd3hmcExLWlROQWdNQkFBRT0KLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCg"
|
||||
}
|
||||
361
Packages/com.unity.renderstreaming@3.1.0-exp.9/CHANGELOG.md
vendored
Normal file
@@ -0,0 +1,361 @@
|
||||
# Changelog
|
||||
All notable changes to com.unity.renderstreaming package will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
||||
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [3.1.0-exp.9] - 2024-12-13
|
||||
|
||||
### Changed
|
||||
- deps: use com.unity.webrtc@3.0.0-pre.8
|
||||
- doc: improve the API documentation of VideoCodecInfo
|
||||
- doc: improve the API documentation of AudioCodecInfo
|
||||
- doc: improve the API documentation of VideoStreamSender
|
||||
- doc: improve the API documentation of VideoStreamReceiver
|
||||
- doc: improve the API documentation of InputSender
|
||||
- doc: improve the API documentation of InputReceiver
|
||||
- doc: improve the API documentation of AudioStreamSender
|
||||
- doc: improve the API documentation of AudioStreamReceiver
|
||||
- doc: improve the API documentation of SignalingManager
|
||||
|
||||
## [3.1.0-exp.8] - 2023-11-30
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrade the version of WebRTC package `3.0.0-pre.7`.
|
||||
|
||||
## [3.1.0-exp.7] - 2023-08-09
|
||||
|
||||
### Added
|
||||
|
||||
- Added configurable logger to enable users to customize logging for their environment.
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrade the version of WebRTC package `3.0.0-pre.6`.
|
||||
- Add `AudioStreamSender.loopback` property.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed error on HTTP signaling when using short polling interval.
|
||||
- Fixed `SignalingManager` so that ICE server configurations aren't effected.
|
||||
- Added a workaround to fix an issue where `InputField` wasn't worked when entering characters from browsers or a `Receiver` scene of package sample.
|
||||
|
||||
### Removed
|
||||
|
||||
- Removed Furioos Integration.
|
||||
|
||||
## [3.1.0-exp.6] - 2023-02-24
|
||||
|
||||
### Added
|
||||
|
||||
- Support Automatic Streaming.
|
||||
- Support Render Streaming Wizard.
|
||||
- Support Command line arguments.
|
||||
- Add Render Streaming Settings in the Project Settings window.
|
||||
|
||||
### Changed
|
||||
|
||||
- Rename classes.
|
||||
- `RenderStreaming` > `SignalingManager`
|
||||
- Websocket is in default for signaling protocol instead of HTTP polling.
|
||||
- Changed a unit of the HTTP polling interval, second to millisecond.
|
||||
|
||||
## [3.1.0-exp.5] - 2023-01-16
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrade the version of Input System package `1.4.4`.
|
||||
- Upgrade the version of WebRTC package `3.0.0-pre.4`.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix incorrect mouse position in full-screen web player sample.
|
||||
|
||||
## [3.1.0-exp.4] - 2022-10-06
|
||||
|
||||
### Added
|
||||
|
||||
- Added APIs to select codec for audio/video streaming.
|
||||
- Added APIs to configure settings like bitrate for audio/video streaming.
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgraded the version of Input System package `1.4.1`.
|
||||
- Upgraded the version of WebRTC package `2.4.0-exp.11`.
|
||||
- Merge features of three classes to `VideoStreamSender`.
|
||||
- `MicrophoneStreamSender`
|
||||
- `AudioStreamReceiver`
|
||||
- `ScreenStreamSender`
|
||||
- Improve user interface on the inspector window of components below.
|
||||
- `VideoStreamSender`
|
||||
- `VideoStreamReceiver`
|
||||
- `AudioStreamSender`
|
||||
- `AudioStreamReceiver`
|
||||
|
||||
### Fixed
|
||||
|
||||
- Reduce CPU loads of the rendering thread by updating WebRTC package.
|
||||
- Fixed the crash when video resolutions higher than 1080p with hardware encoding.
|
||||
|
||||
### Removed
|
||||
|
||||
- No longer support Unity 2019.4.
|
||||
|
||||
## [3.1.0-exp.3] - 2022-03-01
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgraded the version of Input System package `1.3.0`.
|
||||
- Upgraded the version of WebRTC package `2.4.0-exp.6`.
|
||||
- Added microphone device option for streaming audio in the "Bidirectional" sample.
|
||||
- Integrate AR Foundation Sample (only use AR Foundation version 4.1.9, deprecated version 2.1)
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed the worker thread is not closed when stopping the signaling client.
|
||||
- Fixed keyboard input sending only sends one key at a time from browser.
|
||||
- Fixed video flipped vertically when uging GLES/GLCore graphics API.
|
||||
- Fixed the crach when encoding the high resolution on macOS using HWA.
|
||||
- Fixed the gap of the input position between sender and receiver.
|
||||
- Fixed the unexpected behaviour of input after using Gyro sample.
|
||||
|
||||
## [3.1.0-exp.2] - 2021-12-01
|
||||
|
||||
### Added
|
||||
|
||||
- Added audio streaming receiver.
|
||||
- Added the `Multiplay` scene into samples.
|
||||
- Added components for streaming.
|
||||
- `MicrophoneStreamSender`
|
||||
- `AudioStreamReceiver`
|
||||
- `ScreenStreamSender`
|
||||
- Added components for controlling user input.
|
||||
- `InputSender`
|
||||
- `InputReceiver`
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgraded WebRTC package to `2.4.0-exp.4`.
|
||||
- Upgraded Input System package to `1.0.2`.
|
||||
- Renamed components.
|
||||
- `CameraStreamer` -> `CameraStreamSender`
|
||||
- `ReceiveVideoViewer` -> `VideoStreamReceiver`
|
||||
- `WebCamStreamer` -> `WebCamStreamSender`
|
||||
- `AudioStreamer` -> `AudioStreamSender`
|
||||
- `InputSystemChannnelSender` -> `InputSender`
|
||||
- `InputSystemChannnelReceiver` -> `InputReceiver`
|
||||
- Improved controlling user input from browsers.
|
||||
- Updated manual documents.
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed resource leak of sender stream tracks.
|
||||
|
||||
## [3.1.0-exp.1] - 2021-06-15
|
||||
|
||||
### Added
|
||||
|
||||
- Android platform support
|
||||
- Added the Menu scene into samples
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgraded WebRTC package to `2.4.0-exp.3`.
|
||||
- Added drop-down list UI for selecting the video capture device in the `Bidirectional` scene
|
||||
- Changed the signaling process for exchanging SDPs
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed errors when disposing the scene while streaming video
|
||||
- Fixed the long processing time when disposing the signaling instance
|
||||
|
||||
## [3.0.1-preview] - 2021-03-04
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed a script error when importing the package sample
|
||||
|
||||
### Changed
|
||||
|
||||
- `Camerastreamer` uses a `TargetTexture` on the `Camera` component if the `RenderTexture` is attached on the `Camera`.
|
||||
|
||||
## [3.0.0-preview] - 2021-03-02
|
||||
|
||||
Version 3.0.0 has a big change in the package design. This mainly addresses moving scripts from the sample folder to Package Manager.
|
||||
|
||||
### Added
|
||||
|
||||
- Supported iOS platform.
|
||||
- Added new samples.
|
||||
- Added a documentation for samples.
|
||||
- Added components (`InputSystemChannelSender`, `InputSystemChannelReceiver`, `WebBrowserInputChannelReceiver`, `SingleConnection` and `Broadcast`).
|
||||
|
||||
### Changed
|
||||
|
||||
- Moved scripts from the sample folder to Package Manager.
|
||||
- Upgrading WebRTC package to `2.3.3-preview`.
|
||||
|
||||
## [2.2.2-preview] - 2020-12-15
|
||||
|
||||
### Changed
|
||||
|
||||
- Updated unitypackage files of the package samples
|
||||
|
||||
## [2.2.1-preview] - 2020-11-19
|
||||
|
||||
### Added
|
||||
|
||||
- Added `ReceiveVideo` scene in the sample project
|
||||
- Added documentation which explains how to customize webapp
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading WebRTC to `2.2.1-preview`
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed `NullPointerException` occurred when `UIController` instance is not attached `SimpleCameraController` component
|
||||
- Fixed behavior of the editor menu
|
||||
|
||||
## [2.2.0-preview] - 2020-11-09
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading WebRTC to `2.2.1-preview`
|
||||
|
||||
|
||||
## [2.1.1-preview] - 2020-09-11
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading WebRTC to `2.1.1-preview`
|
||||
- Changed not to customize SDP to make stabilize bitrate of video streaming
|
||||
- Erase Japanese documentation due to migrating to internal translation system
|
||||
|
||||
## [2.1.0-preview] - 2020-08-28
|
||||
|
||||
### Added
|
||||
|
||||
- Add a sample used Built-in Render Pipeline as graphics render pipeline
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading WebRTC to `2.1.0-preview`
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed the issue when pressing multiple buttons on a keyboard
|
||||
|
||||
## [2.0.2-preview] - 2020-05-14
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading input system to `1.0.0`
|
||||
- Upgrading WebRTC to `2.0.2-preview`
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix documents
|
||||
|
||||
## [2.0.1-preview] - 2020-05-01
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fixed versioning issue
|
||||
|
||||
## [2.0.0-preview] - 2020-04-30
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading input system to `1.0.0-preview.6`
|
||||
- Upgrading WebRTC to `2.0.0-preview`
|
||||
- Update URP/HDRP sample
|
||||
|
||||
## [1.2.2-preview] - 2020-03-06
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix build error when build standalone
|
||||
|
||||
## [1.2.1-preview] - 2020-02-28
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading WebRTC to `1.1.1-preview`
|
||||
|
||||
## [1.2.0-preview] - 2020-02-25
|
||||
|
||||
### Added
|
||||
|
||||
- Adding `AudioStreamer` class
|
||||
- Adding the flag to select encoder
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading Unity version to `2019.3`
|
||||
- Upgrading HDRP to `7.1.7`
|
||||
- Upgrading input system to `1.0.0-preview.1`
|
||||
- Upgrading WebRTC to `1.1.0-preview`
|
||||
|
||||
### Fixed
|
||||
|
||||
- Display the mouse pointer in the correct position
|
||||
- Try downloading webserver from a known version if the current version doesn't exist
|
||||
|
||||
## [1.1.2-preview] - 2019-09-20
|
||||
|
||||
Fixed
|
||||
|
||||
- Fix image links for Japanese documentation on Unity website
|
||||
|
||||
## [1.1.1-preview] - 2019-09-14
|
||||
|
||||
### Fixed
|
||||
|
||||
- Fix image links for documentation on Unity website
|
||||
|
||||
## [1.1.0-preview] - 2019-09-13
|
||||
|
||||
### Added
|
||||
|
||||
- Adding menu to download web app
|
||||
|
||||
### Changed
|
||||
|
||||
- Upgrading input system to `0.9.4-preview`
|
||||
- Upgrading HDRP to `5.16.1-preview`
|
||||
- Adding keyboard event to reset camera position
|
||||
|
||||
## [1.0.0-preview] - 2019-08-22
|
||||
|
||||
### Added
|
||||
|
||||
- Eliminates the necessity of user interaction when installing an HDRP sample
|
||||
- Adding a check to automatically set HDRP render pipeline settings on initial setup
|
||||
|
||||
### Changed
|
||||
|
||||
- Refactor `RenderStreamingHDRPAutomator` to use json instead of ScriptableObject
|
||||
|
||||
### Fixed
|
||||
|
||||
- Blit Render Texture using customRender instead of `Rendering.RenderPipeline.BeginCameraRendering`
|
||||
|
||||
## [0.2.0-preview] - 2019-07-30
|
||||
|
||||
### Changed
|
||||
|
||||
- Removed the direct dependency to HDRP package
|
||||
|
||||
### Added
|
||||
|
||||
- Added a unitypackage file containing an HDRP sample, and a menu editor to install it
|
||||
|
||||
## [0.1.0-preview] - 2019-07-22
|
||||
|
||||
- Initial Release
|
||||
|
||||
### Added
|
||||
|
||||
- Added a sample project which uses RenderStreaming tech.
|
||||
7
Packages/com.unity.renderstreaming@3.1.0-exp.9/CHANGELOG.md.meta
vendored
Normal file
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d96f60a550ceea4288a6d3cb5e48592
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
29
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/TableOfContents.md
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
* [About Unity Render Streaming](index.md)
|
||||
* [Overview](overview.md)
|
||||
* [Tutorial](tutorial.md)
|
||||
* [Developing a streaming application](dev-streaming-app-intro.md)
|
||||
* [Creating The Scene](create-scene.md)
|
||||
* [Setting Up Device Input](control-camera.md)
|
||||
* [Render Streaming Settings](settings.md)
|
||||
* [Render Streaming Wizard](wizard.md)
|
||||
* [Web Application](webapp.md)
|
||||
* [Configure Self-Signed Credentials for https](https.md)
|
||||
* [Setting for TURN Server](turnserver.md)
|
||||
* [About Signaling Type](signaling-type.md)
|
||||
* [Customize Web Application](customize-webapp.md)
|
||||
* [Components Settings](components.md)
|
||||
* [Streaming Management Component](streaming-management.md)
|
||||
* [Video Streaming Component](video-streaming.md)
|
||||
* [Audio Streaming Component](audio-streaming.md)
|
||||
* [Data Streaming Component](data-streaming.md)
|
||||
* [Command-line option](commandline-option.md)
|
||||
* [Samples](samples.md)
|
||||
* [Receiver](sample-receiver.md)
|
||||
* [Broadcast](sample-broadcast.md)
|
||||
* [Bidirectional](sample-bidirectional.md)
|
||||
* [RenderPipeline](sample-renderpipeline.md)
|
||||
* [AR Foundation](sample-arfoundation.md)
|
||||
* [Gyroscope](sample-gyroscope.md)
|
||||
* [Web Browser Input](sample-browserinput.md)
|
||||
* [Multiplay](sample-multiplay.md)
|
||||
* [FAQ](faq.md)
|
||||
37
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/audio-streaming.md
vendored
Normal file
@@ -0,0 +1,37 @@
|
||||
# Audio Streaming Component
|
||||
|
||||
[`AudioStreamSender`](../api/Unity.RenderStreaming.AudioStreamSender.html) class and [`AudioStreamReceiver`]((../api/Unity.RenderStreaming.AudioStreamReceiver.html)) class are the base classes for sending and receiving audio. Components are provided for the sender and receiver.
|
||||
|
||||
## [`AudioStreamSender`](../api/Unity.RenderStreaming.AudioStreamSender.html) component reference
|
||||
|
||||
This component streams the audio rendering results from [`AudioListener`](https://docs.unity3d.com/ScriptReference/AudioListener.html) component or [`AudioSource`](https://docs.unity3d.com/ScriptReference/AudioSource.html) component.
|
||||
|
||||

|
||||
|
||||
### Properties
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------- | ----------- | ------- |
|
||||
| **Audio Source Type** | Choose the type of source for your audio streaming. <br/> - *Audio Listener* <br/> - *Audio Source* <br/> - *Microphone* | *Audio Listener* |
|
||||
| *Audio Listener* | [`Audio Listener`](https://docs.unity3d.com/ScriptReference/AudioSource.html) instance for sending audio | |
|
||||
| *Audio Source* | [`Audio Source`](https://docs.unity3d.com/ScriptReference/AudioSource.html) instance for sending audio | |
|
||||
| *Microphone Device Index* | The index of the microphone input device to be used. See [Microphone.devices](https://docs.unity3d.com/ScriptReference/Microphone-devices.html). | 0 |
|
||||
| *Auto Request User Authorization* | Whether request permission to use microphone. You don't need to enable it if you call [Application.RequestUserAuthorization](https://docs.unity3d.com/ScriptReference/Application.RequestUserAuthorization.html) yourself. | Enabled |
|
||||
| **Audio Codec** | *Default* option means trying to use all available codecs for negotiating other peers. | Default |
|
||||
| *Loopback* | The sending audio is also played on sender side. | Disabled |
|
||||
| **Bitrate (kbits/sec)** | The bitrate of the audio streaming. | |
|
||||
| *Min* | The minimum value of the bitrate. | 0 |
|
||||
| *Max* | The maximum value of the bitrate. | 1000 |
|
||||
|
||||
## [`AudioStreamReceiver`](../api/Unity.RenderStreaming.AudioStreamReceiver.html) component reference
|
||||
|
||||
The components receive audio track stream and rendering to [`AudioSource`](https://docs.unity3d.com/ScriptReference/AudioSource.html).
|
||||
|
||||

|
||||
|
||||
### Properties
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------- | ----------- | ------- |
|
||||
| **Target Audio Source** | [`AudioSource`](https://docs.unity3d.com/ScriptReference/AudioSource.html) instance for sending audio | None |
|
||||
| **Audio Codec** | *Default* option means trying to use all available codecs for negotiating other peers. | Default |
|
||||
156
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/browser-input.md
vendored
Normal file
@@ -0,0 +1,156 @@
|
||||
# Browser Input Process
|
||||
|
||||
Unity Render Streaming supports user input from the browser, making it possible to replicate operating Unity in the browser.
|
||||
|
||||
## Input devices
|
||||
|
||||
Browser input is supported for the following devices. Multiple devices can be used simultaneously.
|
||||
|
||||
- Mouse
|
||||
- Keyboard
|
||||
- Touch
|
||||
- Gamepad
|
||||
|
||||
The browser sends byte sequences, and Unity uses the `New Input System`.
|
||||
|
||||
## Data Format
|
||||
|
||||
### Mouse Events
|
||||
|
||||
|index|value|size|
|
||||
|-------|-----|-----|
|
||||
|0|0|1|
|
||||
|1|position x|2|
|
||||
|3|position y|2|
|
||||
|5|button|1|
|
||||
|
||||
### Keyboard Events
|
||||
|
||||
|index|value|size|
|
||||
|-------|-----|-----|
|
||||
|0|1|1|
|
||||
|1|key code|1|
|
||||
|
||||
### Touch Events
|
||||
|
||||
The data size for touch events varies depending on the number of detected fingers. The `length` value of the first byte corresponds to the number of detected fingers.
|
||||
|
||||
|index|value|size|
|
||||
|-------|-----|-----|
|
||||
|0|2|1|
|
||||
|1|phase|1|
|
||||
|2|length|1|
|
||||
|3|position x|2|
|
||||
|5|position y|2|
|
||||
|7|force|4|
|
||||
|
||||
### Gamepad Events
|
||||
|
||||
There are four types of gamepad events. Each type has a different data format.
|
||||
|
||||
| event name | value |
|
||||
|-------|-----|
|
||||
| button down | 0 |
|
||||
| button up | 1 |
|
||||
| button pressed | 2 |
|
||||
| axis | 3 |
|
||||
|
||||
For `button down` 、 `button up` 、 `button pressed`:
|
||||
|
||||
|index|value|size|
|
||||
|-------|-----|-----|
|
||||
|0|5|1|
|
||||
|1|event type|1|
|
||||
|2|button index|1|
|
||||
|3|value|8|
|
||||
|
||||
For `axis`:
|
||||
|
||||
|index|value|size|
|
||||
|-----|-----|----|
|
||||
|0|5|1|
|
||||
|1|event type|1|
|
||||
|2|button index|1|
|
||||
|3|axis x|8|
|
||||
|11|axis y|8|
|
||||
|
||||
## Multi-user
|
||||
|
||||
The `RemoteInputReceiver` class can be used to control inputs from multiple users. Call `RemoteInputReceiver.Create` to create a `RemoteInput` instance. Next the message from the `RTCDataChannel`is passed to the `RemoteInput.ProcessInput` method.
|
||||
|
||||
```CSharp
|
||||
// Create a RemoteInput instance
|
||||
RemoteInput input = RemoteInputReceiver.Create();
|
||||
channel.OnMessage = bytes => input.ProcessInput(bytes);
|
||||
```
|
||||
|
||||
Get the input device from the `RemoteInput` instance and reference the device value to control the input. Below is an example of using keyboard input.
|
||||
|
||||
```CSharp
|
||||
// Get the keyboard device, process on w key press
|
||||
Keyboard keyboard = input.RemoteKeyboard;
|
||||
if(keyboard.wKey.isPressed)
|
||||
{
|
||||
// ...
|
||||
}
|
||||
```
|
||||
|
||||
## Using Unity UI
|
||||
|
||||
If you use UnityUI, press `Replace with InputSystemUIInputModule` in the `StandaloneInputModule` that is attached to the same object as the `EventSystem` component.
|
||||
|
||||

|
||||
|
||||
You can control the UnityUI placed on the game scene from browser.
|
||||
|
||||
> [!NOTE]
|
||||
> If the Unity application is in Background, even if the `RunInBackground` checkbox is On, you can not control the UnityUI from browser. This issue will be fixed in `com.unity.inputsystem`.
|
||||
|
||||
|
||||
|
||||
### Workaround for using UnityUI on RunInBackground
|
||||
|
||||
If use UnityUI in the background, follow the steps below.
|
||||
|
||||
1. Update `com.unity.inputsystem` to `1.1.0-preview.2` on PackageManager.
|
||||
|
||||
2. In **Project Setting > Player > Other Setting**, check `Allow 'unsafe' code`.
|
||||
|
||||
3. Replace `EventSystem` in the Scene with the following component.
|
||||
|
||||
```CSharp
|
||||
using UnityEngine.EventSystems;
|
||||
using UnityEngine.InputSystem;
|
||||
using UnityEngine.InputSystem.LowLevel;
|
||||
|
||||
public class CustomEventSystem : EventSystem
|
||||
{
|
||||
protected override void Awake()
|
||||
{
|
||||
base.Awake();
|
||||
unsafe
|
||||
{
|
||||
InputSystem.onDeviceCommand += InputSystemOnDeviceCommand;
|
||||
}
|
||||
}
|
||||
|
||||
private static unsafe long? InputSystemOnDeviceCommand(InputDevice device, InputDeviceCommand* command)
|
||||
{
|
||||
if (command->type != QueryCanRunInBackground.Type)
|
||||
{
|
||||
// return null is skip this evaluation
|
||||
return null;
|
||||
}
|
||||
|
||||
((QueryCanRunInBackground*)command)->canRunInBackground = true;
|
||||
return InputDeviceCommand.GenericSuccess;
|
||||
}
|
||||
|
||||
protected override void OnApplicationFocus(bool hasFocus)
|
||||
{
|
||||
//Do not change focus flag on eventsystem
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
4. (Optional) For UnityEditor, Open **Window > Analysis > Input Debugger** and turn on `Lock Input to Game View` in Options.
|
||||
73
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/commandline-option.md
vendored
Normal file
@@ -0,0 +1,73 @@
|
||||
# Command line arguments
|
||||
|
||||
Unity Render Streaming supports configuration changes via command line arguments. you can change settings to match the deployment environments. Command line arguments work with Windows, macOS, and Linux runtime applications. Mobile platforms aren't supported.
|
||||
|
||||
> [!WARNING]
|
||||
> **-batchmode** and **-nographics** options don't work with Unity Render Streaming.
|
||||
|
||||
Command line arguments are evaluated when initializing the [**SignalingManager**](streaming-management.md) component. When command line arguments are evaluated in the **SignalingManager** component, it overrides the settings specified in the [Settings Window](settings.md). If you wish to ignore the command line options, specify **Evaluate command line arguments** off in the SignalingManager inspector. If a command line arguments contain invalid values, the contents of the configuration window are evaluated, instead of the arguments of the command line.
|
||||
|
||||
Use a command line with the following arguments to start your standalone app.
|
||||
|
||||
| Argument | Description |
|
||||
| --- | --- |
|
||||
| `signalingType <value>` | Specify the signaling type. **websocket** or **http**. |
|
||||
| `signalingUrl <value>` | Specify the URL of signaling server. |
|
||||
| `iceServerUrl <value>` | Set the URL of STUN/TURN server. |
|
||||
| `iceServerUsername <value>` | Specify the user name of the TURN server. |
|
||||
| `iceServerCredential <value>` | Specify the password of the TURN server. |
|
||||
| `iceServerCredentialType <value>` | Specify the credential type for the TURN server. **password** or **oauth**. |
|
||||
| `pollingInterval <value>` | Specify the polling interval in milliseconds to the signaling server. This value is used when using **http** for the signaling type. |
|
||||
| `importJson <path>` | Specify the path of the JSON file. |
|
||||
|
||||
## Import JSON
|
||||
|
||||
You can change the configuration via the JSON file when using **-importJson** option in command line. The JSON file must be written in the following format:
|
||||
|
||||
```javascript
|
||||
{
|
||||
"signalingType": "websocket",
|
||||
"signalingUrl": "ws://192.168.11.11",
|
||||
"iceServers": [{
|
||||
"urls": [
|
||||
"stun:stun.l.google.com:19302"
|
||||
],
|
||||
"username": "user",
|
||||
"credential": "pass",
|
||||
"credentialType": "password"
|
||||
}],
|
||||
"pollingInterval": "5000"
|
||||
}
|
||||
```
|
||||
|
||||
## Command line examples
|
||||
|
||||
Change the signaling type to **http**:
|
||||
|
||||
```
|
||||
RenderStreaming.exe -signalingType http
|
||||
```
|
||||
|
||||
Change the URL of the signaling server:
|
||||
|
||||
```
|
||||
RenderStreaming.exe -signalingUrl http://192.168.10.1
|
||||
```
|
||||
|
||||
Specify multiple URLs of STAN servers:
|
||||
|
||||
```
|
||||
RenderStreaming.exe -iceServerUrl stun:stun.l.google.com:19302 -iceServerUrl stun:stun.l.google.com:19303
|
||||
```
|
||||
|
||||
Specify the URL, username, and password of the TURN server:
|
||||
|
||||
```
|
||||
RenderStreaming.exe -iceServerUrl turn:192.168.10.10:3478?transport=udp -iceServerUsername username -iceServerCredentialType password -iceServerCredential pass
|
||||
```
|
||||
|
||||
Specify the path of the JSON file:
|
||||
|
||||
```
|
||||
RenderStreaming.exe -importJson config.json
|
||||
```
|
||||
8
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/components.md
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
# Components Settings
|
||||
|
||||
This package provides some useful components to make the streaming feature to the application made with Unity.
|
||||
|
||||
- [Streaming Management Component](streaming-management.md)
|
||||
- [Video Streaming Component](video-streaming.md)
|
||||
- [Audio Streaming Component](audio-streaming.md)
|
||||
- [Data Streaming Component](data-streaming.md)
|
||||
91
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/control-camera.md
vendored
Normal file
@@ -0,0 +1,91 @@
|
||||
# Setting Up Device Input
|
||||
|
||||
To control the camera on the remote PC, we need to link the input events on web browsers to the actions in Unity. **Input System** makes it easy to implement the input processing.
|
||||
|
||||
## Check settings of Input System
|
||||
|
||||
First, please check the [Wizard window](wizard.md) about the Input System settings.
|
||||
|
||||
## Adding components for input processing
|
||||
|
||||
Open the Unity scene which created in [the previous page](create-camera.md), and select **Main Camera** in the Hierarchy window. Add the **Input Receiver** component in the Inspector window.
|
||||
|
||||

|
||||
|
||||
The initial condition of the inspector of **Input Receiver** is below.
|
||||
|
||||

|
||||
|
||||
Add the **Input Receiver** component to the **Broadcast** component property.
|
||||
|
||||

|
||||
|
||||
## Setting Input Actions
|
||||
|
||||
We will use the [**Input Actions**](https://docs.unity3d.com/Packages/com.unity.inputsystem@1.0/manual/Actions.html) feature of the Input System. Input Actions is a mechanism for mapping various inputs to Unity actions, and it provides editing tools that make it easy for anyone to use. We will use Input Actions to define mouse actions.
|
||||
|
||||
Right-click in the project window, and then click **Create > Input Actions**.
|
||||
|
||||

|
||||
|
||||
The asset will be added to the project window and rename to **Control**. Double-click on the **Control** asset in the project window, and the **Action editor** will appear.
|
||||
|
||||

|
||||
|
||||
Click the **+** button in **Actions Maps** to add an item.
|
||||
|
||||

|
||||
|
||||
Rename the **Actions** item to `Look`.
|
||||
|
||||

|
||||
|
||||
Select the item and change **Action Type** to `Value`, and **Control Type** to `Vector2`.
|
||||
|
||||

|
||||
|
||||
Next, select the **\<No Binding\>** item and add **Mouse > Delta** to the **Path** of **Binding**.
|
||||
|
||||

|
||||
|
||||
The result will look like this. Note that the last step is to press the **Save Asset** button to save your edits.
|
||||
|
||||

|
||||
|
||||
## Setting [`InputReceiver`](../api/Unity.RenderStreaming.InputReceiver.html) component
|
||||
|
||||
Drag the **Control** asset to the **Input Actions** property of the [`InputReceiver`](../api/Unity.RenderStreaming.InputReceiver.html) component.
|
||||
|
||||

|
||||
|
||||
Add the code to control the rotation of the camera. Move to the Inspector window, click **Add component** button and select **New Script** Script to create the asset. Change the asset name to `PlayerControler`.
|
||||
|
||||

|
||||
|
||||
The contents of the script will be as follows.
|
||||
|
||||
```csharp
|
||||
using UnityEngine;
|
||||
using UnityEngine.InputSystem;
|
||||
|
||||
public class PlayerController : MonoBehaviour
|
||||
{
|
||||
public void Look(InputAction.CallbackContext value)
|
||||
{
|
||||
Vector2 input = value.ReadValue<Vector2>();
|
||||
transform.eulerAngles += new Vector3(-input.y, input.x, 0);
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Once you have copied the script and saved the file, assign `PlayerController.Look` to the [`InputReceiver`](../api/Unity.RenderStreaming.InputReceiver.html) component's **Look** event.
|
||||
|
||||

|
||||
|
||||
## Checking on browsers
|
||||
|
||||
The mouse operation in the browser should be reflected in the rotation of the camera. If the camera is not moved, please check the settings on the [Wizard](wizard.md) window.
|
||||
|
||||
## Next step
|
||||
|
||||
We were able to incorporate the input processing using the Input Actions feature. If you would like to learn more about the features of Unity Render Streaming, please see the [Sample page](samples.md). Also, check out [Customizing your web application](customize-webapp.md) for information on how to modify the web user interface.
|
||||
57
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/create-scene.md
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
# Creating The Scene
|
||||
|
||||
This tutorial explains how to edit an empty scene in Unity Editor and display the image rendered from the camera to the browser.
|
||||
|
||||
## Changing Project Settings
|
||||
|
||||
The procedure described in this page assumes that the [**Automatic Streaming**](settings.md##general-settings) feature is not used. Please turn the flag off following steps.
|
||||
|
||||
1: Open the **Project Settings** window.
|
||||
|
||||
2: Select **Render Streaming** tab.
|
||||
|
||||
3: Select **Create New Settings Asset**.
|
||||
|
||||
4: Save the asset with any name.
|
||||
|
||||
5: Disable **Automatic Streaming**.
|
||||
|
||||

|
||||
|
||||
## Setting component
|
||||
|
||||
If Unity version is 2020 or later, Create a new empty scene. Select **File > New Scene** from the menu to open the dialog and select **Basic (Built-in)**.
|
||||
|
||||

|
||||
|
||||
Select the **Main Camera** object in the Hierarchy window, and add the **Signaling Manager** component in the Inspector window.
|
||||
|
||||

|
||||
|
||||
Next, we will add the **Broadcast** component to the **Main Camera** object. this component deliver the stream to multiple peers.
|
||||
|
||||

|
||||
|
||||
Assign the **Broadcast** component to the `Handler` property of the **Render Streaming** component.
|
||||
|
||||

|
||||
|
||||
Add a [**Video Stream Sender**](video-streaming.html#videostreamsenderapiunityrenderstreamingvideostreamsenderhtml-component) component to the **Main Camera** object. This component refers to the Camera and delivers it as a stream to other peers.
|
||||
|
||||

|
||||
|
||||
Assign the [**Video Stream Sender**](video-streaming.html#videostreamsenderapiunityrenderstreamingvideostreamsenderhtml-component) component to the **Broadcast** component property. And set camera
|
||||
|
||||

|
||||
|
||||
### Check on browser
|
||||
|
||||
Open the **Receiver Sample** page, and you should see the video from the Unity camera appear in your browser.
|
||||
|
||||

|
||||
|
||||
## Next Step
|
||||
|
||||
You can distribute video from Unity to the browser. It's also possible to stream audio. There are several types of components that can be streamed. Check the [component page](components.md) for details.
|
||||
|
||||
Next, please try to control the camera from the browser. Please go to [the next page](control-camera.md).
|
||||
67
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/customize-webapp.md
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
# Customize web application
|
||||
|
||||
## Implementing the Web Application
|
||||
|
||||
The web application source code can be found in the `WebApp` folder on [GitHub](https://github.com/Unity-Technologies/UnityRenderStreaming). You can clone the repository using the command below:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Unity-Technologies/UnityRenderStreaming
|
||||
```
|
||||
|
||||
The directory structure under the WebApp folder is given below:
|
||||
|
||||
```shell
|
||||
WebApp
|
||||
├─client // web client
|
||||
│ ├─public
|
||||
│ │ ├─bidirectional // bidirectional page
|
||||
│ │ ├─css
|
||||
│ │ ├─images
|
||||
│ │ ├─js
|
||||
│ │ ├─multiplay // multiplay page
|
||||
│ │ ├─receiver // receiver page
|
||||
│ │ ├─videoplayer // videoplayer page
|
||||
│ │ └─index.html
|
||||
│ ├─src // common component for web client
|
||||
│ └─test // test for common component
|
||||
├─src // web server
|
||||
│ └─class
|
||||
└─test
|
||||
```
|
||||
|
||||
If you want to change the user interface on the browser, you need to customize scripts in the `client/public` folder.
|
||||
|
||||
While you want to change the signaling process, please check under the `src` folder. This source code is written `TypeScript`.
|
||||
|
||||
## Building the Web Application
|
||||
[Node.js](https://nodejs.org/) must also be installed to use the source code.
|
||||
Use the following commands to start the web app through **npm** command:
|
||||
|
||||
```shell
|
||||
cd WebApp
|
||||
npm install
|
||||
npm run build
|
||||
npm run start
|
||||
```
|
||||
|
||||
Use this command to display the help guide:
|
||||
|
||||
```shell
|
||||
npm run start -- -h
|
||||
```
|
||||
|
||||
See [the documentation](webapp.md) for details on the options.
|
||||
|
||||
This command will start the server using `ts-node`:
|
||||
|
||||
```shell
|
||||
npm run dev
|
||||
```
|
||||
|
||||
## Distributing the web application
|
||||
|
||||
When distributing the web app, the app can be converted into executable binary in order to cut the effort required to set up the environment. Use the following command:
|
||||
|
||||
```shell
|
||||
npm run pack
|
||||
```
|
||||
38
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/data-streaming.md
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
# Data Streaming Component
|
||||
|
||||
Data streaming is using [`RTCDataChannel`](https://docs.unity3d.com/Packages/com.unity.webrtc@2.4/manual/datachannel.html) of the WebRTC package internally.
|
||||
|
||||
Using the data streaming feature, Unity Render Streaming provides a component to send messages of [Input System](https://docs.unity3d.com/Packages/com.unity.inputsystem@latest).
|
||||
|
||||
## [`InputSender`](../api/Unity.RenderStreaming.InputSender.html) component reference
|
||||
|
||||
This component sends input events fired from all input devices connected machine.
|
||||
|
||||

|
||||
|
||||
### Properties
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------- | ----------- | ------- |
|
||||
| **Local** | Channel is local or remote | `False` |
|
||||
| **Label** | Channel label | Empty |
|
||||
|
||||
## [`InputReceiver`](../api/Unity.RenderStreaming.InputReceiver.html) component reference
|
||||
|
||||
This component receives input events from Unity.
|
||||
|
||||

|
||||
|
||||
### Properties
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------- | ----------- | ------- |
|
||||
| **Local** | Channel is local or remote. | `False` |
|
||||
| **Label** | Channel label. | Empty |
|
||||
| **Actions** | The set of [**Input Actions**](https://docs.unity3d.com/Packages/com.unity.inputsystem@1.3/manual/Actions.html) associated with the player. To receive input, each player must have an associated set of Actions. See documentation on Actions for details. | `None` |
|
||||
| *Default Map* | Which Action Map in `Actions` to enable by default. If set to `None`, then the player starts with no Actions being enabled. | `None` |
|
||||
| **Events** | Uses a separate UnityEvent for each individual type of message. | Empty |
|
||||
|
||||
|
||||
|
||||
|
||||
11
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/dev-streaming-app-intro.md
vendored
Normal file
@@ -0,0 +1,11 @@
|
||||
# Developing a streaming application
|
||||
|
||||
This section will walk you through the steps to create a simple streaming application from an empty Unity project.
|
||||
|
||||
## Creating The Scene
|
||||
|
||||
To open the Unity editor and create a scene for streaming, see [Creating The Scene](create-scene.md).
|
||||
|
||||
## Controlling The Camera
|
||||
|
||||
Check out the [Setting Up Device Input](control-camera.md) page for more information.
|
||||
76
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/faq.md
vendored
Normal file
@@ -0,0 +1,76 @@
|
||||
# FAQ
|
||||
|
||||
## Errors
|
||||
|
||||
### Video stream not showing in browser
|
||||
|
||||
The browser version might be too old. Make sure that the latest version is installed. Or firewall settings can also cause the issue, please try to turn it off once.
|
||||
|
||||
Please check if there is any error log on the browser console and Unity debug console.
|
||||
|
||||
### Web app doesn't run on Safari browser
|
||||
|
||||
Check the web server's [startup options](webapp.md). In **Safari** and **iOS Safari**, WebRTC features cannot be used with **http**. Instead, **https** must be used.
|
||||
Also, **iOS Safari** does not support WebSocket signaling if the server uses a self-signed certificate. Please check [here](signaling-type.md) for more information.
|
||||
|
||||
### Unity's initial startup fails
|
||||
|
||||
Confirm you're using a `Graphics API` and compare [requirements](https://docs.unity3d.com/Packages/com.unity.webrtc@latest) of `com.unity.webrtc`.
|
||||
If you use the hardware encoder, Make sure you're using a graphics card that supports **Nvcodec**. Also confirm that the latest graphics driver version is installed. See also: `com.unity.webrtc` documentation.
|
||||
|
||||
### Web server fails to run
|
||||
|
||||
Make sure the port isn't being used by another service.
|
||||
|
||||
### Unity UI can't be operated through a browser.
|
||||
|
||||
It is only possible to operate when the focus is on the running application.
|
||||
On [This page](browser-input.md#using-unity-ui), you can see more info.
|
||||
|
||||
## Issues with the environment
|
||||
|
||||
### Which versions of Unity can be used?
|
||||
|
||||
**Unity 2020.3** or higher.
|
||||
|
||||
### Which OS can be used?
|
||||
|
||||
**Windows10 x64**, **Linux x64**, **macOS** and **iOS** **Android**.
|
||||
|
||||
**UWP** and **WebGL** are not supported.
|
||||
|
||||
### Are there any hardware constraints?
|
||||
|
||||
On Windows and Linux, the hardware codec uses an NVIDIA graphics card. See the [NVIDIA site](https://developer.nvidia.com/video-encode-decode-gpu-support-matrix) for information on graphics cards that support NVCodec.
|
||||
|
||||
### Which browsers are supported?
|
||||
|
||||
See [this page](https://caniuse.com/#search=webrtc).
|
||||
|
||||
## Questions about features
|
||||
|
||||
### Is it possible to broadcast to multiple devices?
|
||||
|
||||
Yes. However, the more devices being transmitted to, the greater the burden on the transmitting device. For example, on a new desktop PC it's possible to transmit 720p video to about 5 devices, but anything more than that will require using an [SFU](https://webrtcglossary.com/sfu/) broadcast server.
|
||||
|
||||
### Is simulcast supported?
|
||||
|
||||
Currently, we do not support simulcast.
|
||||
|
||||
### Can you broadcast the feed from multiple cameras?
|
||||
|
||||
Yes. If you use the hardware encoder, make sure to check the limitation of the number of cameras used at the same time. See the NVIDIA [document](https://developer.nvidia.com/video-encode-decode-gpu-support-matrix).
|
||||
|
||||
### How do you increase the video quality?
|
||||
|
||||
You can set the resolution of the frame on the inspector window of [video stream components](video-streaming.md). Keep in mind that video quality depends on the quality of the network.
|
||||
|
||||
## Questions about support
|
||||
|
||||
### Technical support from Unity can be gotten?
|
||||
|
||||
It is available to ask questions on the page of [Unity forum](https://forum.unity.com/forums/unity-render-streaming.413). Also please report on [Github Issues](https://github.com/Unity-Technologies/UnityRenderStreaming/issues) for reporting bugs or requesting features.
|
||||
|
||||
### Is it available to deploy Unity to cloud service like GCP as a rendering server?
|
||||
|
||||
Unity is not supported using for rendering server.
|
||||
13
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/filter.yml
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
apiRules:
|
||||
- include:
|
||||
uidRegex: Unity.RenderStreaming
|
||||
type: Namespace
|
||||
- exclude:
|
||||
uidRegex: ^System\.Object\..*$
|
||||
type: Method
|
||||
- exclude:
|
||||
uidRegex: ^System\.ValueType\..*$
|
||||
type: Method
|
||||
- exclude:
|
||||
hasAttribute:
|
||||
uid: System.ObsoleteAttribute
|
||||
216
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/https.md
vendored
Normal file
@@ -0,0 +1,216 @@
|
||||
# Configure Self-Signed Credentials for https
|
||||
|
||||
## Prerequisites
|
||||
|
||||
### Windows
|
||||
|
||||
This document is written assuming that the OS is Windows.
|
||||
|
||||
### Chocolatey
|
||||
|
||||
**Chocolatey** is a package manager for Windows (like apt-get or yum but for Windows).
|
||||
Link to install Chocolatey: [https://chocolatey.org/install](https://chocolatey.org/install)
|
||||
|
||||
### OpenSSL
|
||||
|
||||
OpenSSL is a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols.
|
||||
Installation:
|
||||
|
||||
```terminal
|
||||
choco install openssl.light
|
||||
```
|
||||
|
||||
## Step 1: Create a Private Key
|
||||
|
||||
Run the command:
|
||||
|
||||
```terminal
|
||||
"C:\Program Files\OpenSSL\bin\openssl.exe" genrsa -des3 -out rootSSL.key 2048
|
||||
```
|
||||
|
||||
Enter a Password:
|
||||
|
||||
```terminal
|
||||
Enter pass phrase for rootSSL.key:
|
||||
```
|
||||
|
||||
Verify the Password:
|
||||
|
||||
```terminal
|
||||
Verifying - Enter pass phrase for rootSSL.key:
|
||||
```
|
||||
|
||||
## Step 2: Create a Certificate File
|
||||
|
||||
Run the command:
|
||||
|
||||
```terminal
|
||||
"C:\Program Files\OpenSSL\bin\openssl.exe" req -x509 -new -nodes -key rootSSL.key -sha256 -days 1024 -out rootSSL.pem
|
||||
```
|
||||
|
||||
Enter the Password:
|
||||
|
||||
```terminal
|
||||
Enter pass phrase for rootSSL.key:
|
||||
```
|
||||
|
||||
Enter your Country's 2-Letter Code:
|
||||
|
||||
```terminal
|
||||
Country Name (2 letter code) [AU]:CA
|
||||
```
|
||||
|
||||
Enter the name of your state/province:
|
||||
|
||||
```terminal
|
||||
State or Province Name (full name) [Some-State]:Quebec
|
||||
```
|
||||
|
||||
Enter the name of your locality (city):
|
||||
|
||||
```terminal
|
||||
Locality Name (eg, city) []:montreal
|
||||
```
|
||||
|
||||
Enter the name of your organization:
|
||||
|
||||
```terminal
|
||||
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Unity
|
||||
```
|
||||
|
||||
Enter the name of your business unit within the organization:
|
||||
|
||||
```terminal
|
||||
Organizational Unit Name (eg, section) []:Verticals
|
||||
```
|
||||
|
||||
Enter your computer's `fully qualified domain name` or your name:
|
||||
|
||||
```terminal
|
||||
Common Name (e.g. server FQDN or YOUR name) []:Tony
|
||||
```
|
||||
|
||||
Enter your e-mail address:
|
||||
|
||||
```terminal
|
||||
Email Address []:anthonyma@unity3d.com
|
||||
```
|
||||
|
||||
## Step 3: Get Windows to Trust the Certificate Authority (CA)
|
||||
|
||||
1. Search for and run `Microsoft Management Console (mmc.exe)`
|
||||
|
||||

|
||||
|
||||
2. Go to `File > Add/Remove Snap-in...`
|
||||
|
||||

|
||||
|
||||
3. Click on `Certificates` and then `Add >`
|
||||
|
||||

|
||||
|
||||
4. Select `Computer Account` and then `Next >`
|
||||
|
||||

|
||||
|
||||
5. Select `Local computer (the computer this console is running on)` and then `Finish`
|
||||
|
||||

|
||||
|
||||
6. Select `OK` in the `Add or Remove Snap-ins` window
|
||||
|
||||

|
||||
|
||||
7. Expand `Console Root > Certificates (Local Computer)` in the `Console1 - [Console Root]` window
|
||||
|
||||

|
||||
|
||||
8. Select `Trusted Root Certification Authorities` then `Right-Click` on `Certificates` and select `All Tasks > Import...`
|
||||
|
||||

|
||||
|
||||
9. Select `Next` in the `Certificate Import Wizard` window
|
||||
|
||||

|
||||
|
||||
10. Browse to the location of the `rootSSL.pem` file created in **Step 2** and then select `Next`.
|
||||
|
||||

|
||||
|
||||
11. Select `Place all certificates in the following store` and ensure that `Trusted Root Certification Authorities` is the value in the `Certificate store:` field, and then select `Next`.
|
||||
|
||||

|
||||
|
||||
12. Select `Finish`.
|
||||
|
||||

|
||||
|
||||
## Step 4: Create a Local Domain Site
|
||||
|
||||
1. Add `127.0.0.1 client-1.local` to your `C:\Windows\System32\drivers\etc\hosts` file.
|
||||
|
||||
```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
|
||||
|
||||
```
|
||||
|
||||
## Step 5: Create a Private Key (`client-1.local.key`) and Certificate Request (`client-1.local.csr`) for the New Domain
|
||||
|
||||
Execute this command ensuring the following fields are the same as the ones you used in **Step 1: Create a Private Key**:
|
||||
* C=CA (Country)
|
||||
* ST=Quebec (State)
|
||||
* L=montreal (Locale)
|
||||
* O=Unity (Organization)
|
||||
* OU=Verticals (Business Unit)
|
||||
* CN=Tony (Name)
|
||||
* email<span>Address=anthonyma@unity3d.</span>com (E-Mail)
|
||||
|
||||
```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"
|
||||
```
|
||||
|
||||
## Step 6: Issue the New Certificate (`client-1.local.crt`)
|
||||
|
||||
Execute the command:
|
||||
|
||||
```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"
|
||||
```
|
||||
|
||||
Enter the password:
|
||||
|
||||
```terminal
|
||||
Enter pass phrase for rootSSL.key:
|
||||
```
|
||||
|
||||
## Step 7: Run the `webserver.exe`
|
||||
|
||||
Execute the command:
|
||||
|
||||
```terminal
|
||||
.\webserver.exe -s -p 443 -k client-1.local.key -c client-1.local.crt
|
||||
```
|
||||
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/access_webapp_from_browser.png
vendored
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/add_broadcast_component.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 25 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/add_inputreceiver_component.png
vendored
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 17 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/assign_broadcast_to_handler.png
vendored
Normal file
|
After Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 33 KiB |
|
After Width: | Height: | Size: 47 KiB |
|
After Width: | Height: | Size: 42 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 13 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/audiostreamsender_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/broadcast_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/broadcast_sample_signaling.png
vendored
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser.png
vendored
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
|
After Width: | Height: | Size: 337 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser_hdrpscene.png
vendored
Normal file
|
After Width: | Height: | Size: 850 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser_index_page.png
vendored
Normal file
|
After Width: | Height: | Size: 503 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser_mainpage.png
vendored
Normal file
|
After Width: | Height: | Size: 82 KiB |
|
After Width: | Height: | Size: 162 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser_videoplayer.png
vendored
Normal file
|
After Width: | Height: | Size: 219 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/browser_warning_cert.png
vendored
Normal file
|
After Width: | Height: | Size: 1.6 MiB |
|
After Width: | Height: | Size: 28 KiB |
|
After Width: | Height: | Size: 128 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/change_properties_websocket.png
vendored
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/connect_from_browser.png
vendored
Normal file
|
After Width: | Height: | Size: 534 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_01.png
vendored
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_02.png
vendored
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_03.png
vendored
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_04.png
vendored
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_05.png
vendored
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_06.png
vendored
Normal file
|
After Width: | Height: | Size: 45 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/control_camera_07.png
vendored
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/create_new_scene.png
vendored
Normal file
|
After Width: | Height: | Size: 150 KiB |
|
After Width: | Height: | Size: 11 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/datareceiver_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/datasender_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/disable_automaticstreaming.png
vendored
Normal file
|
After Width: | Height: | Size: 136 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/download_template_package.png
vendored
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/download_webapp.png
vendored
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/enable_run_in_background.png
vendored
Normal file
|
After Width: | Height: | Size: 107 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/feature_multicamera.png
vendored
Normal file
|
After Width: | Height: | Size: 1.3 MiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/furioos_signaling.png
vendored
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/furioos_stream_type.png
vendored
Normal file
|
After Width: | Height: | Size: 607 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/furioos_zip_folder.png
vendored
Normal file
|
After Width: | Height: | Size: 21 KiB |
|
After Width: | Height: | Size: 133 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/hdrp_sample.png
vendored
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/hdrp_unitypackage.png
vendored
Normal file
|
After Width: | Height: | Size: 112 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/hdrpscene.png
vendored
Normal file
|
After Width: | Height: | Size: 618 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_01.png
vendored
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_01_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_02.png
vendored
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_02_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_03.png
vendored
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_03_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_04.png
vendored
Normal file
|
After Width: | Height: | Size: 6.0 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_04_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 9.1 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_05.png
vendored
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_05_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_06.png
vendored
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_06_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 49 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_07.png
vendored
Normal file
|
After Width: | Height: | Size: 42 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_07_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_08.png
vendored
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_08_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 76 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_09.png
vendored
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_09_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_10.png
vendored
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_10_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_11.png
vendored
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_11_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_12.png
vendored
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/https_step3_12_jp.png
vendored
Normal file
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 82 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/input_standaloneinputmodule.png
vendored
Normal file
|
After Width: | Height: | Size: 28 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/input_system_backend.png
vendored
Normal file
|
After Width: | Height: | Size: 61 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/inputreceiver_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/inputsender_inspector.png
vendored
Normal file
|
After Width: | Height: | Size: 9.2 KiB |
BIN
Packages/com.unity.renderstreaming@3.1.0-exp.9/Documentation~/images/inputsystem-version.png
vendored
Normal file
|
After Width: | Height: | Size: 206 KiB |
|
After Width: | Height: | Size: 52 KiB |
|
After Width: | Height: | Size: 44 KiB |
|
After Width: | Height: | Size: 71 KiB |
|
After Width: | Height: | Size: 98 KiB |