45 lines
1.6 KiB
Markdown
45 lines
1.6 KiB
Markdown
# LiveKitStream
|
|
|
|
### Type
|
|
pre-defined
|
|
|
|
### 3D
|
|
A video display surface that streams live video from a LiveKit room.
|
|
The LiveKitStream is a 4m x 2,25m opaque Plane.
|
|
Its Origin is at the Bottom-Center (if controls are disabled).
|
|
Spawnpoint should be {0,1,0} so its 1m above the floor.
|
|
|
|
### Custom Args:
|
|
| Key | Type | Implemented | Description |
|
|
|---|---|---|---|
|
|
| LiveKitRoomID | string | ✔️ | Name of the LiveKit room to connect to (e.g. `"Gas Station"`) |
|
|
| widthcrop | float | ❌| Horizontal crop |
|
|
| heightcrop | float | ❌| Vertical crop |
|
|
| shader | string | ✔️ | `"unlit"` / `"lit"` / `"greenscreen"` |
|
|
| GreenScreenColor | hexColor |✔️ | Greenscreen key color |
|
|
| GreenScreenBorderSettings | int(string) | ✔️ | Greenscreen border tolerance. 0 - 1000, default 640 |
|
|
| GreenScreenColorNear | float (string)| ✔️ | Greenscreen color proximity. 0-2, default 0.3 |
|
|
| grabable | `"true"` / `"false"` | ⚠️ | Whether the item can be grabbed in-experience (common to all types) |
|
|
|
|
### Special Notes:
|
|
The LiveKit token is fetched via `LiveKitURLProvider.getToken(roomName)`.
|
|
|
|
### Example:
|
|
|
|
```json
|
|
{
|
|
"position": { "x": 5.0, "y": 1.0, "z": -6.0 },
|
|
"rotation": { "x": 0.0, "y": 0.0, "z": 0.0 },
|
|
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 },
|
|
"type": "pre-defined",
|
|
"resourcename": "LiveKitStream",
|
|
"item-custom-args": [
|
|
{ "argument": "shader", "value": "unlit"},
|
|
{ "argument": "LiveKitRoomID", "value": "Demo Room" },
|
|
{ "argument": "widthcrop", "value": "1600" },
|
|
{ "argument": "heightcrop", "value": "900" }
|
|
],
|
|
"item-custom-args-adv": null
|
|
}
|
|
```
|