Bug 797671: Import Webrtc.org code from stable branch 3.12 (rev 2820) rs=jesup
[gecko.git] / media / webrtc / trunk / src / engine_configurations.h
blob1ed1c367430f05d76f3cc71f4cc8c20ca96d5d34
1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
11 #ifndef WEBRTC_ENGINE_CONFIGURATIONS_H_
12 #define WEBRTC_ENGINE_CONFIGURATIONS_H_
14 // ============================================================================
15 // Voice and Video
16 // ============================================================================
18 // Don't link in socket support in Chrome
19 #ifdef WEBRTC_CHROMIUM_BUILD
20 #define WEBRTC_EXTERNAL_TRANSPORT
21 #endif
23 // Optional to enable stand-alone
24 // #define WEBRTC_EXTERNAL_TRANSPORT
26 // ----------------------------------------------------------------------------
27 // [Voice] Codec settings
28 // ----------------------------------------------------------------------------
30 // common.gypi now defines WEBRTC_CODEC_FOO if FOO is a configured audio codec
32 // ----------------------------------------------------------------------------
33 // [Video] Codec settings
34 // ----------------------------------------------------------------------------
36 #define VIDEOCODEC_I420
37 #define VIDEOCODEC_VP8
39 // ============================================================================
40 // VoiceEngine
41 // ============================================================================
43 // ----------------------------------------------------------------------------
44 // Settings for VoiceEngine
45 // ----------------------------------------------------------------------------
47 #define WEBRTC_VOICE_ENGINE_AGC // Near-end AGC
48 #define WEBRTC_VOICE_ENGINE_ECHO // Near-end AEC
49 #define WEBRTC_VOICE_ENGINE_NR // Near-end NS
50 #define WEBRTC_VOE_EXTERNAL_REC_AND_PLAYOUT
52 #ifndef WEBRTC_CHROMIUM_BUILD
53 #define WEBRTC_VOICE_ENGINE_TYPING_DETECTION // Typing detection
54 #endif
56 // ----------------------------------------------------------------------------
57 // VoiceEngine sub-APIs
58 // ----------------------------------------------------------------------------
60 #define WEBRTC_VOICE_ENGINE_AUDIO_PROCESSING_API
61 #define WEBRTC_VOICE_ENGINE_CODEC_API
62 #define WEBRTC_VOICE_ENGINE_DTMF_API
63 #define WEBRTC_VOICE_ENGINE_EXTERNAL_MEDIA_API
64 #define WEBRTC_VOICE_ENGINE_FILE_API
65 #define WEBRTC_VOICE_ENGINE_HARDWARE_API
66 #define WEBRTC_VOICE_ENGINE_NETEQ_STATS_API
67 #define WEBRTC_VOICE_ENGINE_NETWORK_API
68 #define WEBRTC_VOICE_ENGINE_RTP_RTCP_API
69 #define WEBRTC_VOICE_ENGINE_VIDEO_SYNC_API
70 #define WEBRTC_VOICE_ENGINE_VOLUME_CONTROL_API
71 #define WEBRTC_VOICE_ENGINE_FILE_API
73 #ifndef WEBRTC_CHROMIUM_BUILD
74 #define WEBRTC_VOICE_ENGINE_CALL_REPORT_API
75 #define WEBRTC_VOICE_ENGINE_ENCRYPTION_API
76 #endif
78 // ============================================================================
79 // VideoEngine
80 // ============================================================================
82 // ----------------------------------------------------------------------------
83 // Settings for special VideoEngine configurations
84 // ----------------------------------------------------------------------------
85 // ----------------------------------------------------------------------------
86 // VideoEngine sub-API:s
87 // ----------------------------------------------------------------------------
89 #define WEBRTC_VIDEO_ENGINE_CAPTURE_API
90 #define WEBRTC_VIDEO_ENGINE_CODEC_API
91 #define WEBRTC_VIDEO_ENGINE_ENCRYPTION_API
92 #define WEBRTC_VIDEO_ENGINE_IMAGE_PROCESS_API
93 #define WEBRTC_VIDEO_ENGINE_NETWORK_API
94 #define WEBRTC_VIDEO_ENGINE_RENDER_API
95 #define WEBRTC_VIDEO_ENGINE_RTP_RTCP_API
96 // #define WEBRTC_VIDEO_ENGINE_EXTERNAL_CODEC_API
98 // Now handled by gyp:
99 // WEBRTC_VIDEO_ENGINE_FILE_API
101 // ============================================================================
102 // Platform specific configurations
103 // ============================================================================
105 // ----------------------------------------------------------------------------
106 // VideoEngine Windows
107 // ----------------------------------------------------------------------------
109 #if defined(_WIN32)
110 // #define DIRECTDRAW_RENDERING
111 #define DIRECT3D9_RENDERING // Requires DirectX 9.
112 #endif
114 // ----------------------------------------------------------------------------
115 // VideoEngine MAC
116 // ----------------------------------------------------------------------------
118 #if defined(WEBRTC_MAC) && !defined(MAC_IPHONE)
119 // #define CARBON_RENDERING
120 #define COCOA_RENDERING
121 #endif
123 // ----------------------------------------------------------------------------
124 // VideoEngine Mobile iPhone
125 // ----------------------------------------------------------------------------
127 #if defined(MAC_IPHONE)
128 #define EAGL_RENDERING
129 #endif
131 // ----------------------------------------------------------------------------
132 // Deprecated
133 // ----------------------------------------------------------------------------
135 // #define WEBRTC_CODEC_G729
136 // #define WEBRTC_DTMF_DETECTION
137 // #define WEBRTC_SRTP
138 // #define WEBRTC_SRTP_ALLOW_ROC_ITERATION
140 #endif // WEBRTC_ENGINE_CONFIGURATIONS_H_