audioproc_float.h (1963B)
1 /* 2 * Copyright (c) 2018 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 API_TEST_AUDIOPROC_FLOAT_H_ 12 #define API_TEST_AUDIOPROC_FLOAT_H_ 13 14 #include <memory> 15 16 #include "absl/base/nullability.h" 17 #include "api/audio/audio_processing.h" 18 #include "api/audio/builtin_audio_processing_builder.h" 19 20 namespace webrtc { 21 namespace test { 22 23 // This is an interface for the audio processing simulation utility. This 24 // utility can be used to simulate the audioprocessing module using a recording 25 // (either an AEC dump or wav files), and generate the output as a wav file. 26 // 27 // It is needed to pass the command line flags as `argc` and `argv`, so these 28 // can be interpreted properly by the utility. To see a list of all supported 29 // command line flags, run the executable with the '--helpfull' flag. 30 // 31 // The optional `ap_builder` object will be used to create the AudioProcessing 32 // instance that is used during the simulation. BuiltinAudioProcessingBuilder 33 // `ap_builder` supports setting of injectable components, which will be passed 34 // on to the created AudioProcessing instance. When generic 35 // `AudioProcessingBuilderInterface` is used, all functionality that relies on 36 // using the BuiltinAudioProcessingBuilder is deactivated. 37 int AudioprocFloat(int argc, char* argv[]); 38 int AudioprocFloat( 39 absl_nonnull std::unique_ptr<BuiltinAudioProcessingBuilder> ap_builder, 40 int argc, 41 char* argv[]); 42 int AudioprocFloat( 43 absl_nonnull std::unique_ptr<AudioProcessingBuilderInterface> ap_builder, 44 int argc, 45 char* argv[]); 46 47 } // namespace test 48 } // namespace webrtc 49 50 #endif // API_TEST_AUDIOPROC_FLOAT_H_