forked from CinemaMod/java-cef
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCefChannelLayout.java
More file actions
129 lines (90 loc) · 3.84 KB
/
CefChannelLayout.java
File metadata and controls
129 lines (90 loc) · 3.84 KB
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
package org.cef.misc;
// https://cef-builds.spotifycdn.com/docs/109.1/cef__types_8h.html#adb8605711e30e1aec6031029c94e7904
public enum CefChannelLayout {
CEF_CHANNEL_LAYOUT_NONE(0),
CEF_CHANNEL_LAYOUT_UNSUPPORTED(1),
/// Front C
CEF_CHANNEL_LAYOUT_MONO(2),
/// Front L, Front R
CEF_CHANNEL_LAYOUT_STEREO(3),
/// Front L, Front R, Back C
CEF_CHANNEL_LAYOUT_2_1(4),
/// Front L, Front R, Front C
CEF_CHANNEL_LAYOUT_SURROUND(5),
/// Front L, Front R, Front C, Back C
CEF_CHANNEL_LAYOUT_4_0(6),
/// Front L, Front R, Side L, Side R
CEF_CHANNEL_LAYOUT_2_2(7),
/// Front L, Front R, Back L, Back R
CEF_CHANNEL_LAYOUT_QUAD(8),
/// Front L, Front R, Front C, Side L, Side R
CEF_CHANNEL_LAYOUT_5_0(9),
/// Front L, Front R, Front C, LFE, Side L, Side R
CEF_CHANNEL_LAYOUT_5_1(10),
/// Front L, Front R, Front C, Back L, Back R
CEF_CHANNEL_LAYOUT_5_0_BACK(11),
/// Front L, Front R, Front C, LFE, Back L, Back R
CEF_CHANNEL_LAYOUT_5_1_BACK(12),
/// Front L, Front R, Front C, Side L, Side R, Back L, Back R
CEF_CHANNEL_LAYOUT_7_0(13),
/// Front L, Front R, Front C, LFE, Side L, Side R, Back L, Back R
CEF_CHANNEL_LAYOUT_7_1(14),
/// Front L, Front R, Front C, LFE, Side L, Side R, Front LofC, Front RofC
CEF_CHANNEL_LAYOUT_7_1_WIDE(15),
/// Stereo L, Stereo R
CEF_CHANNEL_LAYOUT_STEREO_DOWNMIX(16),
/// Stereo L, Stereo R, LFE
CEF_CHANNEL_LAYOUT_2POINT1(17),
/// Stereo L, Stereo R, Front C, LFE
CEF_CHANNEL_LAYOUT_3_1(18),
/// Stereo L, Stereo R, Front C, Rear C, LFE
CEF_CHANNEL_LAYOUT_4_1(19),
/// Stereo L, Stereo R, Front C, Side L, Side R, Back C
CEF_CHANNEL_LAYOUT_6_0(20),
/// Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC
CEF_CHANNEL_LAYOUT_6_0_FRONT(21),
/// Stereo L, Stereo R, Front C, Rear L, Rear R, Rear C
CEF_CHANNEL_LAYOUT_HEXAGONAL(22),
/// Stereo L, Stereo R, Front C, LFE, Side L, Side R, Rear Center
CEF_CHANNEL_LAYOUT_6_1(23),
/// Stereo L, Stereo R, Front C, LFE, Back L, Back R, Rear Center
CEF_CHANNEL_LAYOUT_6_1_BACK(24),
/// Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC, LFE
CEF_CHANNEL_LAYOUT_6_1_FRONT(25),
/// Front L, Front R, Front C, Side L, Side R, Front LofC, Front RofC
CEF_CHANNEL_LAYOUT_7_0_FRONT(26),
/// Front L, Front R, Front C, LFE, Back L, Back R, Front LofC, Front RofC
CEF_CHANNEL_LAYOUT_7_1_WIDE_BACK(27),
/// Front L, Front R, Front C, Side L, Side R, Rear L, Back R, Back C.
CEF_CHANNEL_LAYOUT_OCTAGONAL(28),
/// Channels are not explicitly mapped to speakers.
CEF_CHANNEL_LAYOUT_DISCRETE(29),
/// Front L, Front R, Front C. Front C contains the keyboard mic audio. This
/// layout is only intended for input for WebRTC. The Front C channel
/// is stripped away in the WebRTC audio input pipeline and never seen outside
/// of that.
CEF_CHANNEL_LAYOUT_STEREO_AND_KEYBOARD_MIC(30),
/// Front L, Front R, Side L, Side R, LFE
CEF_CHANNEL_LAYOUT_4_1_QUAD_SIDE(31),
/// Actual channel layout is specified in the bitstream and the actual channel
/// count is unknown at Chromium media pipeline level (useful for audio
/// pass-through mode).
CEF_CHANNEL_LAYOUT_BITSTREAM(32),
/// Front L, Front R, Front C, LFE, Side L, Side R,
/// Front Height L, Front Height R, Rear Height L, Rear Height R
/// Will be represented as six channels (5.1) due to eight channel limit
/// kMaxConcurrentChannels
CEF_CHANNEL_LAYOUT_5_1_4_DOWNMIX(33),
/// Max value, must always equal the largest entry ever logged.
CEF_CHANNEL_LAYOUT_MAX(33);
private final int id;
CefChannelLayout(int id) {
this.id = id;
}
// micro optimization: values() creates a new array every time it's called
// having this static final array allows me to not have to create that array more than once
private static final CefChannelLayout[] LAYOUTS = CefChannelLayout.values();
public static CefChannelLayout forId(int id) {
return LAYOUTS[id];
}
}