# 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 } ```