summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2021-06-11 13:40:32 +0200
committerLars Knoll <lars.knoll@qt.io>2021-06-16 10:03:10 +0200
commit634894a8a83b021386da8c2672628b0b26185ef3 (patch)
tree40ad48c0dbcc019a959d17154a11518d81b2693a
parent57b7a6cf44fdf867abc8598b3850df962dfef029 (diff)
Get rid of QAudio::Role
This was only ever implemented to some extent for Android. Remove for now, as it's not really an important feature and can't be implemented properly on many of our platforms. Change-Id: Idc4d21c857380088ca6d10d59a0e05d192899534 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r--examples/multimediawidgets/player/player.cpp1
-rw-r--r--src/multimedia/audio/qaudio.cpp59
-rw-r--r--src/multimedia/audio/qaudio.h14
-rw-r--r--src/multimedia/audio/qaudiooutput.cpp28
-rw-r--r--src/multimedia/audio/qaudiooutput.h6
-rw-r--r--src/multimedia/audio/qaudiosink.cpp20
-rw-r--r--src/multimedia/audio/qaudiosink.h3
-rw-r--r--src/multimedia/audio/qaudiosystem.cpp5
-rw-r--r--src/multimedia/audio/qaudiosystem_p.h4
-rw-r--r--src/multimedia/audio/qsoundeffect.cpp43
-rw-r--r--src/multimedia/audio/qsoundeffect.h5
-rw-r--r--src/multimedia/platform/android/audio/qandroidaudiosink.cpp37
-rw-r--r--src/multimedia/platform/android/audio/qandroidaudiosink_p.h2
-rw-r--r--src/multimedia/platform/android/common/qandroidaudiooutput_p.h13
-rw-r--r--src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol.cpp6
-rw-r--r--src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol_p.h1
-rw-r--r--src/multimedia/platform/android/wrappers/jni/androidmediaplayer.cpp2
-rw-r--r--src/multimedia/platform/android/wrappers/jni/androidmediaplayer_p.h1
-rw-r--r--src/multimedia/platform/pulseaudio/qpulseaudiosink.cpp8
-rw-r--r--src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol.cpp10
-rw-r--r--src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol_p.h3
-rw-r--r--src/multimedia/platform/qnx/mediaplayer/mmrendererutil.cpp75
-rw-r--r--src/multimedia/platform/qnx/mediaplayer/mmrendererutil_p.h3
-rw-r--r--src/multimedia/platform/qplatformaudiooutput_p.h3
-rw-r--r--src/multimedia/platform/qplatformmediaplayer.cpp18
-rw-r--r--src/multimedia/playback/qmediaplayer_p.h2
-rw-r--r--tests/auto/unit/mockbackend/qmockaudiooutput.h10
-rw-r--r--tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp38
28 files changed, 7 insertions, 413 deletions
diff --git a/examples/multimediawidgets/player/player.cpp b/examples/multimediawidgets/player/player.cpp
index a5a0922ba..03420f3f1 100644
--- a/examples/multimediawidgets/player/player.cpp
+++ b/examples/multimediawidgets/player/player.cpp
@@ -70,7 +70,6 @@ Player::Player(QWidget *parent)
m_player = new QMediaPlayer(this);
m_audioOutput = new QAudioOutput(this);
m_player->setAudioOutput(m_audioOutput);
- m_audioOutput->setAudioRole(QAudio::VideoRole);
//! [create-objs]
//! [2]
diff --git a/src/multimedia/audio/qaudio.cpp b/src/multimedia/audio/qaudio.cpp
index e45a67868..0d7fd8dea 100644
--- a/src/multimedia/audio/qaudio.cpp
+++ b/src/multimedia/audio/qaudio.cpp
@@ -87,26 +87,6 @@ QT_BEGIN_NAMESPACE
*/
/*!
- \enum QAudio::Role
-
- This enum describes the role of an audio stream.
-
- \value UnknownRole The role is unknown or undefined
- \value MusicRole Music
- \value VideoRole Soundtrack from a movie or a video
- \value VoiceCommunicationRole Voice communications, such as telephony
- \value AlarmRole Alarm
- \value NotificationRole Notification, such as an incoming e-mail or a chat request
- \value RingtoneRole Ringtone
- \value AccessibilityRole For accessibility, such as with a screen reader
- \value SonificationRole Sonification, such as with user interface sounds
- \value GameRole Game audio
-
- \since 5.6
- \sa QMediaPlayer::setAudioRole()
-*/
-
-/*!
\enum QAudio::VolumeScale
This enum defines the different audio volume scales.
@@ -280,45 +260,6 @@ QDebug operator<<(QDebug dbg, QAudio::State state)
return dbg;
}
-QDebug operator<<(QDebug dbg, QAudio::Role role)
-{
- QDebugStateSaver saver(dbg);
- dbg.nospace();
- switch (role) {
- case QAudio::UnknownRole:
- dbg << "UnknownRole";
- break;
- case QAudio::AccessibilityRole:
- dbg << "AccessibilityRole";
- break;
- case QAudio::AlarmRole:
- dbg << "AlarmRole";
- break;
- case QAudio::GameRole:
- dbg << "GameRole";
- break;
- case QAudio::MusicRole:
- dbg << "MusicRole";
- break;
- case QAudio::NotificationRole:
- dbg << "NotificationRole";
- break;
- case QAudio::RingtoneRole:
- dbg << "RingtoneRole";
- break;
- case QAudio::SonificationRole:
- dbg << "SonificationRole";
- break;
- case QAudio::VideoRole:
- dbg << "VideoRole";
- break;
- case QAudio::VoiceCommunicationRole:
- dbg << "VoiceCommunicationRole";
- break;
- }
- return dbg;
-}
-
QDebug operator<<(QDebug dbg, QAudio::VolumeScale scale)
{
QDebugStateSaver saver(dbg);
diff --git a/src/multimedia/audio/qaudio.h b/src/multimedia/audio/qaudio.h
index c7852ecfc..ad824761d 100644
--- a/src/multimedia/audio/qaudio.h
+++ b/src/multimedia/audio/qaudio.h
@@ -56,19 +56,6 @@ namespace QAudio
enum Error { NoError, OpenError, IOError, UnderrunError, FatalError };
enum State { ActiveState, SuspendedState, StoppedState, IdleState };
- enum Role {
- UnknownRole,
- MusicRole,
- VideoRole,
- VoiceCommunicationRole,
- AlarmRole,
- NotificationRole,
- RingtoneRole,
- AccessibilityRole,
- SonificationRole,
- GameRole,
- };
-
enum VolumeScale {
LinearVolumeScale,
CubicVolumeScale,
@@ -82,7 +69,6 @@ namespace QAudio
#ifndef QT_NO_DEBUG_STREAM
Q_MULTIMEDIA_EXPORT QDebug operator<<(QDebug dbg, QAudio::Error error);
Q_MULTIMEDIA_EXPORT QDebug operator<<(QDebug dbg, QAudio::State state);
-Q_MULTIMEDIA_EXPORT QDebug operator<<(QDebug dbg, QAudio::Role role);
Q_MULTIMEDIA_EXPORT QDebug operator<<(QDebug dbg, QAudio::VolumeScale role);
#endif
diff --git a/src/multimedia/audio/qaudiooutput.cpp b/src/multimedia/audio/qaudiooutput.cpp
index 2f03f78b2..95cdc02e7 100644
--- a/src/multimedia/audio/qaudiooutput.cpp
+++ b/src/multimedia/audio/qaudiooutput.cpp
@@ -152,23 +152,6 @@ bool QAudioOutput::isMuted() const
return d->muted;
}
-QAudio::Role QAudioOutput::audioRole() const
-{
- return d->role;
-}
-
-/*!
- Returns a list of supported audio roles.
-
- If setting the audio role is not supported, an empty list is returned.
-
- \sa audioRole
-*/
-QList<QAudio::Role> QAudioOutput::supportedAudioRoles() const
-{
- return d->supportedAudioRoles();
-}
-
void QAudioOutput::setMuted(bool muted)
{
if (d->muted == muted)
@@ -178,15 +161,4 @@ void QAudioOutput::setMuted(bool muted)
emit mutedChanged(muted);
}
-void QAudioOutput::setAudioRole(QAudio::Role audioRole)
-{
- if (d->role == audioRole)
- return;
- if (!d->supportedAudioRoles().contains(audioRole))
- return;
- d->role = audioRole;
- d->setAudioRole(d->role);
- emit audioRoleChanged(d->role);
-}
-
#include "moc_qaudiooutput.cpp"
diff --git a/src/multimedia/audio/qaudiooutput.h b/src/multimedia/audio/qaudiooutput.h
index 9a4cf3998..0f1461a55 100644
--- a/src/multimedia/audio/qaudiooutput.h
+++ b/src/multimedia/audio/qaudiooutput.h
@@ -55,7 +55,6 @@ class Q_MULTIMEDIA_EXPORT QAudioOutput : public QObject
Q_PROPERTY(QAudioDevice device READ device WRITE setDevice NOTIFY deviceChanged)
Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
Q_PROPERTY(bool muted READ isMuted WRITE setMuted NOTIFY mutedChanged)
- Q_PROPERTY(QAudio::Role audioRole READ audioRole WRITE setAudioRole NOTIFY audioRoleChanged)
public:
explicit QAudioOutput(QObject *parent = nullptr);
@@ -65,21 +64,16 @@ public:
QAudioDevice device() const;
float volume() const;
bool isMuted() const;
- QAudio::Role audioRole() const;
-
- QList<QAudio::Role> supportedAudioRoles() const;
public Q_SLOTS:
void setDevice(const QAudioDevice &device);
void setVolume(float volume);
void setMuted(bool muted);
- void setAudioRole(QAudio::Role audioRole);
Q_SIGNALS:
void deviceChanged();
void volumeChanged(float volume);
void mutedChanged(bool muted);
- void audioRoleChanged(QAudio::Role role);
public:
QPlatformAudioOutput *handle() const { return d; }
diff --git a/src/multimedia/audio/qaudiosink.cpp b/src/multimedia/audio/qaudiosink.cpp
index 10ee5e470..33630306b 100644
--- a/src/multimedia/audio/qaudiosink.cpp
+++ b/src/multimedia/audio/qaudiosink.cpp
@@ -334,26 +334,6 @@ qreal QAudioSink::volume() const
}
/*!
- \property QMediaPlayer::audioRole
- \brief the role of the audio stream played by the media player.
-
- It can be set to specify the type of audio being played, allowing the system to make
- appropriate decisions when it comes to volume, routing or post-processing.
-
- The audio role must be set before calling setMedia().
-*/
-
-QAudio::Role QAudioSink::audioRole() const
-{
- return d->role();
-}
-
-void QAudioSink::setAudioRole(QAudio::Role role)
-{
- d->setRole(role);
-}
-
-/*!
\fn QAudioSink::stateChanged(QAudio::State state)
This signal is emitted when the device \a state has changed.
This is the current state of the audio output.
diff --git a/src/multimedia/audio/qaudiosink.h b/src/multimedia/audio/qaudiosink.h
index c3fc30bf0..049011e98 100644
--- a/src/multimedia/audio/qaudiosink.h
+++ b/src/multimedia/audio/qaudiosink.h
@@ -91,9 +91,6 @@ public:
void setVolume(qreal);
qreal volume() const;
- QAudio::Role audioRole() const;
- void setAudioRole(QAudio::Role role);
-
Q_SIGNALS:
void stateChanged(QAudio::State state);
diff --git a/src/multimedia/audio/qaudiosystem.cpp b/src/multimedia/audio/qaudiosystem.cpp
index 36f4abcb0..5c43b68f6 100644
--- a/src/multimedia/audio/qaudiosystem.cpp
+++ b/src/multimedia/audio/qaudiosystem.cpp
@@ -141,11 +141,6 @@ QT_BEGIN_NAMESPACE
Returns the volume in the range 0.0 and 1.0.
*/
-void QPlatformAudioSink::setRole(QAudio::Role role)
-{
- m_role = role;
-}
-
/*!
\fn QPlatformAudioSink::errorChanged(QAudio::Error error)
This signal is emitted when the \a error state has changed.
diff --git a/src/multimedia/audio/qaudiosystem_p.h b/src/multimedia/audio/qaudiosystem_p.h
index 2adfcd0f2..ae1c54dde 100644
--- a/src/multimedia/audio/qaudiosystem_p.h
+++ b/src/multimedia/audio/qaudiosystem_p.h
@@ -84,16 +84,12 @@ public:
virtual QAudioFormat format() const = 0;
virtual void setVolume(qreal) {}
virtual qreal volume() const { return 1.0; }
- QAudio::Role role() const { return m_role; }
- virtual void setRole(QAudio::Role role);
QElapsedTimer elapsedTime;
Q_SIGNALS:
void errorChanged(QAudio::Error error);
void stateChanged(QAudio::State state);
-protected:
- QAudio::Role m_role = QAudio::UnknownRole;
};
class QPlatformAudioSource : public QObject
diff --git a/src/multimedia/audio/qsoundeffect.cpp b/src/multimedia/audio/qsoundeffect.cpp
index 126d8a727..44627921b 100644
--- a/src/multimedia/audio/qsoundeffect.cpp
+++ b/src/multimedia/audio/qsoundeffect.cpp
@@ -99,7 +99,6 @@ public:
qreal m_volume = 1.0;
bool m_sampleReady = false;
qint64 m_offset = 0;
- QAudio::Role m_role;
QAudioDevice m_audioDevice;
};
@@ -108,7 +107,6 @@ QSoundEffectPrivate::QSoundEffectPrivate(QSoundEffect *q, const QAudioDevice &au
, q_ptr(q)
, m_audioDevice(audioDevice)
{
- m_role = QAudio::UnknownRole;
open(QIODevice::ReadOnly);
}
@@ -724,47 +722,6 @@ QSoundEffect::Status QSoundEffect::status() const
This setting will be ignored on platforms that do not
support audio categories.
*/
-/*!
- Returns the audio role for this sound effect.
-
- Some platforms can perform different audio routing
- for different roles, or may allow the user to
- set different volume levels for different roles.
-
- This setting will be ignored on platforms that do not
- support audio roles.
-
- \sa setRole()
-*/
-QAudio::Role QSoundEffect::audioRole() const
-{
- return d->m_role;
-}
-
-/*!
- Sets the \e category of this sound effect to \a category.
-
- Some platforms can perform different audio routing
- for different categories, or may allow the user to
- set different volume levels for different categories.
-
- This setting will be ignored on platforms that do not
- support audio categories.
-
- If this setting is changed while a sound effect is playing
- it will only take effect when the sound effect has stopped
- playing.
-
- \sa category()
- */
-void QSoundEffect::setAudioRole(QAudio::Role role)
-{
- if (d->m_role != role && !d->m_playing) {
- d->m_role = role;
- emit audioRoleChanged();
- }
-}
-
/*!
\qmlmethod QtMultimedia::SoundEffect::stop()
diff --git a/src/multimedia/audio/qsoundeffect.h b/src/multimedia/audio/qsoundeffect.h
index fef49fb34..155084249 100644
--- a/src/multimedia/audio/qsoundeffect.h
+++ b/src/multimedia/audio/qsoundeffect.h
@@ -64,7 +64,6 @@ class Q_MULTIMEDIA_EXPORT QSoundEffect : public QObject
Q_PROPERTY(bool muted READ isMuted WRITE setMuted NOTIFY mutedChanged)
Q_PROPERTY(bool playing READ isPlaying NOTIFY playingChanged)
Q_PROPERTY(Status status READ status NOTIFY statusChanged)
- Q_PROPERTY(QAudio::Role audioRole READ audioRole WRITE setAudioRole NOTIFY audioRoleChanged)
public:
enum Loop
@@ -106,9 +105,6 @@ public:
bool isPlaying() const;
Status status() const;
- QAudio::Role audioRole() const;
- void setAudioRole(QAudio::Role);
-
Q_SIGNALS:
void sourceChanged();
void loopCountChanged();
@@ -118,7 +114,6 @@ Q_SIGNALS:
void loadedChanged();
void playingChanged();
void statusChanged();
- void audioRoleChanged();
public Q_SLOTS:
void play();
diff --git a/src/multimedia/platform/android/audio/qandroidaudiosink.cpp b/src/multimedia/platform/android/audio/qandroidaudiosink.cpp
index 48a536819..1a0b622a3 100644
--- a/src/multimedia/platform/android/audio/qandroidaudiosink.cpp
+++ b/src/multimedia/platform/android/audio/qandroidaudiosink.cpp
@@ -270,43 +270,6 @@ qreal QAndroidAudioSink::volume() const
return m_volume;
}
-void QAndroidAudioSink::setRole(QAudio::Role role)
-{
- QPlatformAudioSink::setRole(role);
-#ifdef ANDROID
- switch (role) {
- case QAudio::MusicRole:
- Q_FALLTHROUGH();
- case QAudio::VideoRole:
- m_streamType = SL_ANDROID_STREAM_MEDIA;
- break;
- case QAudio::VoiceCommunicationRole:
- m_streamType = SL_ANDROID_STREAM_VOICE;
- case QAudio::NotificationRole:
- m_streamType = SL_ANDROID_STREAM_NOTIFICATION;
- break;
- case QAudio::AlarmRole:
- m_streamType = SL_ANDROID_STREAM_ALARM;
- break;
- case QAudio::RingtoneRole:
- m_streamType = SL_ANDROID_STREAM_RING;
- break;
- case QAudio::AccessibilityRole:
-#define STREAM_ACCESSIBILITY 0xa // AudioManager.STREAM_ACCESSIBILITY
- m_streamType = STREAM_ACCESSIBILITY;
- case QAudio::SonificationRole:
- Q_FALLTHROUGH();
- case QAudio::GameRole:
- Q_FALLTHROUGH();
- case QAudio::UnknownRole:
- m_streamType = -1;
- break;
- }
-
- m_startRequiresInit = true;
-#endif // ANDROID
-}
-
void QAndroidAudioSink::onEOSEvent()
{
if (m_state != QAudio::ActiveState)
diff --git a/src/multimedia/platform/android/audio/qandroidaudiosink_p.h b/src/multimedia/platform/android/audio/qandroidaudiosink_p.h
index c8cf2b91a..40b964dc2 100644
--- a/src/multimedia/platform/android/audio/qandroidaudiosink_p.h
+++ b/src/multimedia/platform/android/audio/qandroidaudiosink_p.h
@@ -86,8 +86,6 @@ public:
void setVolume(qreal volume) override;
qreal volume() const override;
- void setRole(QAudio::Role role) override;
-
private:
friend class SLIODevicePrivate;
diff --git a/src/multimedia/platform/android/common/qandroidaudiooutput_p.h b/src/multimedia/platform/android/common/qandroidaudiooutput_p.h
index 65e40a300..e17f158fc 100644
--- a/src/multimedia/platform/android/common/qandroidaudiooutput_p.h
+++ b/src/multimedia/platform/android/common/qandroidaudiooutput_p.h
@@ -58,19 +58,6 @@ class Q_MULTIMEDIA_EXPORT QAndroidAudioOutput : public QPlatformAudioOutput
{
public:
QAndroidAudioOutput(QAudioOutput *qq) : QPlatformAudioOutput(qq) {}
-
- virtual QList<QAudio::Role> supportedAudioRoles() const {
- return QList<QAudio::Role>()
- << QAudio::VoiceCommunicationRole
- << QAudio::MusicRole
- << QAudio::VideoRole
- << QAudio::SonificationRole
- << QAudio::AlarmRole
- << QAudio::NotificationRole
- << QAudio::RingtoneRole
- << QAudio::AccessibilityRole
- << QAudio::GameRole;
- }
};
QT_END_NAMESPACE
diff --git a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol.cpp b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol.cpp
index 85b4e3df4..7aff61200 100644
--- a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol.cpp
+++ b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol.cpp
@@ -220,11 +220,6 @@ void QAndroidMediaPlayerControl::setMuted(bool muted)
mPendingMute = -1;
}
-void QAndroidMediaPlayerControl::setAudioRole(QAudio::Role role)
-{
- mMediaPlayer->setAudioRole(role);
-}
-
QMediaMetaData QAndroidMediaPlayerControl::metaData() const
{
return QAndroidMetaData::extractMetadata(mMediaContent);
@@ -400,7 +395,6 @@ void QAndroidMediaPlayerControl::setAudioOutput(QPlatformAudioOutput *output)
// #### Implement device changes: connect(m_audioOutput->q, &QAudioOutput::deviceChanged, this, XXXX);
connect(m_audioOutput->q, &QAudioOutput::volumeChanged, this, &QAndroidMediaPlayerControl::setVolume);
connect(m_audioOutput->q, &QAudioOutput::mutedChanged, this, &QAndroidMediaPlayerControl::setMuted);
- connect(m_audioOutput->q, &QAudioOutput::audioRoleChanged, this, &QAndroidMediaPlayerControl::setAudioRole);
}
}
diff --git a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol_p.h b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol_p.h
index 3bbc20260..cf5553a7e 100644
--- a/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol_p.h
+++ b/src/multimedia/platform/android/mediaplayer/qandroidmediaplayercontrol_p.h
@@ -99,7 +99,6 @@ public:
private Q_SLOTS:
void setVolume(float volume);
void setMuted(bool muted);
- void setAudioRole(QAudio::Role role);
void onVideoOutputReady(bool ready);
void onError(qint32 what, qint32 extra);
void onInfo(qint32 what, qint32 extra);
diff --git a/src/multimedia/platform/android/wrappers/jni/androidmediaplayer.cpp b/src/multimedia/platform/android/wrappers/jni/androidmediaplayer.cpp
index d60702cc0..26da7ed3d 100644
--- a/src/multimedia/platform/android/wrappers/jni/androidmediaplayer.cpp
+++ b/src/multimedia/platform/android/wrappers/jni/androidmediaplayer.cpp
@@ -241,6 +241,7 @@ void AndroidMediaPlayer::setDisplay(AndroidSurfaceTexture *surfaceTexture)
surfaceTexture ? surfaceTexture->surfaceHolder() : 0);
}
+#if 0
void AndroidMediaPlayer::setAudioRole(QAudio::Role role)
{
QString r;
@@ -320,6 +321,7 @@ void AndroidMediaPlayer::setAudioRole(QAudio::Role role)
mMediaPlayer.callMethod<void>("setAudioAttributes", "(II)V", jint(type), jint(usage));
}
+#endif
static void onErrorNative(JNIEnv *env, jobject thiz, jint what, jint extra, jlong id)
{
diff --git a/src/multimedia/platform/android/wrappers/jni/androidmediaplayer_p.h b/src/multimedia/platform/android/wrappers/jni/androidmediaplayer_p.h
index 7fb6094a1..2d1e645c4 100644
--- a/src/multimedia/platform/android/wrappers/jni/androidmediaplayer_p.h
+++ b/src/multimedia/platform/android/wrappers/jni/androidmediaplayer_p.h
@@ -129,7 +129,6 @@ public:
void setVolume(int volume);
bool setPlaybackRate(qreal rate);
void setDisplay(AndroidSurfaceTexture *surfaceTexture);
- void setAudioRole(QAudio::Role role);
static bool registerNativeMethods();
diff --git a/src/multimedia/platform/pulseaudio/qpulseaudiosink.cpp b/src/multimedia/platform/pulseaudio/qpulseaudiosink.cpp
index 59543874b..99f2dc09b 100644
--- a/src/multimedia/platform/pulseaudio/qpulseaudiosink.cpp
+++ b/src/multimedia/platform/pulseaudio/qpulseaudiosink.cpp
@@ -305,6 +305,7 @@ bool QPulseAudioSink::open()
qint64 bytesPerSecond = m_format.sampleRate() * m_format.bytesPerFrame();
+#if 0
static const char *mediaRoleFromAudioRole[] = {
nullptr, // UnknownRole
"music", // MusicRole
@@ -322,6 +323,7 @@ bool QPulseAudioSink::open()
const char *r = mediaRoleFromAudioRole[m_role];
if (r)
pa_proplist_sets(propList, PA_PROP_MEDIA_ROLE, r);
+#endif
static const auto mapName = qEnvironmentVariable("QT_PA_CHANNEL_MAP");
pa_channel_map_def_t mapDef = PA_CHANNEL_MAP_DEFAULT;
@@ -360,8 +362,8 @@ bool QPulseAudioSink::open()
pa_stream_set_overflow_callback(m_stream, outputStreamOverflowCallback, this);
pa_stream_set_latency_update_callback(m_stream, outputStreamLatencyCallback, this);
- if (m_bufferSize <= 0 && m_role == QAudio::GameRoleRole)
- m_bufferSize = bytesPerSecond * LowLatencyBufferSizeMs / qint64(1000);
+// if (m_bufferSize <= 0 && m_role == QAudio::GameRoleRole)
+// m_bufferSize = bytesPerSecond * LowLatencyBufferSizeMs / qint64(1000);
pa_buffer_attr requestedBuffer;
requestedBuffer.fragsize = (uint32_t)-1;
@@ -385,7 +387,7 @@ bool QPulseAudioSink::open()
pa_threaded_mainloop_wait(pulseEngine->mainloop());
const pa_buffer_attr *buffer = pa_stream_get_buffer_attr(m_stream);
- m_periodTime = (m_role == QAudio::GameRole) ? LowLatencyPeriodTimeMs : PeriodTimeMs;
+ m_periodTime = /*(m_role == QAudio::GameRole) ? LowLatencyPeriodTimeMs :*/ PeriodTimeMs;
m_periodSize = pa_usec_to_bytes(m_periodTime*1000, &m_spec);
m_bufferSize = buffer->tlength;
m_maxBufferSize = buffer->maxlength;
diff --git a/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol.cpp b/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol.cpp
index c78f515ef..4eff994e4 100644
--- a/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol.cpp
+++ b/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol.cpp
@@ -558,16 +558,6 @@ void MmRendererMediaPlayerControl::stop()
stopInternal(StopMmRenderer);
}
-void MmRendererMediaPlayerControl::setAudioRole(QAudio::Role role)
-{
- m_role = role;
-}
-
-QList<QAudio::Role> MmRendererMediaPlayerControl::supportedAudioRoles() const
-{
- return qnxSupportedAudioRoles();
-}
-
MmRendererPlayerVideoRendererControl *MmRendererMediaPlayerControl::videoRendererControl() const
{
return m_videoRendererControl;
diff --git a/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol_p.h b/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol_p.h
index 62d7373a4..63ae3c407 100644
--- a/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol_p.h
+++ b/src/multimedia/platform/qnx/mediaplayer/mmrenderermediaplayercontrol_p.h
@@ -108,9 +108,6 @@ public:
void pause() override;
void stop() override;
- void setAudioRole(QAudio::Role role) override;
- QList<QAudio::Role> supportedAudioRoles() const override;
-
MmRendererPlayerVideoRendererControl *videoRendererControl() const;
void setVideoRendererControl(MmRendererPlayerVideoRendererControl *videoControl);
diff --git a/src/multimedia/platform/qnx/mediaplayer/mmrendererutil.cpp b/src/multimedia/platform/qnx/mediaplayer/mmrendererutil.cpp
index 8ded95bcd..89cf8489b 100644
--- a/src/multimedia/platform/qnx/mediaplayer/mmrendererutil.cpp
+++ b/src/multimedia/platform/qnx/mediaplayer/mmrendererutil.cpp
@@ -100,11 +100,6 @@ constexpr size_t countof(T (&)[N])
return N;
}
-constexpr bool inBounds(QAudio::Role r)
-{
- return r >= 0 && r < countof(roleMap);
-}
-
QString keyValueMapsLocation()
{
QByteArray qtKeyValueMaps = qgetenv("QT_KEY_VALUE_MAPS");
@@ -128,53 +123,6 @@ QJsonObject loadMapObject(const QString &keyValueMapPath)
return QJsonObject();
}
-static void loadRoleMap()
-{
- QMutexLocker locker(&roleMapMutex);
-
- if (!roleMapInitialized) {
- QJsonObject mapObject = loadMapObject("/QAudio/Role.json");
- if (!mapObject.isEmpty()) {
- // Wrapping the loads in a switch like this ensures that anyone adding
- // a new enumerator will be notified that this code must be updated. A
- // compile error will occur because the enumerator is missing from the
- // switch. A compile error will also occur if the enumerator used to
- // size the mapping table isn't updated when a new enumerator is added.
- // One or more enumerators will be outside the bounds of the array when
- // the wrong enumerator is used to size the array.
- //
- // The code loads a mapping for each enumerator because role is set
- // to UnknownRole and all the cases drop through to the next case.
-#pragma GCC diagnostic push
-#pragma GCC diagnostic error "-Wswitch"
-#define loadRoleMapping(r) \
- case QAudio::r: \
- static_assert(inBounds(QAudio::r), #r " out-of-bounds." \
- " Do you need to change the enumerator used to size the mapping table" \
- " because you added new QAudio::Role enumerators?"); \
- roleMap[QAudio::r] = mapObject.value(QLatin1String(#r)).toString();
-
- QAudio::Role role = QAudio::UnknownRole;
- switch (role) {
- loadRoleMapping(UnknownRole);
- loadRoleMapping(MusicRole);
- loadRoleMapping(VideoRole);
- loadRoleMapping(VoiceCommunicationRole);
- loadRoleMapping(AlarmRole);
- loadRoleMapping(NotificationRole);
- loadRoleMapping(RingtoneRole);
- loadRoleMapping(AccessibilityRole);
- loadRoleMapping(SonificationRole);
- loadRoleMapping(GameRole);
- }
-#undef loadRoleMapping
-#pragma GCC diagnostic pop
- }
-
- roleMapInitialized = true;
- }
-}
-
QString mmErrorMessage(const QString &msg, mmr_context_t *context, int *errorCode)
{
const mmr_error_info_t * const mmError = mmr_error_info(context);
@@ -214,27 +162,4 @@ bool checkForDrmPermission()
return false;
}
-QString qnxAudioType(QAudio::Role role)
-{
- loadRoleMap();
-
- if (role >= 0 && role < countof(roleMap))
- return roleMap[role];
- else
- return QString();
-}
-
-QList<QAudio::Role> qnxSupportedAudioRoles()
-{
- loadRoleMap();
-
- QList<QAudio::Role> result;
- for (size_t i = 0; i < countof(roleMap); ++i) {
- if (!roleMap[i].isEmpty() || (i == QAudio::UnknownRole))
- result.append(static_cast<QAudio::Role>(i));
- }
-
- return result;
-}
-
QT_END_NAMESPACE
diff --git a/src/multimedia/platform/qnx/mediaplayer/mmrendererutil_p.h b/src/multimedia/platform/qnx/mediaplayer/mmrendererutil_p.h
index 9bba99487..e1f972840 100644
--- a/src/multimedia/platform/qnx/mediaplayer/mmrendererutil_p.h
+++ b/src/multimedia/platform/qnx/mediaplayer/mmrendererutil_p.h
@@ -63,9 +63,6 @@ QString mmErrorMessage(const QString &msg, mmr_context_t *context, int * errorCo
bool checkForDrmPermission();
-QString qnxAudioType(QAudio::Role role);
-QList<QAudio::Role> qnxSupportedAudioRoles();
-
QT_END_NAMESPACE
#endif
diff --git a/src/multimedia/platform/qplatformaudiooutput_p.h b/src/multimedia/platform/qplatformaudiooutput_p.h
index 9979a6d5e..594d59ed0 100644
--- a/src/multimedia/platform/qplatformaudiooutput_p.h
+++ b/src/multimedia/platform/qplatformaudiooutput_p.h
@@ -66,14 +66,11 @@ public:
virtual void setAudioDevice(const QAudioDevice &/*device*/) {}
virtual void setMuted(bool /*muted*/) {}
virtual void setVolume(float /*volume*/) {}
- virtual void setAudioRole(QAudio::Role /*role*/) {}
- virtual QList<QAudio::Role> supportedAudioRoles() const { return {}; }
QAudioOutput *q = nullptr;
QAudioDevice device;
float volume = 1.;
bool muted = false;
- QAudio::Role role = QAudio::UnknownRole;
};
QT_END_NAMESPACE
diff --git a/src/multimedia/platform/qplatformmediaplayer.cpp b/src/multimedia/platform/qplatformmediaplayer.cpp
index 814ca7b21..21e25ec9b 100644
--- a/src/multimedia/platform/qplatformmediaplayer.cpp
+++ b/src/multimedia/platform/qplatformmediaplayer.cpp
@@ -358,24 +358,6 @@ void QPlatformMediaPlayer::error(int error, const QString &errorString)
*/
/*!
- \fn QAudio::Role QPlatformMediaPlayer::audioRole() const
-
- Returns the audio role of the media played by the media service.
-*/
-
-/*!
- \fn void QPlatformMediaPlayer::setAudioRole(QAudio::Role role)
-
- Sets the audio \a role of the media played by the media service.
-*/
-
-/*!
- \fn QList<QAudio::Role> QPlatformMediaPlayer::supportedAudioRoles() const
-
- Returns a list of audio roles that the media service supports.
-*/
-
-/*!
\fn QPlatformMediaPlayer::error(int error, const QString &errorString)
Signals that an \a error has occurred. The \a errorString provides a more detailed explanation.
diff --git a/src/multimedia/playback/qmediaplayer_p.h b/src/multimedia/playback/qmediaplayer_p.h
index f6b5a3eac..5c3282e67 100644
--- a/src/multimedia/playback/qmediaplayer_p.h
+++ b/src/multimedia/playback/qmediaplayer_p.h
@@ -89,8 +89,6 @@ public:
QMediaPlayer::Error error = QMediaPlayer::NoError;
bool autoPlay = false;
- QAudio::Role audioRole = QAudio::UnknownRole;
-
void setMedia(const QUrl &media, QIODevice *stream = nullptr);
QList<QMediaMetaData> trackMetaData(QPlatformMediaPlayer::TrackType s) const;
diff --git a/tests/auto/unit/mockbackend/qmockaudiooutput.h b/tests/auto/unit/mockbackend/qmockaudiooutput.h
index 02245a7a3..30cc46604 100644
--- a/tests/auto/unit/mockbackend/qmockaudiooutput.h
+++ b/tests/auto/unit/mockbackend/qmockaudiooutput.h
@@ -58,16 +58,6 @@ class QMockAudioOutput : public QPlatformAudioOutput
{
public:
QMockAudioOutput(QAudioOutput *qq) : QPlatformAudioOutput(qq) {}
-
- virtual QList<QAudio::Role> supportedAudioRoles() const {
- if (!hasAudioRole)
- return {};
- return QList<QAudio::Role>() << QAudio::MusicRole
- << QAudio::AlarmRole
- << QAudio::NotificationRole;
- }
-
- bool hasAudioRole = true;
};
QT_END_NAMESPACE
diff --git a/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp b/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
index 9e3c30466..4cb12b398 100644
--- a/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
+++ b/tests/auto/unit/multimedia/qmediaplayer/tst_qmediaplayer.cpp
@@ -118,7 +118,6 @@ private slots:
void testDestructor();
void testQrc_data();
void testQrc();
- void testAudioRole();
private:
void setupCommonTestData();
@@ -790,42 +789,5 @@ void tst_QMediaPlayer::testQrc()
QCOMPARE(bool(mockPlayer->mediaStream()), backendHasStream);
}
-void tst_QMediaPlayer::testAudioRole()
-{
- auto *mockAudioOutput = static_cast<QMockAudioOutput *>(mockPlayer->m_audioOutput);
- {
- mockAudioOutput->hasAudioRole = false;
-
- QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
- QVERIFY(audioOutput->supportedAudioRoles().isEmpty());
-
- QSignalSpy spy(audioOutput, SIGNAL(audioRoleChanged(QAudio::Role)));
- audioOutput->setAudioRole(QAudio::MusicRole);
- QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
- QCOMPARE(spy.count(), 0);
- }
-
- {
- mockPlayer->reset();
- mockAudioOutput->hasAudioRole = true;
- QSignalSpy spy(audioOutput, SIGNAL(audioRoleChanged(QAudio::Role)));
-
- QCOMPARE(audioOutput->audioRole(), QAudio::UnknownRole);
- QVERIFY(!audioOutput->supportedAudioRoles().isEmpty());
-
- audioOutput->setAudioRole(QAudio::MusicRole);
- QCOMPARE(audioOutput->audioRole(), QAudio::MusicRole);
- QCOMPARE(spy.count(), 1);
- QCOMPARE(qvariant_cast<QAudio::Role>(spy.last().value(0)), QAudio::MusicRole);
-
- spy.clear();
-
- audioOutput->setProperty("audioRole", QVariant::fromValue(QAudio::AlarmRole));
- QCOMPARE(qvariant_cast<QAudio::Role>(audioOutput->property("audioRole")), QAudio::AlarmRole);
- QCOMPARE(spy.count(), 1);
- QCOMPARE(qvariant_cast<QAudio::Role>(spy.last().value(0)), QAudio::AlarmRole);
- }
-}
-
QTEST_GUILESS_MAIN(tst_QMediaPlayer)
#include "tst_qmediaplayer.moc"