From: Robin Burchell Date: Thu, 16 Jan 2014 14:28:06 +0000 (+0100) Subject: QAudioOutput: Don't guess media role if one has not been provided in setCategory. X-Git-Tag: upstream/5.2.2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=87b8b4489a96983a7e98e74ee656e6225ff982f3;p=platform%2Fupstream%2Fqtmultimedia.git QAudioOutput: Don't guess media role if one has not been provided in setCategory. Trying to heuristically guess this kind of thing is almost always a bad idea. Expect the creator of the output to explicitly tell us the category instead of guessing. This fixes QAudioOutput not respecting system volume on Sailfish. Change-Id: If1d05192f513eb54fdfbd1df217286f329b2bfe8 Reviewed-by: Yoann Lopes --- diff --git a/src/plugins/pulseaudio/qaudiooutput_pulse.cpp b/src/plugins/pulseaudio/qaudiooutput_pulse.cpp index cd32658..2b482ba 100644 --- a/src/plugins/pulseaudio/qaudiooutput_pulse.cpp +++ b/src/plugins/pulseaudio/qaudiooutput_pulse.cpp @@ -277,16 +277,8 @@ bool QPulseAudioOutput::open() qint64 bytesPerSecond = m_format.sampleRate() * m_format.channelCount() * m_format.sampleSize() / 8; pa_proplist *propList = pa_proplist_new(); - if (m_category.isNull()) { - // Meant to be one of the strings "video", "music", "game", "event", "phone", "animation", "production", "a11y", "test" - // We choose music unless the buffer size is small, where we choose game.. - if (m_bufferSize > 0 && bytesPerSecond > 0 && (m_bufferSize * 1000LL / bytesPerSecond <= LowLatencyBufferSizeMs)) { - m_category = LOW_LATENCY_CATEGORY_NAME; - } else { - m_category = "music"; - } - } - pa_proplist_sets(propList, PA_PROP_MEDIA_ROLE, m_category.toLatin1().constData()); + if (!m_category.isNull()) + pa_proplist_sets(propList, PA_PROP_MEDIA_ROLE, m_category.toLatin1().constData()); m_stream = pa_stream_new_with_proplist(pulseEngine->context(), m_streamName.constData(), &spec, 0, propList); pa_proplist_free(propList);