Twitch SDK (Internal)
audioconvertcontext.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-2017 Twitch Interactive, Inc.
7  *
8  *********************************************************************************************/
9 
10 #pragma once
11 
21 
22 namespace ttv
23 {
24  template <typename PassedOptions = void>
26  {
28 
29  template <typename Options>
31  {
32  static constexpr double Cutoff = Options::FilterCutoff;
33  static constexpr size_t TapCount = Options::FilterTapCount;
34 
35  template <typename AudioOptions, typename Enable = void>
37  {
38  };
39 
40  template <typename AudioOptions>
41  struct WindowFunctionSelector<AudioOptions, std::enable_if_t<AudioOptions::FilterType == FilterTypeEnum::Kaiser>>
42  {
43  struct KaiserParameters
44  {
45  static constexpr double Beta = AudioOptions::KaiserBeta;
46  static constexpr size_t Length = AudioOptions::FilterTapCount;
47  };
48 
50  };
51 
53  };
54 
55  using FilterOptions = FilterOptionsProvider<Options>;
56  };
57 }
typename WindowFunctionSelector< Options >::Type WindowFunction
Definition: audioconvertcontext.h:52
Definition: audioconvertcontext.h:30
Definition: audioconvertoptions.h:76
FilterOptionsProvider< Options > FilterOptions
Definition: audioconvertcontext.h:55
Definition: cpp11transition.h:22
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
Definition: dsputilities.h:310
static constexpr size_t TapCount
Definition: audioconvertcontext.h:33
static constexpr size_t FilterTapCount
Definition: audioconvertoptions.h:146
static constexpr double Cutoff
Definition: audioconvertcontext.h:32
Definition: audioconvertcontext.h:25
static constexpr double FilterCutoff
Definition: audioconvertoptions.h:104