Add new implementation of QSound class

Added a re-implementation of QSound, using functionality derived from
QSoundEffect. QSound API remains the same as the original 4.x version.

It offers both a static interface (with auto resource cleanup on sound
completion), as well as an object instance interface for more detailed
control.

Change-Id: I85c00dd88547f8dea9b1e1ef2da31d2f2e28a172
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
This commit is contained in:
Mithra Pattison
2011-12-22 15:12:03 +10:00
committed by Qt by Nokia
parent c13a13c486
commit f9ec11a25e
16 changed files with 600 additions and 20 deletions

View File

@@ -82,6 +82,7 @@ public:
QUrl source() const;
void setSource(const QUrl &url);
int loopCount() const;
int loopsRemaining() const;
void setLoopCount(int loopCount);
int volume() const;
void setVolume(int volume);
@@ -98,6 +99,7 @@ public Q_SLOTS:
void stop();
Q_SIGNALS:
void loopsRemainingChanged();
void volumeChanged();
void mutedChanged();
void loadedChanged();
@@ -125,6 +127,7 @@ private:
void setPlaying(bool playing);
void setStatus(QSoundEffect::Status status);
void setLoopsRemaining(int loopsRemaining);
static void stream_write_callback(pa_stream *s, size_t length, void *userdata);
static void stream_state_callback(pa_stream *s, void *userdata);