1 #include "asemanaudioencodersettings.h"
2 
3 #include <QAudioEncoderSettings>
4 
5 class AsemanAudioEncoderSettingsPrivate
6 {
7 public:
8     QAudioEncoderSettings settings;
9 };
10 
AsemanAudioEncoderSettings(QObject * parent)11 AsemanAudioEncoderSettings::AsemanAudioEncoderSettings(QObject *parent) :
12     QObject(parent)
13 {
14     p = new AsemanAudioEncoderSettingsPrivate;
15 }
16 
bitRate() const17 int AsemanAudioEncoderSettings::bitRate() const
18 {
19     return p->settings.bitRate();
20 }
21 
setBitRate(int rate)22 void AsemanAudioEncoderSettings::setBitRate(int rate)
23 {
24     if(p->settings.bitRate() == rate)
25         return;
26 
27     p->settings.setBitRate(rate);
28     emit bitRateChanged();
29 }
30 
channelCount() const31 int AsemanAudioEncoderSettings::channelCount() const
32 {
33     return p->settings.channelCount();
34 }
35 
setChannelCount(int channels)36 void AsemanAudioEncoderSettings::setChannelCount(int channels)
37 {
38     if(p->settings.channelCount() == channels)
39         return;
40 
41     p->settings.setChannelCount(channels);
42     emit channelCountChanged();
43 }
44 
codec() const45 QString AsemanAudioEncoderSettings::codec() const
46 {
47     return p->settings.codec();
48 }
49 
setCodec(const QString & cdc)50 void AsemanAudioEncoderSettings::setCodec(const QString &cdc)
51 {
52     if(p->settings.codec() == cdc)
53         return;
54 
55     p->settings.setCodec(cdc);
56     emit codecChanged();
57 }
58 
encodingMode() const59 int AsemanAudioEncoderSettings::encodingMode() const
60 {
61     return p->settings.encodingMode();
62 }
63 
setEncodingMode(int mode)64 void AsemanAudioEncoderSettings::setEncodingMode(int mode)
65 {
66     if(p->settings.encodingMode() == mode)
67         return;
68 
69     p->settings.setEncodingMode(static_cast<QMultimedia::EncodingMode>(mode));
70     emit encodingModeChanged();
71 }
72 
encodingOptions() const73 QVariantMap AsemanAudioEncoderSettings::encodingOptions() const
74 {
75     return p->settings.encodingOptions();
76 }
77 
setEncodingOptions(const QVariantMap & options)78 void AsemanAudioEncoderSettings::setEncodingOptions(const QVariantMap &options)
79 {
80     if(p->settings.encodingOptions() == options)
81         return;
82 
83     p->settings.setEncodingOptions(options);
84     emit encodingOptionsChanged();
85 }
86 
quality() const87 int AsemanAudioEncoderSettings::quality() const
88 {
89     return p->settings.quality();
90 }
91 
setQuality(int quality)92 void AsemanAudioEncoderSettings::setQuality(int quality)
93 {
94     if(p->settings.quality() == quality)
95         return;
96 
97     p->settings.setQuality(static_cast<QMultimedia::EncodingQuality>(quality));
98     emit qualityChanged();
99 }
100 
sampleRate() const101 int AsemanAudioEncoderSettings::sampleRate() const
102 {
103     return p->settings.sampleRate();
104 }
105 
setSampleRate(int rate)106 void AsemanAudioEncoderSettings::setSampleRate(int rate)
107 {
108     if(p->settings.sampleRate() == rate)
109         return;
110 
111     p->settings.setSampleRate(rate);
112     emit sampleRateChanged();
113 }
114 
exportSettings() const115 QAudioEncoderSettings AsemanAudioEncoderSettings::exportSettings() const
116 {
117     return p->settings;
118 }
119 
~AsemanAudioEncoderSettings()120 AsemanAudioEncoderSettings::~AsemanAudioEncoderSettings()
121 {
122     delete p;
123 }
124 
125