diff options
author | Michael Goddard <michael.goddard@nokia.com> | 2012-01-25 13:50:37 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-01-25 07:18:48 +0100 |
commit | 3b00730ecaeb4f780b897c3f0683c1d449e7c6c7 (patch) | |
tree | 66fd49c3bf021e4199935d7ab1fcc096ab24fd24 /src/plugins/pulseaudio/qaudioinput_pulse.h | |
parent | 8aef60c1cf3897053a68498db414b91c00eec0fa (diff) |
Add a volume (gain) property to QAudioInput.
Only implemented for PulseAudio so far, but the API does explain that
it's optional.
Change-Id: I4543a1c81d810fe92bb08f1ed13f3a3534a371e4
Reviewed-by: Ling Hu <ling.hu@nokia.com>
Diffstat (limited to 'src/plugins/pulseaudio/qaudioinput_pulse.h')
-rw-r--r-- | src/plugins/pulseaudio/qaudioinput_pulse.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/pulseaudio/qaudioinput_pulse.h b/src/plugins/pulseaudio/qaudioinput_pulse.h index 8ce328b06..76d0f3484 100644 --- a/src/plugins/pulseaudio/qaudioinput_pulse.h +++ b/src/plugins/pulseaudio/qaudioinput_pulse.h @@ -98,11 +98,16 @@ public: void setFormat(const QAudioFormat &format); QAudioFormat format() const; + void setVolume(qreal volume); + qreal volume() const; + qint64 m_totalTimeValue; QIODevice *m_audioSource; QAudioFormat m_format; QAudio::Error m_errorState; QAudio::State m_deviceState; + qreal m_volume; + pa_cvolume m_chVolume; private slots: void userFeed(); @@ -112,6 +117,12 @@ private: int checkBytesReady(); bool open(); void close(); + void setPulseVolume(); + + static QMap<void *, QPulseAudioInput*> s_inputsMap; + + static void sourceInfoCallback(pa_context *c, const pa_source_info *i, int eol, void *userdata); + static void inputVolumeCallback(pa_context *context, int success, void *userdata); bool m_pullMode; bool m_opened; @@ -130,6 +141,7 @@ private: QByteArray m_streamName; QByteArray m_device; QByteArray m_tempBuffer; + pa_sample_spec m_spec; }; class InputPrivate : public QIODevice |