Index: webrtc/modules/audio_processing/include/audio_processing.h |
diff --git a/webrtc/modules/audio_processing/include/audio_processing.h b/webrtc/modules/audio_processing/include/audio_processing.h |
index 318b2f89533652b6fd1ad896d269f78deb0d004d..c8ddc6a48313388994bb2745c11cb018c9296d0b 100644 |
--- a/webrtc/modules/audio_processing/include/audio_processing.h |
+++ b/webrtc/modules/audio_processing/include/audio_processing.h |
@@ -11,6 +11,10 @@ |
#ifndef WEBRTC_MODULES_AUDIO_PROCESSING_INCLUDE_AUDIO_PROCESSING_H_ |
#define WEBRTC_MODULES_AUDIO_PROCESSING_INCLUDE_AUDIO_PROCESSING_H_ |
+// MSVC++ requires this to be set before any other includes to get M_PI. |
+#define _USE_MATH_DEFINES |
+ |
+#include <math.h> |
#include <stddef.h> // size_t |
#include <stdio.h> // FILE |
#include <vector> |
@@ -109,12 +113,23 @@ struct ExperimentalNs { |
struct Beamforming { |
Beamforming() |
: enabled(false), |
- array_geometry() {} |
+ array_geometry(), |
+ target_direction( |
+ SphericalPointf(static_cast<float>(M_PI) / 2.f, 0.f, 1.f)) {} |
Beamforming(bool enabled, const std::vector<Point>& array_geometry) |
+ : Beamforming(enabled, |
+ array_geometry, |
+ SphericalPointf(static_cast<float>(M_PI) / 2.f, 0.f, 1.f)) { |
+ } |
+ Beamforming(bool enabled, |
+ const std::vector<Point>& array_geometry, |
+ SphericalPointf target_direction) |
: enabled(enabled), |
- array_geometry(array_geometry) {} |
+ array_geometry(array_geometry), |
+ target_direction(target_direction) {} |
const bool enabled; |
const std::vector<Point> array_geometry; |
+ const SphericalPointf target_direction; |
}; |
// Use to enable intelligibility enhancer in audio processing. Must be provided |