|
|
The KAudio class is a very easy means to playback digital audio data. A standard procedure looks like this example:
// Class definition class DemoClient : public KTMainWindow { Q_OBJECT
public: DemoClient(); KAudio KAServer;
public slots: void playOK(); // [...] }
// Program // ************* Initialization ****************************** DemoClient *myClient = new DemoClient(); if (myClient->KAServer.serverStatus()) { cerr << "Failed contacting audio server\n"; exit (1); }
// ************* If you want to recieve Qt signals *********** KAServer.setSignals(true); QObject::connect(&KAServer, SIGNAL(playFinished()), this, SLOT(playOK()));
// ************* Playback ************************************ KAServer.play("/my/sounds/is/here.wav");
See democlient.cpp in the kdebase sources for a full program showing more possibilities of the KAudio class
KAudio () |
Create an Audio player
~KAudio () |
Destroy the Audio player again
bool play () |
Play the Wav last set via setFilename(filename) or play(filename)
bool play (const char *filename) |
Set filename as current media name and play it
bool play (QString& filename) |
Set filename as current media name and play it
bool setFilename (const char *filename) |
Set the "current" Filename. This file can be played later with ::play()
bool setFilename (QString& filename) |
Set the "current" Filename. This file can be played later with ::play()
void setAutosync (bool autosync) |
If true is given, every play call is synced directly.
void setSignals (bool sigs=true) |
If you want to recieve a Qt signal when your media is finished, you must call setSignals(true) before you play your media.
bool stop () |
Stop current media
void sync () |
Sync media. This effectively blocks the calling process until the media is played fully
int serverStatus () |
Query Server status. 0 means OK. You MUST check server status after creating a KAudio object.
void playFinished () |
Signal gets emitted after current media has been finished. This signal only gets emitted, if setSignals(true) was called before. Do not forget to include this signal in your own derived class if you want signals.
Generated by: root@tantive.terraplex.com on Sun Feb 27 17:39:46 2000, using kdoc 2.0a33. |