Twitch SDK (Internal)
winaudiocapture.h
Go to the documentation of this file.
1 /********************************************************************************************
2 * Twitch Broadcasting SDK
3 *
4 * This software is supplied under the terms of a license agreement with Twitch Interactive, Inc. and
5 * may not be copied or used except in accordance with the terms of that agreement
6 * Copyright (c) 2012-2016 Twitch Interactive, Inc.
7 *********************************************************************************************/
8 
9 #pragma once
10 
12 
13 
14 namespace ttv
15 {
16  namespace broadcast
17  {
18  class WinAudioCapture;
19  class WinAudioCaptureInternalData;
20  }
21 }
22 
23 
29 {
30 public:
31  enum class CaptureType
32  {
33  System,
35  };
36 
37 public:
39  virtual ~WinAudioCapture();
40 
41 public:
42  // IAudioCapture implementation
43  virtual std::string GetName() const override;
44  virtual uint32_t GetNumChannels() const override;
45  virtual TTV_ErrorCode Start() override;
46  virtual TTV_ErrorCode Stop() override;
47  virtual TTV_ErrorCode Process(const std::shared_ptr<IAudioMixer>& mixer, uint64_t& lastSampleTime) override;
48 
49 private:
50  TTV_ErrorCode SubmitSamples(void* samples, size_t sampleCount, uint64_t timestamp);
51 
52  std::unique_ptr<WinAudioCaptureInternalData> mInternalData;
53 };
virtual uint32_t GetNumChannels() const override
virtual std::string GetName() const override
Definition: winaudiocapture.h:28
WinAudioCapture(CaptureType type)
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
std::unique_ptr< WinAudioCaptureInternalData > mInternalData
Definition: winaudiocapture.h:52
virtual TTV_ErrorCode Process(const std::shared_ptr< IAudioMixer > &mixer, uint64_t &lastSampleTime) override
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
Definition: audiocapturebase.h:25
CaptureType
Definition: winaudiocapture.h:31
TTV_ErrorCode SubmitSamples(void *samples, size_t sampleCount, uint64_t timestamp)
virtual TTV_ErrorCode Stop() override
virtual TTV_ErrorCode Start() override