summaryrefslogtreecommitdiff
path: root/src/multimedia/audio
diff options
context:
space:
mode:
Diffstat (limited to 'src/multimedia/audio')
-rw-r--r--src/multimedia/audio/qaudio.cpp61
-rw-r--r--src/multimedia/audio/qaudio.h15
-rw-r--r--src/multimedia/audio/qaudiobuffer_p.h11
3 files changed, 87 insertions, 0 deletions
diff --git a/src/multimedia/audio/qaudio.cpp b/src/multimedia/audio/qaudio.cpp
index 8b452a118..45540a2b9 100644
--- a/src/multimedia/audio/qaudio.cpp
+++ b/src/multimedia/audio/qaudio.cpp
@@ -42,12 +42,14 @@ static void qRegisterAudioMetaTypes()
qRegisterMetaType<QAudio::Error>();
qRegisterMetaType<QAudio::State>();
qRegisterMetaType<QAudio::Mode>();
+ qRegisterMetaType<QAudio::Role>();
}
Q_CONSTRUCTOR_FUNCTION(qRegisterAudioMetaTypes)
/*!
\namespace QAudio
+ \ingroup multimedia-namespaces
\brief The QAudio namespace contains enums used by the audio classes.
\inmodule QtMultimedia
\ingroup multimedia
@@ -83,6 +85,26 @@ Q_CONSTRUCTOR_FUNCTION(qRegisterAudioMetaTypes)
\value AudioInput audio input device
*/
+/*!
+ \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()
+*/
+
#ifndef QT_NO_DEBUG_STREAM
QDebug operator<<(QDebug dbg, QAudio::Error error)
{
@@ -143,6 +165,45 @@ QDebug operator<<(QDebug dbg, QAudio::Mode mode)
}
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;
+}
#endif
diff --git a/src/multimedia/audio/qaudio.h b/src/multimedia/audio/qaudio.h
index 63953145c..2ee66bcc1 100644
--- a/src/multimedia/audio/qaudio.h
+++ b/src/multimedia/audio/qaudio.h
@@ -51,12 +51,26 @@ namespace QAudio
enum Error { NoError, OpenError, IOError, UnderrunError, FatalError };
enum State { ActiveState, SuspendedState, StoppedState, IdleState };
enum Mode { AudioInput, AudioOutput };
+
+ enum Role {
+ UnknownRole,
+ MusicRole,
+ VideoRole,
+ VoiceCommunicationRole,
+ AlarmRole,
+ NotificationRole,
+ RingtoneRole,
+ AccessibilityRole,
+ SonificationRole,
+ GameRole
+ };
}
#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::Mode mode);
+Q_MULTIMEDIA_EXPORT QDebug operator<<(QDebug dbg, QAudio::Role role);
#endif
QT_END_NAMESPACE
@@ -64,5 +78,6 @@ QT_END_NAMESPACE
Q_DECLARE_METATYPE(QAudio::Error)
Q_DECLARE_METATYPE(QAudio::State)
Q_DECLARE_METATYPE(QAudio::Mode)
+Q_DECLARE_METATYPE(QAudio::Role)
#endif // QAUDIO_H
diff --git a/src/multimedia/audio/qaudiobuffer_p.h b/src/multimedia/audio/qaudiobuffer_p.h
index 98e2a1868..a98d6d3bf 100644
--- a/src/multimedia/audio/qaudiobuffer_p.h
+++ b/src/multimedia/audio/qaudiobuffer_p.h
@@ -34,6 +34,17 @@
#ifndef QAUDIOBUFFER_P_H
#define QAUDIOBUFFER_P_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include <qtmultimediadefs.h>
#include <qmultimedia.h>