#ifndef ENCODERSETTINGS_HPP #define ENCODERSETTINGS_HPP #include "encoder.hpp" #include #define SETTINGS_INTERFACE(F, t) \ t get##F(); \ void set##F(t newf); class EncoderSettings { public: EncoderSettings(); static EncoderSettings inst(); CodecSettings *getSettings(); SETTINGS_INTERFACE(bitrate, int) SETTINGS_INTERFACE(gopSize, int) SETTINGS_INTERFACE(h264Profile, QString) SETTINGS_INTERFACE(h264Crf, int) SETTINGS_INTERFACE(vp9Lossless, int) SETTINGS_INTERFACE(imageQuality, int) private: int bitrate; int gopSize; QString h264Profile; int h264Crf; int imageQuality; bool vp9Lossless; }; #endif // ENCODERSETTINGS_HPP