-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathscreens.proto
150 lines (135 loc) · 3.4 KB
/
screens.proto
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
syntax = "proto3";
package rv.data;
import "color.proto";
import "graphicsData.proto";
import "uuid.proto";
message Screen {
rv.data.UUID uuid = 1;
string name = 2;
rv.data.Color color = 3;
rv.data.Graphics.Rect bounds = 4;
bool aspect_ratio_locked = 5;
bool output_bounds_aspect_ratio_locked = 6;
bool corner_pinning_enabled = 7;
rv.data.Graphics.Rect subscreen_unit_rect = 8;
double rotation = 9;
double gamma = 10;
double black_level = 11;
uint32 blended_edges = 12;
rv.data.CornerValues corner_values = 13;
rv.data.OutputDisplay output_display = 14;
bool color_enabled = 15;
rv.data.Screen.ColorAdjustment color_adjustment = 16;
rv.data.Screen.BlendCompensation blend_compensation = 17;
rv.data.Screen.AlphaSettings alpha_settings = 18;
message ColorAdjustment {
double gamma = 1;
double black_level = 2;
double red_level = 3;
double green_level = 4;
double blue_level = 5;
double brightness = 6;
double contrast = 7;
}
message BlendCompensation {
double black_level = 1;
}
message AlphaSettings {
enum Mode {
MODE_UNKNOWN = 0;
MODE_DISABLED = 1;
MODE_PREMULTIPLIED = 2;
MODE_STRAIGHT = 3;
}
Mode mode = 1;
rv.data.Screen.AlphaSettings.AlphaDevice alpha_device = 2;
message AlphaDevice {
rv.data.OutputDisplay display = 1;
rv.data.Graphics.Rect subscreen_unit_rect = 2;
}
}
}
message CornerValues {
rv.data.Graphics.Point top_left = 1;
rv.data.Graphics.Point top_right = 2;
rv.data.Graphics.Point bottom_left = 3;
rv.data.Graphics.Point bottom_right = 4;
}
message DisplayMode {
string name = 1;
uint32 width = 2;
uint32 height = 3;
double refresh_rate = 4;
bool interlaced = 5;
}
message OutputDisplay {
string name = 1;
string model = 2;
string serial = 3;
string deviceName = 4;
string vendor = 5;
uint32 modeIndex = 6;
rv.data.Graphics.Rect bounds = 7;
enum Type {
TYPE_UNKNOWN = 0;
TYPE_SCREEN = 1;
TYPE_CARD = 2;
TYPE_NDI = 3;
TYPE_SYPHON = 4;
TYPE_CUSTOM = 5;
}
Type type = 8;
rv.data.DisplayMode mode = 9;
string render_id = 10;
int32 video_delay = 12;
oneof HardwareOptions {
rv.data.OutputDisplay.Blackmagic blackmagic = 11;
}
message Blackmagic {
bool enabled = 1;
enum KeyMode {
KEY_MODE_INTERNAL = 0;
KEY_MODE_EXTERNAL = 1;
}
KeyMode key_mode = 2;
double blend_value = 3;
}
}
message EdgeBlend {
rv.data.UUID uuid = 1;
double radius = 2;
double intensity = 3;
enum Mode {
MODE_LINEAR = 0;
MODE_CUBIC = 1;
MODE_QUADRATIC = 2;
}
Mode mode = 4;
rv.data.EdgeBlend.Screen first_screen = 5;
rv.data.EdgeBlend.Screen second_screen = 6;
rv.data.EdgeBlend.Screen left_screen = 7;
rv.data.EdgeBlend.Screen right_screen = 8;
rv.data.EdgeBlend.Screen top_screen = 9;
rv.data.EdgeBlend.Screen bottom_screen = 10;
message Screen {
rv.data.UUID uuid = 1;
enum Edge {
EDGE_UNKNOWN = 0;
EDGE_LEFT = 1;
EDGE_RIGHT = 2;
EDGE_TOP = 3;
EDGE_BOTTOM = 4;
}
Edge edge = 2;
double gamma = 3;
double black_level = 4;
enum Mode {
MODE_LINEAR = 0;
MODE_CUBIC = 1;
MODE_QUADRATIC = 2;
}
Mode mode = 5;
double radius = 6;
double intensity = 7;
}
}