webrtc/modules/audio_device/dummy/file_audio_device_factory.h
henrika 5ff64831f9 Removes usage if ID in AudioDeviceImpl.
This CL is a follow-up on https://webrtc-review.googlesource.com/c/src/+/8380

TBR=solenberg

Bug: webrtc:7306
Change-Id: I26cd59d51f15b81d7262b6eb5fc64cbb256c8754
Reviewed-on: https://webrtc-review.googlesource.com/8440
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20249}
2017-10-11 14:16:02 +00:00

42 lines
1.5 KiB
C++

/*
* Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef AUDIO_DEVICE_FILE_AUDIO_DEVICE_FACTORY_H_
#define AUDIO_DEVICE_FILE_AUDIO_DEVICE_FACTORY_H_
#include "common_types.h" // NOLINT(build/include)
namespace webrtc {
class FileAudioDevice;
// This class is used by audio_device_impl.cc when WebRTC is compiled with
// WEBRTC_DUMMY_FILE_DEVICES. The application must include this file and set the
// filenames to use before the audio device module is initialized. This is
// intended for test tools which use the audio device module.
class FileAudioDeviceFactory {
public:
static FileAudioDevice* CreateFileAudioDevice();
// The input file must be a readable 48k stereo raw file. The output
// file must be writable. The strings will be copied.
static void SetFilenamesToUse(const char* inputAudioFilename,
const char* outputAudioFilename);
private:
enum : uint32_t { MAX_FILENAME_LEN = 512 };
static bool _isConfigured;
static char _inputAudioFilename[MAX_FILENAME_LEN];
static char _outputAudioFilename[MAX_FILENAME_LEN];
};
} // namespace webrtc
#endif // AUDIO_DEVICE_FILE_AUDIO_DEVICE_FACTORY_H_