> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # startScreenShare > startScreenShare method for the RoomSession class. ### startScreenShare * **startScreenShare**(`opts`): `Promise` - See [RoomSessionScreenShare documentation](/docs/browser-sdk/v3/js/reference/video/room-session-screen-share) for more details. Adds a screen sharing instance to the room. You can create multiple screen sharing instances and add all of them to the room. #### Parameters **`opts`** `object` Object containing the parameters of the method. --- **`audio`** `boolean | MediaTrackConstraints` Audio constraints to use when joining the room. Default: `false`. --- **`autoJoin`** `boolean` Whether the screen share object should automatically join the room. Default: `true`. --- **`layout`** `string` Layout to switch to as soon as the screen share joins the room. --- **`positions`** `VideoPositions` Layout positions to assign as soon as the screen share joins the room. --- **`video`** `boolean | MediaTrackConstraints` Video constraints to use when joining the room. Default: `true`. --- #### Returns `Promise` - See [RoomSessionScreenShare documentation](/docs/browser-sdk/v3/js/reference/video/room-session-screen-share) for more details. #### Permissions * `room.self.screenshare` You need to specify the permissions when [creating the Video Room Token](/docs/apis/rest/video/room-tokens/create-room-token) on the server side. #### Examples Sharing the screen together with the associated audio: ```js await roomSession.startScreenShare({ audio: true, video: true }); ``` Sharing the screen while changing layout: ```js await roomSession.startScreenShare({ audio: true, video: true, layout: "screen-share", positions: { self: "reserved-1", }, }); ``` > startScreenShare method for the RoomSession class.