summaryrefslogtreecommitdiffstats
path: root/examples/multimedia/audiooutput/audiooutput.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2016-03-21 14:26:15 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2016-03-21 14:26:22 +0100
commite757890f4a5669b396039211902224f31666725a (patch)
treebb220ff8b9d8d4a64ce5f197a4b39e3e5965da63 /examples/multimedia/audiooutput/audiooutput.cpp
parentcaf0cbca71231dbb6403108ba41d2117d3ce6c6d (diff)
parent71a6b1b62041981f894cb2b6589fce92f137bbc4 (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Diffstat (limited to 'examples/multimedia/audiooutput/audiooutput.cpp')
-rw-r--r--examples/multimedia/audiooutput/audiooutput.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/examples/multimedia/audiooutput/audiooutput.cpp b/examples/multimedia/audiooutput/audiooutput.cpp
index 9368a611e..a00ffbb00 100644
--- a/examples/multimedia/audiooutput/audiooutput.cpp
+++ b/examples/multimedia/audiooutput/audiooutput.cpp
@@ -167,6 +167,7 @@ AudioTest::AudioTest()
, m_generator(0)
, m_audioOutput(0)
, m_output(0)
+ , m_pullMode(true)
, m_buffer(BufferSize, 0)
{
initializeWindow();
@@ -222,8 +223,6 @@ void AudioTest::initializeAudio()
{
connect(m_pushTimer, SIGNAL(timeout()), SLOT(pushTimerExpired()));
- m_pullMode = true;
-
m_format.setSampleRate(DataSampleRateHz);
m_format.setChannelCount(1);
m_format.setSampleSize(16);
@@ -231,12 +230,14 @@ void AudioTest::initializeAudio()
m_format.setByteOrder(QAudioFormat::LittleEndian);
m_format.setSampleType(QAudioFormat::SignedInt);
- QAudioDeviceInfo info(QAudioDeviceInfo::defaultOutputDevice());
+ QAudioDeviceInfo info(m_device);
if (!info.isFormatSupported(m_format)) {
qWarning() << "Default format not supported - trying to use nearest";
m_format = info.nearestFormat(m_format);
}
+ if (m_generator)
+ delete m_generator;
m_generator = new Generator(m_format, DurationSeconds*1000000, ToneSampleRateHz, this);
createAudioOutput();
@@ -264,7 +265,7 @@ void AudioTest::deviceChanged(int index)
m_audioOutput->stop();
m_audioOutput->disconnect(this);
m_device = m_deviceBox->itemData(index).value<QAudioDeviceInfo>();
- createAudioOutput();
+ initializeAudio();
}
void AudioTest::volumeChanged(int value)