Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
github_28344065
scrcpy
提交
cc48b243
S
scrcpy
项目概览
github_28344065
/
scrcpy
与 Fork 源项目一致
从无法访问的项目Fork
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
scrcpy
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
cc48b243
编写于
2月 25, 2021
作者:
R
Romain Vimont
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Simplify screen initialization
Use a single function to initialize the screen instance.
上级
597c54f0
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
22 addition
and
31 deletion
+22
-31
app/src/scrcpy.c
app/src/scrcpy.c
+2
-3
app/src/screen.c
app/src/screen.c
+17
-21
app/src/screen.h
app/src/screen.h
+3
-7
未找到文件。
app/src/scrcpy.c
浏览文件 @
cc48b243
...
...
@@ -382,8 +382,6 @@ scrcpy(const struct scrcpy_options *options) {
const
char
*
window_title
=
options
->
window_title
?
options
->
window_title
:
device_name
;
screen_init
(
&
screen
,
&
video_buffer
,
&
fps_counter
);
struct
screen_params
screen_params
=
{
.
window_title
=
window_title
,
.
frame_size
=
frame_size
,
...
...
@@ -397,7 +395,8 @@ scrcpy(const struct scrcpy_options *options) {
.
mipmaps
=
options
->
mipmaps
,
};
if
(
!
screen_init_rendering
(
&
screen
,
&
screen_params
))
{
if
(
!
screen_init
(
&
screen
,
&
video_buffer
,
&
fps_counter
,
&
screen_params
))
{
goto
end
;
}
...
...
app/src/screen.c
浏览文件 @
cc48b243
...
...
@@ -212,25 +212,6 @@ on_frame_skipped(struct video_buffer *vb, void *userdata) {
fps_counter_add_skipped_frame
(
screen
->
fps_counter
);
}
void
screen_init
(
struct
screen
*
screen
,
struct
video_buffer
*
vb
,
struct
fps_counter
*
fps_counter
)
{
screen
->
vb
=
vb
;
screen
->
fps_counter
=
fps_counter
;
screen
->
resize_pending
=
false
;
screen
->
has_frame
=
false
;
screen
->
fullscreen
=
false
;
screen
->
maximized
=
false
;
static
const
struct
video_buffer_callbacks
cbs
=
{
.
on_frame_available
=
on_frame_available
,
.
on_frame_skipped
=
on_frame_skipped
,
};
video_buffer_set_consumer_callbacks
(
vb
,
&
cbs
,
screen
);
}
static
inline
SDL_Texture
*
create_texture
(
struct
screen
*
screen
)
{
SDL_Renderer
*
renderer
=
screen
->
renderer
;
...
...
@@ -259,8 +240,23 @@ create_texture(struct screen *screen) {
}
bool
screen_init_rendering
(
struct
screen
*
screen
,
const
struct
screen_params
*
params
)
{
screen_init
(
struct
screen
*
screen
,
struct
video_buffer
*
vb
,
struct
fps_counter
*
fps_counter
,
const
struct
screen_params
*
params
)
{
screen
->
vb
=
vb
;
screen
->
fps_counter
=
fps_counter
;
screen
->
resize_pending
=
false
;
screen
->
has_frame
=
false
;
screen
->
fullscreen
=
false
;
screen
->
maximized
=
false
;
static
const
struct
video_buffer_callbacks
cbs
=
{
.
on_frame_available
=
on_frame_available
,
.
on_frame_skipped
=
on_frame_skipped
,
};
video_buffer_set_consumer_callbacks
(
vb
,
&
cbs
,
screen
);
screen
->
frame_size
=
params
->
frame_size
;
screen
->
rotation
=
params
->
rotation
;
if
(
screen
->
rotation
)
{
...
...
app/src/screen.h
浏览文件 @
cc48b243
...
...
@@ -54,15 +54,11 @@ struct screen_params {
bool
mipmaps
;
};
// initialize default values
void
screen_init
(
struct
screen
*
screen
,
struct
video_buffer
*
vb
,
struct
fps_counter
*
fps_counter
);
// initialize screen, create window, renderer and texture (window is hidden)
bool
screen_init_rendering
(
struct
screen
*
screen
,
const
struct
screen_params
*
params
);
screen_init
(
struct
screen
*
screen
,
struct
video_buffer
*
vb
,
struct
fps_counter
*
fps_counter
,
const
struct
screen_params
*
params
);
// show the window
void
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录