1470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com/*
29b3474aff82d247345670d68e67dce90ded53190xians@webrtc.org *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *
4470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *  Use of this source code is governed by a BSD-style license
5470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *  that can be found in the LICENSE file in the root of the source
6470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *  tree. An additional intellectual property rights grant can be found
7470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *  in the file PATENTS.  All contributing project authors may
8470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com *  be found in the AUTHORS file in the root of the source tree.
9470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com */
10470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
11470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#ifndef WEBRTC_ENGINE_CONFIGURATIONS_H_
12470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_ENGINE_CONFIGURATIONS_H_
13470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
140851df8d60b43e1c7a212f233dc378cb2585476bandrew@webrtc.org#include "webrtc/typedefs.h"
150851df8d60b43e1c7a212f233dc378cb2585476bandrew@webrtc.org
16470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ============================================================================
17470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//                                 VoiceEngine
18470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ============================================================================
19470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
20470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
21470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//  Settings for VoiceEngine
22470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
23470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
24470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_AGC                 // Near-end AGC
25470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_ECHO                // Near-end AEC
26470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_NR                  // Near-end NS
27470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
28bf00740c92839865f3656fb4ee02b144f26b2012jiayl@webrtc.org#if !defined(WEBRTC_ANDROID) && !defined(WEBRTC_IOS)
29832d7c6000da255883c0f7d47e49ba19556b4ed0xians@webrtc.org#define WEBRTC_VOICE_ENGINE_TYPING_DETECTION    // Typing detection
30832d7c6000da255883c0f7d47e49ba19556b4ed0xians@webrtc.org#endif
31832d7c6000da255883c0f7d47e49ba19556b4ed0xians@webrtc.org
32470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
33470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//  VoiceEngine sub-APIs
34470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
35470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
36470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_AUDIO_PROCESSING_API
37470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_CODEC_API
38470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_DTMF_API
395b6d3ce59829f41b76fb0138a3c4be4f5e97e587xians@webrtc.org#define WEBRTC_VOICE_ENGINE_EXTERNAL_MEDIA_API
405b6d3ce59829f41b76fb0138a3c4be4f5e97e587xians@webrtc.org#define WEBRTC_VOICE_ENGINE_FILE_API
41470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_HARDWARE_API
42470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_NETEQ_STATS_API
43470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_RTP_RTCP_API
44470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_VIDEO_SYNC_API
45470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#define WEBRTC_VOICE_ENGINE_VOLUME_CONTROL_API
46470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
47470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ============================================================================
48470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//                       Platform specific configurations
49470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ============================================================================
50470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
51470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
52470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//  VideoEngine Windows
53470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
54470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
55470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#if defined(_WIN32)
568012474552c90bac8489a0ce9c32abac505f376candrew@webrtc.org#define DIRECT3D9_RENDERING  // Requires DirectX 9.
578012474552c90bac8489a0ce9c32abac505f376candrew@webrtc.org#endif
58470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
59470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
60470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//  VideoEngine MAC
61470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
62470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
63414fa7f0c47dee07887df8ce62568b70f1d0fa28sjlee@webrtc.org#if defined(WEBRTC_MAC) && !defined(WEBRTC_IOS)
648012474552c90bac8489a0ce9c32abac505f376candrew@webrtc.org// #define CARBON_RENDERING
658012474552c90bac8489a0ce9c32abac505f376candrew@webrtc.org#define COCOA_RENDERING
66470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#endif
67470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
68470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
69470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com//  VideoEngine Mobile iPhone
70470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com// ----------------------------------------------------------------------------
71470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
72414fa7f0c47dee07887df8ce62568b70f1d0fa28sjlee@webrtc.org#if defined(WEBRTC_IOS)
738012474552c90bac8489a0ce9c32abac505f376candrew@webrtc.org#define EAGL_RENDERING
74470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#endif
75470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com
76470e71d3649f6cac4688e83819640b012b5d38bbniklase@google.com#endif  // WEBRTC_ENGINE_CONFIGURATIONS_H_
77