A value class to play a sound effect. More...
#include <Wt/WSound>

Public Member Functions | |
| WSound (WObject *parent=0) | |
| Constructs a sound object. | |
| WSound (const std::string &url, WObject *parent=0) | |
| Constructs a sound object for an MP3 media source. | |
| WSound (WMediaPlayer::Encoding encoding, const WLink &link, WObject *parent=0) | |
| Constructs a sound object. | |
| ~WSound () | |
| Destructor. | |
| void | addSource (WMediaPlayer::Encoding encoding, const WLink &link) |
| Adds a media source. | |
| std::string | url () const |
| Returns the media source (deprecated). | |
| WLink | getSource (WMediaPlayer::Encoding encoding) const |
| Returns the media source. | |
| void | setLoops (int number) |
| Sets the amount of times the sound has to be repeated. | |
| int | loops () const |
| Returns the configured number of repeats. | |
| void | play () |
| Start asynchronous playback of the sound. | |
| void | stop () |
| Stops playback of the sound. | |
A value class to play a sound effect.
This class provides a way to play an MP3 sound asynchonously (if the browser supports this). It is intended as a simple way to play event sounds (not quite for a media center).
This class uses a WMediaPlayer to play the sound (using HTML <audio> or a flash player).
Usage example:
WSound *s = new WSound("djing.mp3", parent); s->setLoops(3); s->play(); playButton->clicked().connect(s, &WSound::play); stopButton->clicked().connect(s, &WSound::stop);
| Wt::WSound::WSound | ( | WObject * | parent = 0 | ) |
Constructs a sound object.
| Wt::WSound::WSound | ( | const std::string & | url, |
| WObject * | parent = 0 |
||
| ) |
Constructs a sound object for an MP3 media source.
The url will be assumed to be an MP3 file.
| Wt::WSound::WSound | ( | WMediaPlayer::Encoding | encoding, |
| const WLink & | link, | ||
| WObject * | parent = 0 |
||
| ) |
Constructs a sound object.
Destructor.
Deleting a sound also stops it (if it was playing).
| void Wt::WSound::addSource | ( | WMediaPlayer::Encoding | encoding, |
| const WLink & | link | ||
| ) |
Adds a media source.
You may add multiple media sources (with different encodings) to allow the file to be played in more browsers without needing Flash plugins.
| WLink Wt::WSound::getSource | ( | WMediaPlayer::Encoding | encoding | ) | const |
Returns the media source.
This returns the link set for a specific encoding, or an empty link if no URL was set for that encoding.
| int Wt::WSound::loops | ( | ) | const |
Returns the configured number of repeats.
| void Wt::WSound::play | ( | ) |
Start asynchronous playback of the sound.
This method returns immediately. It will cause the sound to be played for the configured amount of loops().
The behavior of play() when a sound is already playing is undefind: it may be intermixed, sequentially queued, or a current playing sound may be stopped. It is recommended to call stop() before play() if you want to avoid mixing multiple instances of a single WSound object.
| void Wt::WSound::setLoops | ( | int | number | ) |
Sets the amount of times the sound has to be repeated.
A call to play() will play the sound number of times. The default value is 1 (no repeats).
| void Wt::WSound::stop | ( | ) |
Stops playback of the sound.
This method returns immediately. It causes the current playback (if any) of the sound to be stopped.
| std::string Wt::WSound::url | ( | ) | const |
Returns the media source (deprecated).
1.7.6.1