PresetSeed.h 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. /*\
  2. |*| Copyright 2015 bill-auger <https://github.com/bill-auger/av-caster/issues>
  3. |*|
  4. |*| This file is part of the AvCaster program.
  5. |*|
  6. |*| AvCaster is free software: you can redistribute it and/or modify
  7. |*| it under the terms of the GNU Lesser General Public License version 3
  8. |*| as published by the Free Software Foundation.
  9. |*|
  10. |*| AvCaster is distributed in the hope that it will be useful,
  11. |*| but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. |*| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  13. |*| GNU Lesser General Public License for more details.
  14. |*|
  15. |*| You should have received a copy of the GNU Lesser General Public License
  16. |*| along with AvCaster. If not, see <http://www.gnu.org/licenses/>.
  17. \*/
  18. #ifndef _PRESETSEED_H_
  19. #define _PRESETSEED_H_
  20. #include "Constants.h"
  21. class PresetSeed
  22. {
  23. protected:
  24. PresetSeed() ;
  25. void createPreset() ;
  26. // node ID
  27. Identifier presetId ;
  28. // control params
  29. String presetName ;
  30. bool isScreencapActive ;
  31. bool isCameraActive ;
  32. bool isTextActive ;
  33. bool isImageActive ;
  34. bool isPreviewActive ;
  35. bool isAudioActive ;
  36. bool isOutputActive ;
  37. // screencap params
  38. int displayN ;
  39. int screenN ;
  40. int screencapW ;
  41. int screencapH ;
  42. int offsetX ;
  43. int offsetY ;
  44. // camera params
  45. int cameraResolutionIdx ;
  46. int cameraDeviceIdx ;
  47. // audio params
  48. int audioApiIdx ;
  49. int audioDeviceIdx ;
  50. int audioCodecIdx ;
  51. int nChannels ;
  52. int samplerate ;
  53. int audioBitrate ;
  54. // text params
  55. String motdText ;
  56. int textStyleIdx ;
  57. int textPosIdx ;
  58. // interstitial params
  59. String imageLocation ;
  60. // output params
  61. int sinkIdx ;
  62. int muxerIdx ;
  63. int outputW ;
  64. int outputH ;
  65. int framerate ;
  66. int videoBitrate ;
  67. String outputDest ;
  68. public:
  69. // AvCasterStore->configPresets child node
  70. ValueTree preset ;
  71. } ;
  72. class FilePresetSeed : public PresetSeed { public: FilePresetSeed() ; } ;
  73. class RtmpPresetSeed : public PresetSeed { public: RtmpPresetSeed() ; } ;
  74. class LctvPresetSeed : public PresetSeed { public: LctvPresetSeed() ; } ;
  75. #endif // _PRESETSEED_H_