1 /*
2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3  *
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  */
10 
11 #ifndef WEBRTC_ENGINE_CONFIGURATIONS_H_
12 #define WEBRTC_ENGINE_CONFIGURATIONS_H_
13 
14 #include "webrtc/typedefs.h"
15 
16 // ============================================================================
17 //                              Voice and Video
18 // ============================================================================
19 
20 // ----------------------------------------------------------------------------
21 //  [Video] Codec settings
22 // ----------------------------------------------------------------------------
23 
24 #define VIDEOCODEC_I420
25 #define VIDEOCODEC_VP8
26 #define VIDEOCODEC_VP9
27 #define VIDEOCODEC_H264
28 
29 // ============================================================================
30 //                                 VoiceEngine
31 // ============================================================================
32 
33 // ----------------------------------------------------------------------------
34 //  Settings for VoiceEngine
35 // ----------------------------------------------------------------------------
36 
37 #define WEBRTC_VOICE_ENGINE_AGC                 // Near-end AGC
38 #define WEBRTC_VOICE_ENGINE_ECHO                // Near-end AEC
39 #define WEBRTC_VOICE_ENGINE_NR                  // Near-end NS
40 
41 #if !defined(WEBRTC_ANDROID) && !defined(WEBRTC_IOS)
42 #define WEBRTC_VOICE_ENGINE_TYPING_DETECTION    // Typing detection
43 #endif
44 
45 // ----------------------------------------------------------------------------
46 //  VoiceEngine sub-APIs
47 // ----------------------------------------------------------------------------
48 
49 #define WEBRTC_VOICE_ENGINE_AUDIO_PROCESSING_API
50 #define WEBRTC_VOICE_ENGINE_CODEC_API
51 #define WEBRTC_VOICE_ENGINE_DTMF_API
52 #define WEBRTC_VOICE_ENGINE_EXTERNAL_MEDIA_API
53 #define WEBRTC_VOICE_ENGINE_FILE_API
54 #define WEBRTC_VOICE_ENGINE_HARDWARE_API
55 #define WEBRTC_VOICE_ENGINE_NETEQ_STATS_API
56 #define WEBRTC_VOICE_ENGINE_RTP_RTCP_API
57 #define WEBRTC_VOICE_ENGINE_VIDEO_SYNC_API
58 #define WEBRTC_VOICE_ENGINE_VOLUME_CONTROL_API
59 
60 // ============================================================================
61 //                       Platform specific configurations
62 // ============================================================================
63 
64 // ----------------------------------------------------------------------------
65 //  VideoEngine Windows
66 // ----------------------------------------------------------------------------
67 
68 #if defined(_WIN32)
69 #define DIRECT3D9_RENDERING  // Requires DirectX 9.
70 #endif
71 
72 // ----------------------------------------------------------------------------
73 //  VideoEngine MAC
74 // ----------------------------------------------------------------------------
75 
76 #if defined(WEBRTC_MAC) && !defined(WEBRTC_IOS)
77 // #define CARBON_RENDERING
78 #define COCOA_RENDERING
79 #endif
80 
81 // ----------------------------------------------------------------------------
82 //  VideoEngine Mobile iPhone
83 // ----------------------------------------------------------------------------
84 
85 #if defined(WEBRTC_IOS)
86 #define EAGL_RENDERING
87 #endif
88 
89 #endif  // WEBRTC_ENGINE_CONFIGURATIONS_H_
90