Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
尘离序散
obs-studio
提交
1475f756
O
obs-studio
项目概览
尘离序散
/
obs-studio
与 Fork 源项目一致
从无法访问的项目Fork
通知
30
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
obs-studio
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1475f756
编写于
8月 08, 2020
作者:
J
jp9000
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
image-source: Add proc handler calls to slideshow
Allows manipulation of the slideshow via procedure handlers.
上级
389f7d39
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
49 addition
and
0 deletion
+49
-0
plugins/image-source/obs-slideshow.c
plugins/image-source/obs-slideshow.c
+49
-0
未找到文件。
plugins/image-source/obs-slideshow.c
浏览文件 @
1475f756
...
...
@@ -527,6 +527,17 @@ static void ss_previous_slide(void *data)
do_transition
(
ss
,
false
);
}
static
void
get_state_proc
(
void
*
data
,
calldata_t
*
cd
)
{
struct
slideshow
*
ss
=
data
;
if
(
ss
->
stop
)
calldata_set_string
(
cd
,
"return"
,
"stopped"
);
else
if
(
ss
->
paused
)
calldata_set_string
(
cd
,
"return"
,
"paused"
);
else
calldata_set_string
(
cd
,
"return"
,
"playing"
);
}
static
void
play_pause_hotkey
(
void
*
data
,
obs_hotkey_id
id
,
obs_hotkey_t
*
hotkey
,
bool
pressed
)
{
...
...
@@ -539,6 +550,12 @@ static void play_pause_hotkey(void *data, obs_hotkey_id id,
ss_play_pause
(
ss
);
}
static
void
play_pause_proc
(
void
*
data
,
calldata_t
*
cd
)
{
ss_play_pause
(
data
);
UNUSED_PARAMETER
(
cd
);
}
static
void
restart_hotkey
(
void
*
data
,
obs_hotkey_id
id
,
obs_hotkey_t
*
hotkey
,
bool
pressed
)
{
...
...
@@ -551,6 +568,12 @@ static void restart_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
ss_restart
(
ss
);
}
static
void
restart_proc
(
void
*
data
,
calldata_t
*
cd
)
{
ss_restart
(
data
);
UNUSED_PARAMETER
(
cd
);
}
static
void
stop_hotkey
(
void
*
data
,
obs_hotkey_id
id
,
obs_hotkey_t
*
hotkey
,
bool
pressed
)
{
...
...
@@ -563,6 +586,12 @@ static void stop_hotkey(void *data, obs_hotkey_id id, obs_hotkey_t *hotkey,
ss_stop
(
ss
);
}
static
void
stop_proc
(
void
*
data
,
calldata_t
*
cd
)
{
ss_stop
(
data
);
UNUSED_PARAMETER
(
cd
);
}
static
void
next_slide_hotkey
(
void
*
data
,
obs_hotkey_id
id
,
obs_hotkey_t
*
hotkey
,
bool
pressed
)
{
...
...
@@ -578,6 +607,12 @@ static void next_slide_hotkey(void *data, obs_hotkey_id id,
ss_next_slide
(
ss
);
}
static
void
next_slide_proc
(
void
*
data
,
calldata_t
*
cd
)
{
ss_next_slide
(
data
);
UNUSED_PARAMETER
(
cd
);
}
static
void
previous_slide_hotkey
(
void
*
data
,
obs_hotkey_id
id
,
obs_hotkey_t
*
hotkey
,
bool
pressed
)
{
...
...
@@ -593,6 +628,12 @@ static void previous_slide_hotkey(void *data, obs_hotkey_id id,
ss_previous_slide
(
ss
);
}
static
void
previous_slide_proc
(
void
*
data
,
calldata_t
*
cd
)
{
ss_previous_slide
(
data
);
UNUSED_PARAMETER
(
cd
);
}
static
void
ss_destroy
(
void
*
data
)
{
struct
slideshow
*
ss
=
data
;
...
...
@@ -605,6 +646,7 @@ static void ss_destroy(void *data)
static
void
*
ss_create
(
obs_data_t
*
settings
,
obs_source_t
*
source
)
{
proc_handler_t
*
ph
=
obs_source_get_proc_handler
(
source
);
struct
slideshow
*
ss
=
bzalloc
(
sizeof
(
*
ss
));
ss
->
source
=
source
;
...
...
@@ -634,6 +676,13 @@ static void *ss_create(obs_data_t *settings, obs_source_t *source)
obs_module_text
(
"SlideShow.PreviousSlide"
),
previous_slide_hotkey
,
ss
);
proc_handler_add
(
ph
,
"string get_state()"
,
get_state_proc
,
ss
);
proc_handler_add
(
ph
,
"void playpause()"
,
play_pause_proc
,
ss
);
proc_handler_add
(
ph
,
"void restart()"
,
restart_proc
,
ss
);
proc_handler_add
(
ph
,
"void stop()"
,
stop_proc
,
ss
);
proc_handler_add
(
ph
,
"void next_slide()"
,
next_slide_proc
,
ss
);
proc_handler_add
(
ph
,
"void previous_slide()"
,
previous_slide_proc
,
ss
);
pthread_mutex_init_value
(
&
ss
->
mutex
);
if
(
pthread_mutex_init
(
&
ss
->
mutex
,
NULL
)
!=
0
)
goto
error
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录