File: README.md

package info (click to toggle)
obs-command-source 0.5.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 284 kB
  • sloc: ansic: 400; python: 80; sh: 75; makefile: 21; cpp: 16
file content (63 lines) | stat: -rw-r--r-- 2,232 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
Dummy Source to Execute Command
===============================

This plugin provides a dummy source to execute arbitrary commands when a scene is switched.

## Current Features

* Start a command at the following events.
  * Show (the source is shown in either preview or program)
  * Hide (the source is hidden so that no longer shown in neither preview nor program)
  * Activate (the source goes to the program)
  * Deactivate (the source goes from the program)
  * Show in preview (the source goes to the preview)
  * Hide from preview (the source goes from the preview)
* Optionally, kill the created process at these conditions. This feature is not available for Windows as of now.
  * When hiding, kill the process created at shown.
  * When deactivating, kill the process created at activated.
  * When hiding from the preview, kill the process created at preview.

## Possible Usage

* Implementing custom tally lights.
* Control PTZ cameras by switching the scene.
  You may combine with CURL to send some commands.
* Start and stop a daemon program required for the scene.
* Trigger other operations through websocket at the event.
  A helper script is available at `tools/request-websocket.py`.
  - Start or stop your streaming and recording.
* Not limited to the above.

## Caution

Since this plugin executes arbitrary commands, users need to consider security concerns.
For example, when combining with `obs-websocket` plugin,
a remote user could change property through the websocket interface so that the arbitrary commands can be executed.

## Build

### Linux
```
git clone https://github.com/norihiro/obs-command-source.git
cd obs-command-source
mkdir build && cd build
cmake \
	-DLIBOBS_INCLUDE_DIR="<path to the libobs sub-folder in obs-studio's source code>" \
	-DCMAKE_INSTALL_PREFIX=/usr ..
make -j4
sudo make install
```

### macOS
```
git clone https://github.com/norihiro/obs-command-source.git
cd obs-command-source
mkdir build && cd build
cmake \
	-DLIBOBS_INCLUDE_DIR=<path to the libobs sub-folder in obs-studio's source code> \
	-DLIBOBS_LIB=<path to libobs.0.dylib> \
	-DOBS_FRONTEND_LIB=<path to libobs-frontend-api.dylib> \
	..
make -j4
# Copy obs-command-source.so to the obs-plugins folder
```