# \&controlobs

General Option! ([`&push`](/advanced-settings/setup-parameters/push.md), [`&room`](/advanced-settings/setup-parameters/room.md), [`&view`](/advanced-settings/mixer-scene-parameters/view.md), [`&scene`](/advanced-settings/mixer-scene-parameters/scene.md), [`&solo`](/advanced-settings/mixer-scene-parameters/and-solo.md))

## Aliases

* `&obscontrols`
* `&remoteobs`
* `&obsremote`
* `&obs`

## Options

Example: `&controlobs=0`

<table><thead><tr><th width="227">Value</th><th>Description</th></tr></thead><tbody><tr><td>(no value given)</td><td><a data-mention href="#remotely-control-obs-studio">#remotely-control-obs-studio</a></td></tr><tr><td><code>0</code> | <code>false</code> | <code>off</code></td><td><a href="#disabling-or-hiding-the-controls">will hide the control option on the sender side, regardless of the OBS browser source page permissions</a></td></tr></tbody></table>

## Remotely Control OBS Studio

Added the ability for VDO.Ninja to **Remotely Control OBS Studio** while streaming/directing. It may be useful for [IRL streaming](https://restream.io/blog/irl-streaming-ultimate-guide/)?

The menu button to control OBS auto-shows in the director's view or push-mode, if OBS Studio is set to give VDO.Ninja "full" permissions.

![](/files/JQFRtIZGAmx9kKIFdoK6)

The menu button can also be added manually, for even guests, using `&controlobs`. [`&obsoff`](/advanced-settings/design-parameters/and-obsoff.md) can be used to set permissions to fully off (also disables tally light and scene optimizations tho) when added to the OBS browser source link.

The OBS instance still needs [`&remote=optional-passcode-here`](/advanced-settings/settings-parameters/remote.md) added to the URL for remote commands to work. If [`&remote`](/advanced-settings/settings-parameters/remote.md) is left blank, it gives anyone permissions to control it. If a value is passed to [`&remote`](/advanced-settings/settings-parameters/remote.md), the sender needs to have a matching [`&remote` ](/advanced-settings/settings-parameters/remote.md)value or they need to manually enter the passcode in the pop up control menu.

![](/files/RQHty4SLSARODtu8YVtZ)

If the OBS browser source has its permissions set to something other than full (lower than level 5), the control menu will still show what info it has -- current scene, recording/streaming state, etc; depending on level. The lower the level, the less info is available to show. It can't remotely change anything though.

It supports multiple OBS instances and will label them according to the [`&label=xxx`](/advanced-settings/setup-parameters/label.md) value set on the scene/view link, or whatever the unique connection ID is.

## How to set it up (example)

1\. Add a browser source to OBS Studio with this URL:\
`https://vdo.ninja/?view=streamid12345&remote&controlobs`

2\. Give page permissions to the browser source (Full access to OBS) like on the image below\
![](/files/bxvDqJL6I1Dz4oEjW8bE)

3\. Open this Push Link: <https://vdo.ninja/?push=streamid12345&wc&as&controlobs&remote>

4\. Click on this button\
![](/files/ebFpO4GWY0eJjfF1VvpC)

5\. Control OBS Studio remotely via VDO.Ninja

### Disabling or hiding the controls

Setting `&controlobs=0` or to `false`/`off`, will hide the control option on the sender side, regardless of the OBS browser source page permissions.

As well, setting the OBS browser source to low or no page permissions will also not show the controls, which is how it is by default. You can force show the controls of course, but they won't work if the browser source doesn't have the right permissions.

## Related

{% content-ref url="/pages/-MZX0aUm-36CtnkhYT1y" %}
[\&remote](/advanced-settings/settings-parameters/remote.md)
{% endcontent-ref %}

{% content-ref url="/pages/QMRKMsVJuYFuWjb04E4g" %}
[\&cutscene](/advanced-settings/settings-parameters/and-cutscene.md)
{% endcontent-ref %}

{% content-ref url="/pages/-MZWysgysyBTBJNe8mPp" %}
[\&obsoff](/advanced-settings/design-parameters/and-obsoff.md)
{% endcontent-ref %}

{% content-ref url="/pages/lYvQRM2zCOtBnY6C9R0h" %}
[\&allowedscenes](/advanced-settings/settings-parameters/and-allowedscenes.md)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.vdo.ninja/advanced-settings/settings-parameters/and-controlobs.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
