diff options
author | James McDonnell <jmcdonnell@blackberry.com> | 2017-03-24 11:31:56 -0400 |
---|---|---|
committer | James McDonnell <jmcdonnell@blackberry.com> | 2017-03-27 16:33:31 +0000 |
commit | 1221f6a7e3767e14d2afdfc806120953bd6535be (patch) | |
tree | 2667f6a27d99818167323fbd3ac2458bcf761452 /examples | |
parent | 7d51214b609df7e5ec79b56f0c629e084cb886bc (diff) | |
download | qtmultimedia-1221f6a7e3767e14d2afdfc806120953bd6535be.tar.gz |
Propagate audio category into the QNX audio output object
For QNX 7.0.0, set the QNX stream type to the audio category.
6.6.0 doesn't support stream types.
Add a -category command line argument to the spectrum example so
that the audio category can be specified.
Change-Id: I6a81210ce07dc4bd2f6cf81983c2f3e4c480ef0d
Reviewed-by: Yoann Lopes <yoann.lopes@qt.io>
Diffstat (limited to 'examples')
-rw-r--r-- | examples/multimedia/spectrum/app/engine.cpp | 19 | ||||
-rw-r--r-- | examples/multimedia/spectrum/app/engine.h | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/examples/multimedia/spectrum/app/engine.cpp b/examples/multimedia/spectrum/app/engine.cpp index 3a01fa7a7..eae4c8e74 100644 --- a/examples/multimedia/spectrum/app/engine.cpp +++ b/examples/multimedia/spectrum/app/engine.cpp @@ -103,6 +103,23 @@ Engine::Engine(QObject *parent) this, SLOT(spectrumChanged(FrequencySpectrum))); + // This code might misinterpret things like "-something -category". But + // it's unlikely that that needs to be supported so we'll let it go. + QStringList arguments = QCoreApplication::instance()->arguments(); + for (int i = 0; i < arguments.count(); ++i) { + if (arguments.at(i) == QStringLiteral("--")) + break; + + if (arguments.at(i) == QStringLiteral("-category") + || arguments.at(i) == QStringLiteral("--category")) { + ++i; + if (i < arguments.count()) + m_audioOutputCategory = arguments.at(i); + else + --i; + } + } + initialize(); #ifdef DUMP_DATA @@ -494,6 +511,7 @@ bool Engine::initialize() } m_audioOutput = new QAudioOutput(m_audioOutputDevice, m_format, this); m_audioOutput->setNotifyInterval(NotifyIntervalMs); + m_audioOutput->setCategory(m_audioOutputCategory); } } else { if (m_file) @@ -508,6 +526,7 @@ bool Engine::initialize() ENGINE_DEBUG << "Engine::initialize" << "m_bufferLength" << m_bufferLength; ENGINE_DEBUG << "Engine::initialize" << "m_dataLength" << m_dataLength; ENGINE_DEBUG << "Engine::initialize" << "format" << m_format; + ENGINE_DEBUG << "Engine::initialize" << "m_audioOutputCategory" << m_audioOutputCategory; return result; } diff --git a/examples/multimedia/spectrum/app/engine.h b/examples/multimedia/spectrum/app/engine.h index db76d7b42..af08b83cc 100644 --- a/examples/multimedia/spectrum/app/engine.h +++ b/examples/multimedia/spectrum/app/engine.h @@ -287,6 +287,7 @@ private: const QList<QAudioDeviceInfo> m_availableAudioOutputDevices; QAudioDeviceInfo m_audioOutputDevice; QAudioOutput* m_audioOutput; + QString m_audioOutputCategory; qint64 m_playPosition; QBuffer m_audioOutputIODevice; |