OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef MEDIA_BASE_CHANNEL_LAYOUT_H_ | 5 #ifndef MEDIA_BASE_CHANNEL_LAYOUT_H_ |
6 #define MEDIA_BASE_CHANNEL_LAYOUT_H_ | 6 #define MEDIA_BASE_CHANNEL_LAYOUT_H_ |
7 | 7 |
8 #include "media/base/media_export.h" | 8 #include "media/base/media_export.h" |
9 | 9 |
10 namespace media { | 10 namespace media { |
(...skipping 21 matching lines...) Expand all Loading... |
32 | 32 |
33 // Front L, Front R, Side L, Side R | 33 // Front L, Front R, Side L, Side R |
34 CHANNEL_LAYOUT_2_2 = 7, | 34 CHANNEL_LAYOUT_2_2 = 7, |
35 | 35 |
36 // Front L, Front R, Back L, Back R | 36 // Front L, Front R, Back L, Back R |
37 CHANNEL_LAYOUT_QUAD = 8, | 37 CHANNEL_LAYOUT_QUAD = 8, |
38 | 38 |
39 // Front L, Front R, Front C, Side L, Side R | 39 // Front L, Front R, Front C, Side L, Side R |
40 CHANNEL_LAYOUT_5_0 = 9, | 40 CHANNEL_LAYOUT_5_0 = 9, |
41 | 41 |
42 // Front L, Front R, Front C, Side L, Side R, LFE | 42 // Front L, Front R, Front C, LFE, Side L, Side R |
43 CHANNEL_LAYOUT_5_1 = 10, | 43 CHANNEL_LAYOUT_5_1 = 10, |
44 | 44 |
45 // Front L, Front R, Front C, Back L, Back R | 45 // Front L, Front R, Front C, Back L, Back R |
46 CHANNEL_LAYOUT_5_0_BACK = 11, | 46 CHANNEL_LAYOUT_5_0_BACK = 11, |
47 | 47 |
48 // Front L, Front R, Front C, Back L, Back R, LFE | 48 // Front L, Front R, Front C, LFE, Back L, Back R |
49 CHANNEL_LAYOUT_5_1_BACK = 12, | 49 CHANNEL_LAYOUT_5_1_BACK = 12, |
50 | 50 |
51 // Front L, Front R, Front C, Side L, Side R, Back L, Back R | 51 // Front L, Front R, Front C, Side L, Side R, Back L, Back R |
52 CHANNEL_LAYOUT_7_0 = 13, | 52 CHANNEL_LAYOUT_7_0 = 13, |
53 | 53 |
54 // Front L, Front R, Front C, Side L, Side R, LFE, Back L, Back R | 54 // Front L, Front R, Front C, LFE, Side L, Side R, Back L, Back R |
55 CHANNEL_LAYOUT_7_1 = 14, | 55 CHANNEL_LAYOUT_7_1 = 14, |
56 | 56 |
57 // Front L, Front R, Front C, Side L, Side R, LFE, Front LofC, Front RofC | 57 // Front L, Front R, Front C, LFE, Side L, Side R, Front LofC, Front RofC |
58 CHANNEL_LAYOUT_7_1_WIDE = 15, | 58 CHANNEL_LAYOUT_7_1_WIDE = 15, |
59 | 59 |
60 // Stereo L, Stereo R | 60 // Stereo L, Stereo R |
61 CHANNEL_LAYOUT_STEREO_DOWNMIX = 16, | 61 CHANNEL_LAYOUT_STEREO_DOWNMIX = 16, |
62 | 62 |
63 // Stereo L, Stereo R, LFE | 63 // Stereo L, Stereo R, LFE |
64 CHANNEL_LAYOUT_2POINT1 = 17, | 64 CHANNEL_LAYOUT_2POINT1 = 17, |
65 | 65 |
66 // Stereo L, Stereo R, Front C, LFE | 66 // Stereo L, Stereo R, Front C, LFE |
67 CHANNEL_LAYOUT_3_1 = 18, | 67 CHANNEL_LAYOUT_3_1 = 18, |
68 | 68 |
69 // Stereo L, Stereo R, Front C, Rear C, LFE | 69 // Stereo L, Stereo R, Front C, Rear C, LFE |
70 CHANNEL_LAYOUT_4_1 = 19, | 70 CHANNEL_LAYOUT_4_1 = 19, |
71 | 71 |
72 // Stereo L, Stereo R, Front C, Side L, Side R, Back C | 72 // Stereo L, Stereo R, Front C, Side L, Side R, Back C |
73 CHANNEL_LAYOUT_6_0 = 20, | 73 CHANNEL_LAYOUT_6_0 = 20, |
74 | 74 |
75 // Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC | 75 // Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC |
76 CHANNEL_LAYOUT_6_0_FRONT = 21, | 76 CHANNEL_LAYOUT_6_0_FRONT = 21, |
77 | 77 |
78 // Stereo L, Stereo R, Side L, Side R, Front C, Rear C. | 78 // Stereo L, Stereo R, Front C, Rear L, Rear R, Rear C |
79 CHANNEL_LAYOUT_HEXAGONAL = 22, | 79 CHANNEL_LAYOUT_HEXAGONAL = 22, |
80 | 80 |
81 // Stereo L, Stereo R, Side L, Side R, Front C, Rear Center, LFE | 81 // Stereo L, Stereo R, Front C, LFE, Side L, Side R, Rear Center |
82 CHANNEL_LAYOUT_6_1 = 23, | 82 CHANNEL_LAYOUT_6_1 = 23, |
83 | 83 |
84 // Stereo L, Stereo R, Back L, Back R, Front C, Rear Center, LFE | 84 // Stereo L, Stereo R, Front C, LFE, Back L, Back R, Rear Center |
85 CHANNEL_LAYOUT_6_1_BACK = 24, | 85 CHANNEL_LAYOUT_6_1_BACK = 24, |
86 | 86 |
87 // Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC, LFE | 87 // Stereo L, Stereo R, Side L, Side R, Front LofC, Front RofC, LFE |
88 CHANNEL_LAYOUT_6_1_FRONT = 25, | 88 CHANNEL_LAYOUT_6_1_FRONT = 25, |
89 | 89 |
90 // Front L, Front R, Front C, Side L, Side R, Front LofC, Front RofC | 90 // Front L, Front R, Front C, Side L, Side R, Front LofC, Front RofC |
91 CHANNEL_LAYOUT_7_0_FRONT = 26, | 91 CHANNEL_LAYOUT_7_0_FRONT = 26, |
92 | 92 |
93 // Front L, Front R, Front C, Back L, Back R, LFE, Front LofC, Front RofC | 93 // Front L, Front R, Front C, LFE, Back L, Back R, Front LofC, Front RofC |
94 CHANNEL_LAYOUT_7_1_WIDE_BACK = 27, | 94 CHANNEL_LAYOUT_7_1_WIDE_BACK = 27, |
95 | 95 |
96 // Front L, Front R, Front C, Side L, Side R, Rear C, Back L, Back R. | 96 // Front L, Front R, Front C, Side L, Side R, Rear L, Back R, Back C. |
97 CHANNEL_LAYOUT_OCTAGONAL = 28, | 97 CHANNEL_LAYOUT_OCTAGONAL = 28, |
98 | 98 |
99 // Channels are not explicitly mapped to speakers. | 99 // Channels are not explicitly mapped to speakers. |
100 CHANNEL_LAYOUT_DISCRETE = 29, | 100 CHANNEL_LAYOUT_DISCRETE = 29, |
101 | 101 |
102 // Front L, Front R, Front C. Front C contains the keyboard mic audio. This | 102 // Front L, Front R, Front C. Front C contains the keyboard mic audio. This |
103 // layout is only intended for input for WebRTC. The Front C channel | 103 // layout is only intended for input for WebRTC. The Front C channel |
104 // is stripped away in the WebRTC audio input pipeline and never seen outside | 104 // is stripped away in the WebRTC audio input pipeline and never seen outside |
105 // of that. | 105 // of that. |
106 CHANNEL_LAYOUT_STEREO_AND_KEYBOARD_MIC = 30, | 106 CHANNEL_LAYOUT_STEREO_AND_KEYBOARD_MIC = 30, |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 // Given the number of channels, return the best layout, | 138 // Given the number of channels, return the best layout, |
139 // or return CHANNEL_LAYOUT_UNSUPPORTED if there is no good match. | 139 // or return CHANNEL_LAYOUT_UNSUPPORTED if there is no good match. |
140 MEDIA_EXPORT ChannelLayout GuessChannelLayout(int channels); | 140 MEDIA_EXPORT ChannelLayout GuessChannelLayout(int channels); |
141 | 141 |
142 // Returns a string representation of the channel layout. | 142 // Returns a string representation of the channel layout. |
143 MEDIA_EXPORT const char* ChannelLayoutToString(ChannelLayout layout); | 143 MEDIA_EXPORT const char* ChannelLayoutToString(ChannelLayout layout); |
144 | 144 |
145 } // namespace media | 145 } // namespace media |
146 | 146 |
147 #endif // MEDIA_BASE_CHANNEL_LAYOUT_H_ | 147 #endif // MEDIA_BASE_CHANNEL_LAYOUT_H_ |
OLD | NEW |