summaryrefslogtreecommitdiffstats
path: root/src/multimedia/audio
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/audio')
-rw-r--r--src/multimedia/audio/qaudioinput.cpp23
-rw-r--r--src/multimedia/audio/qaudioinput.h3
-rw-r--r--src/multimedia/audio/qaudiosystem.h2
3 files changed, 28 insertions, 0 deletions
diff --git a/src/multimedia/audio/qaudioinput.cpp b/src/multimedia/audio/qaudioinput.cpp
index a41e43584..abe9bb34b 100644
--- a/src/multimedia/audio/qaudioinput.cpp
+++ b/src/multimedia/audio/qaudioinput.cpp
@@ -327,6 +327,29 @@ int QAudioInput::notifyInterval() const
}
/*!
+ Sets the input volume to \a volume.
+
+ If the device does not support adjusting the input
+ volume then \a volume will be ignored and the input
+ volume will remain at 1.0.
+*/
+void QAudioInput::setVolume(qreal volume)
+{
+ d->setVolume(volume);
+}
+
+/*!
+ Returns the input volume (gain).
+
+ If the device does not support adjusting the input volume
+ the returned value will be 1.0.
+*/
+qreal QAudioInput::volume() const
+{
+ return d->volume();
+}
+
+/*!
Returns the amount of audio data processed since start()
was called in microseconds.
*/
diff --git a/src/multimedia/audio/qaudioinput.h b/src/multimedia/audio/qaudioinput.h
index 35f4e6cfe..bd8a1220a 100644
--- a/src/multimedia/audio/qaudioinput.h
+++ b/src/multimedia/audio/qaudioinput.h
@@ -91,6 +91,9 @@ public:
void setNotifyInterval(int milliSeconds);
int notifyInterval() const;
+ void setVolume(qreal volume);
+ qreal volume() const;
+
qint64 processedUSecs() const;
qint64 elapsedUSecs() const;
diff --git a/src/multimedia/audio/qaudiosystem.h b/src/multimedia/audio/qaudiosystem.h
index 46e60ea30..79143cdcc 100644
--- a/src/multimedia/audio/qaudiosystem.h
+++ b/src/multimedia/audio/qaudiosystem.h
@@ -127,6 +127,8 @@ public:
virtual QAudio::State state() const = 0;
virtual void setFormat(const QAudioFormat& fmt) = 0;
virtual QAudioFormat format() const = 0;
+ virtual void setVolume(qreal) {}
+ virtual qreal volume() const { return 1.0; }
Q_SIGNALS:
void errorChanged(QAudio::Error);