53 #ifndef QAUDIOOUTPUTWIN_H 54 #define QAUDIOOUTPUTWIN_H 59 #include <QtCore/qdebug.h> 60 #include <QtCore/qtimer.h> 61 #include <QtCore/qstring.h> 62 #include <QtCore/qstringlist.h> 63 #include <QtCore/qdatetime.h> 64 #include <QtCore/qmutex.h> 66 #include <QtMultimedia/qaudio.h> 67 #include <QtMultimedia/qaudiodeviceinfo.h> 68 #include <QtMultimedia/qaudioengine.h>
static void QT_WIN_CALLBACK waveOutProc(HWAVEOUT hWaveOut, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
WAVEHDR * allocateBlocks(int size, int count)
qint64 write(const char *data, qint64 len)
#define QT_END_NAMESPACE
This macro expands to.
The QMutex class provides access serialization between threads.
QAudio::State state() const
Returns the state of audio processing.
The QByteArray class provides an array of bytes.
void resume()
Resumes processing audio data after a suspend()
The QAbstractAudioOutput class provides access for QAudioOutput to access the audio device provided b...
QAudio::State deviceState
friend class OutputPrivate
QAudio::Error error() const
Returns the error state.
void reset()
Drops all audio data in the buffers, resets buffers to zero.
void setBufferSize(int value)
Sets the audio buffer size to value in bytes.
The QTime class provides clock time functions.
#define QT_BEGIN_NAMESPACE
This macro expands to.
QAudioOutputPrivate(const QByteArray &device, const QAudioFormat &audioFormat)
int notifyInterval() const
Returns the notify interval in milliseconds.
void freeBlocks(WAVEHDR *blockArray)
static const char * data(const QByteArray &arr)
qint64 elapsedUSecs() const
Returns the milliseconds since start() was called, including time in Idle and suspend states...
qint64 processedUSecs() const
Returns the amount of audio data processed since start() was called in milliseconds.
void suspend()
Stops processing audio data, preserving buffered audio data.
int periodSize() const
Returns the period size in bytes.
QAudioFormat format() const
Returns the QAudioFormat being used.
int bytesFree() const
Returns the free space available in bytes in the audio buffer.
void setNotifyInterval(int milliSeconds)
Sets the interval for notify() signal to be emitted.
int bufferSize() const
Returns the audio buffer size in bytes.
QIODevice * start(QIODevice *device=0)
Uses the device as the QIODevice to transfer data.
void stop()
Stops the audio output.
volatile int waveFreeBlockCount
The QIODevice class is the base interface class of all I/O devices in Qt.