-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathstreamcmd.lua
46 lines (38 loc) · 1.53 KB
/
streamcmd.lua
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
obs = obslua
start_script_name = ""
end_script_name = ""
function on_event(event)
if event == obs.OBS_FRONTEND_EVENT_STREAMING_STARTED then
if start_script_name ~= "start_script" then
obs.script_log(obs.LOG_INFO, "executing " .. start_script_name)
os.execute(start_script_name)
end
end
if event == obs.OBS_FRONTEND_EVENT_STREAMING_STOPPED then
if end_script_name ~= "end_script" then
obs.script_log(obs.LOG_INFO, "executing " .. end_script_name)
os.execute(end_script_name)
end
end
end
-----------------------------------------------------------------------------------------------------
function script_update(settings)
start_script_name = obs.obs_data_get_string(settings, "start_script_name")
end_script_name = obs.obs_data_get_string(settings, "end_script_name")
end
function script_description()
return "run a script / executable when the stream starts or ends"
end
function script_properties()
props = obs.obs_properties_create()
obs.obs_properties_add_path(props, "start_script_name", "Start Stream", obs.OBS_PATH_FILE, "(*.exe *.bat *.sh);;(*.*)", NULL)
obs.obs_properties_add_path(props, "end_script_name", "End Stream", obs.OBS_PATH_FILE, "(*.exe *.bat *.sh);;(*.*)", NULL)
return props
end
function script_defaults(settings)
obs.obs_data_set_default_string(settings, "start_script_name", "start_script")
obs.obs_data_set_default_string(settings, "end_script_name", "end_script")
end
function script_load(settings)
obs.obs_frontend_add_event_callback(on_event)
end