AWS SDK for C++

AWS SDK for C++ Version 1.11.440

Loading...
Searching...
No Matches
PCMOutputDriver.h
1
6#pragma once
7
8#include <aws/text-to-speech/TextToSpeech_EXPORTS.h>
9#include <aws/core/utils/Array.h>
10#include <aws/core/utils/memory/stl/AWSString.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12
13namespace Aws
14{
15 namespace TextToSpeech
16 {
17 static const unsigned BIT_WIDTH_16 = 16;
18 static const unsigned MONO = 1;
19 static const size_t KHZ_22_5 = 22050;
20 static const size_t KHZ_16 = 16000;
21 static const size_t KHZ_8 = 8000;
22
24 {
26
27 unsigned channels;
28 size_t sampleRate;
30 };
31
33 {
37 };
38
42 class AWS_TEXT_TO_SPEECH_API PCMOutputDriver
43 {
44 public:
46
51 virtual bool WriteBufferToDevice(const unsigned char*, size_t) = 0;
61 virtual void SetActiveDevice(const DeviceInfo&, const CapabilityInfo&) = 0;
62
66 virtual const char* GetName() const = 0;
67
73 virtual void Prime() {};
74
79 virtual void Flush() {};
80 };
81
86 class AWS_TEXT_TO_SPEECH_API PCMOutputDriverFactory
87 {
88 public:
89 virtual ~PCMOutputDriverFactory() = default;
90
95 };
96
103 AWS_TEXT_TO_SPEECH_API std::shared_ptr<PCMOutputDriverFactory> DefaultPCMOutputDriverFactoryInitFn();
104 }
105}
virtual Aws::Vector< std::shared_ptr< PCMOutputDriver > > LoadDrivers() const =0
virtual const char * GetName() const =0
virtual Aws::Vector< DeviceInfo > EnumerateDevices() const =0
virtual bool WriteBufferToDevice(const unsigned char *, size_t)=0
virtual void SetActiveDevice(const DeviceInfo &, const CapabilityInfo &)=0
static const unsigned MONO
static const size_t KHZ_22_5
AWS_TEXT_TO_SPEECH_API std::shared_ptr< PCMOutputDriverFactory > DefaultPCMOutputDriverFactoryInitFn()
static const unsigned BIT_WIDTH_16
static const size_t KHZ_8
static const size_t KHZ_16
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Vector< CapabilityInfo > capabilities