summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Blechmann <tim@klingt.org>2024-04-16 10:05:03 +0800
committerTim Blechmann <tim@klingt.org>2024-04-18 21:48:37 +0800
commit794ad8d72339ffdd3d22c28ccdb8abc02877ff5b (patch)
treecaee40730201b4fc558d98330a809e46a5106eef
parentcf14060511a3e23ac687b965e1a08c077f032f0d (diff)
Pulseaudio: replace toQString methods with qDebug overloads
Reduces visual noise of the tracing code and avoids run-time unicode conversions. Pick-to: 6.5 6.7 Change-Id: I083896fcd37e0fd2ebf91da90eda4ef6729dd49d Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
-rw-r--r--src/multimedia/pulseaudio/qaudioengine_pulse.cpp12
-rw-r--r--src/multimedia/pulseaudio/qpulseaudiosink.cpp3
-rw-r--r--src/multimedia/pulseaudio/qpulseaudiosource.cpp5
-rw-r--r--src/multimedia/pulseaudio/qpulsehelpers.cpp70
-rw-r--r--src/multimedia/pulseaudio/qpulsehelpers_p.h62
5 files changed, 82 insertions, 70 deletions
diff --git a/src/multimedia/pulseaudio/qaudioengine_pulse.cpp b/src/multimedia/pulseaudio/qaudioengine_pulse.cpp
index 8571ed9d8..e54356404 100644
--- a/src/multimedia/pulseaudio/qaudioengine_pulse.cpp
+++ b/src/multimedia/pulseaudio/qaudioengine_pulse.cpp
@@ -266,10 +266,8 @@ static void contextStateCallbackInit(pa_context *context, void *userdata)
{
Q_UNUSED(context);
- if (Q_UNLIKELY(qLcPulseAudioEngine().isEnabled(QtDebugMsg))) {
- QString stateStr = QPulseAudioInternal::stateToQString(pa_context_get_state(context));
- qCDebug(qLcPulseAudioEngine) << stateStr;
- }
+ if (Q_UNLIKELY(qLcPulseAudioEngine().isEnabled(QtDebugMsg)))
+ qCDebug(qLcPulseAudioEngine) << pa_context_get_state(context);
QPulseAudioEngine *pulseEngine = reinterpret_cast<QPulseAudioEngine*>(userdata);
pa_threaded_mainloop_signal(pulseEngine->mainloop(), 0);
@@ -280,10 +278,8 @@ static void contextStateCallback(pa_context *c, void *userdata)
QPulseAudioEngine *self = reinterpret_cast<QPulseAudioEngine*>(userdata);
pa_context_state_t state = pa_context_get_state(c);
- if (Q_UNLIKELY(qLcPulseAudioEngine().isEnabled(QtDebugMsg))) {
- QString stateStr = QPulseAudioInternal::stateToQString(state);
- qCDebug(qLcPulseAudioEngine) << stateStr;
- }
+ if (Q_UNLIKELY(qLcPulseAudioEngine().isEnabled(QtDebugMsg)))
+ qCDebug(qLcPulseAudioEngine) << state;
if (state == PA_CONTEXT_FAILED)
QMetaObject::invokeMethod(self, "onContextFailed", Qt::QueuedConnection);
diff --git a/src/multimedia/pulseaudio/qpulseaudiosink.cpp b/src/multimedia/pulseaudio/qpulseaudiosink.cpp
index b974d8d1d..610677eeb 100644
--- a/src/multimedia/pulseaudio/qpulseaudiosink.cpp
+++ b/src/multimedia/pulseaudio/qpulseaudiosink.cpp
@@ -250,8 +250,7 @@ bool QPulseAudioSink::open()
if (Q_UNLIKELY(qLcPulseAudioOut().isEnabled(QtDebugMsg))) {
qCDebug(qLcPulseAudioOut) << "Opening stream with.";
- qCDebug(qLcPulseAudioOut) << "\tFormat: "
- << QPulseAudioInternal::sampleFormatToQString(spec.format);
+ qCDebug(qLcPulseAudioOut) << "\tFormat: " << spec.format;
qCDebug(qLcPulseAudioOut) << "\tRate: " << spec.rate;
qCDebug(qLcPulseAudioOut) << "\tChannels: " << spec.channels;
qCDebug(qLcPulseAudioOut) << "\tFrame size: " << pa_frame_size(&spec);
diff --git a/src/multimedia/pulseaudio/qpulseaudiosource.cpp b/src/multimedia/pulseaudio/qpulseaudiosource.cpp
index 6eabb074e..488daa48b 100644
--- a/src/multimedia/pulseaudio/qpulseaudiosource.cpp
+++ b/src/multimedia/pulseaudio/qpulseaudiosource.cpp
@@ -33,7 +33,7 @@ static void inputStreamStateCallback(pa_stream *stream, void *userdata)
Q_UNUSED(userdata);
pa_stream_state_t state = pa_stream_get_state(stream);
- qCDebug(qLcPulseAudioIn) << "Stream state: " << QPulseAudioInternal::stateToQString(state);
+ qCDebug(qLcPulseAudioIn) << "Stream state: " << state;
switch (state) {
case PA_STREAM_CREATING:
break;
@@ -204,8 +204,7 @@ bool QPulseAudioSource::open()
QStringLiteral("QtmPulseStream-%1-%2").arg(::getpid()).arg(quintptr(this)).toUtf8();
if (Q_UNLIKELY(qLcPulseAudioIn().isEnabled(QtDebugMsg))) {
- qCDebug(qLcPulseAudioIn) << "Format: "
- << QPulseAudioInternal::sampleFormatToQString(spec.format);
+ qCDebug(qLcPulseAudioIn) << "Format: " << spec.format;
qCDebug(qLcPulseAudioIn) << "Rate: " << spec.rate;
qCDebug(qLcPulseAudioIn) << "Channels: " << spec.channels;
qCDebug(qLcPulseAudioIn) << "Frame size: " << pa_frame_size(&spec);
diff --git a/src/multimedia/pulseaudio/qpulsehelpers.cpp b/src/multimedia/pulseaudio/qpulsehelpers.cpp
index 69e874f06..bc03e133f 100644
--- a/src/multimedia/pulseaudio/qpulsehelpers.cpp
+++ b/src/multimedia/pulseaudio/qpulsehelpers.cpp
@@ -211,4 +211,74 @@ QUtf8StringView currentError(const pa_stream *stream)
} // namespace QPulseAudioInternal
+static QLatin1StringView stateToQStringView(pa_stream_state_t state)
+{
+ using namespace Qt::StringLiterals;
+ switch (state)
+ {
+ case PA_STREAM_UNCONNECTED: return "Unconnected"_L1;
+ case PA_STREAM_CREATING: return "Creating"_L1;
+ case PA_STREAM_READY: return "Ready"_L1;
+ case PA_STREAM_FAILED: return "Failed"_L1;
+ case PA_STREAM_TERMINATED: return "Terminated"_L1;
+ default: Q_UNREACHABLE_RETURN("Unknown stream state"_L1);
+ }
+}
+
+static QLatin1StringView sampleFormatToQStringView(pa_sample_format format)
+{
+ using namespace Qt::StringLiterals;
+ switch (format)
+ {
+ case PA_SAMPLE_U8: return "Unsigned 8 Bit PCM."_L1;
+ case PA_SAMPLE_ALAW: return "8 Bit a-Law "_L1;
+ case PA_SAMPLE_ULAW: return "8 Bit mu-Law"_L1;
+ case PA_SAMPLE_S16LE: return "Signed 16 Bit PCM, little endian (PC)."_L1;
+ case PA_SAMPLE_S16BE: return "Signed 16 Bit PCM, big endian."_L1;
+ case PA_SAMPLE_FLOAT32LE: return "32 Bit IEEE floating point, little endian (PC), range -1.0 to 1.0"_L1;
+ case PA_SAMPLE_FLOAT32BE: return "32 Bit IEEE floating point, big endian, range -1.0 to 1.0"_L1;
+ case PA_SAMPLE_S32LE: return "Signed 32 Bit PCM, little endian (PC)."_L1;
+ case PA_SAMPLE_S32BE: return "Signed 32 Bit PCM, big endian."_L1;
+ case PA_SAMPLE_S24LE: return "Signed 24 Bit PCM packed, little endian (PC)."_L1;
+ case PA_SAMPLE_S24BE: return "Signed 24 Bit PCM packed, big endian."_L1;
+ case PA_SAMPLE_S24_32LE: return "Signed 24 Bit PCM in LSB of 32 Bit words, little endian (PC)."_L1;
+ case PA_SAMPLE_S24_32BE: return "Signed 24 Bit PCM in LSB of 32 Bit words, big endian."_L1;
+ case PA_SAMPLE_MAX: return "Upper limit of valid sample types."_L1;
+ case PA_SAMPLE_INVALID: return "Invalid sample format"_L1;
+ default: Q_UNREACHABLE_RETURN("Unknown sample format"_L1);
+ }
+}
+
+static QLatin1StringView stateToQStringView(pa_context_state_t state)
+{
+ using namespace Qt::StringLiterals;
+ switch (state)
+ {
+ case PA_CONTEXT_UNCONNECTED: return "Unconnected"_L1;
+ case PA_CONTEXT_CONNECTING: return "Connecting"_L1;
+ case PA_CONTEXT_AUTHORIZING: return "Authorizing"_L1;
+ case PA_CONTEXT_SETTING_NAME: return "Setting Name"_L1;
+ case PA_CONTEXT_READY: return "Ready"_L1;
+ case PA_CONTEXT_FAILED: return "Failed"_L1;
+ case PA_CONTEXT_TERMINATED: return "Terminated"_L1;
+ default: Q_UNREACHABLE_RETURN("Unknown context state"_L1);
+ }
+}
+
+
+QDebug operator<<(QDebug dbg, pa_stream_state_t state)
+{
+ return dbg << stateToQStringView(state);
+}
+
+QDebug operator<<(QDebug dbg, pa_sample_format format)
+{
+ return dbg << sampleFormatToQStringView(format);
+}
+
+QDebug operator<<(QDebug dbg, pa_context_state_t state)
+{
+ return dbg << stateToQStringView(state);
+}
+
QT_END_NAMESPACE
diff --git a/src/multimedia/pulseaudio/qpulsehelpers_p.h b/src/multimedia/pulseaudio/qpulsehelpers_p.h
index 8ea1bd259..d271fde48 100644
--- a/src/multimedia/pulseaudio/qpulsehelpers_p.h
+++ b/src/multimedia/pulseaudio/qpulsehelpers_p.h
@@ -19,6 +19,7 @@
#include <qaudioformat.h>
#include <pulse/pulseaudio.h>
#include <QtCore/QLoggingCategory>
+#include <QtCore/qdebug.h>
QT_BEGIN_NAMESPACE
@@ -40,68 +41,15 @@ QAudioFormat sampleSpecToAudioFormat(const pa_sample_spec &spec);
pa_channel_map channelMapForAudioFormat(const QAudioFormat &format);
QAudioFormat::ChannelConfig channelConfigFromMap(const pa_channel_map &map);
-static inline QString stateToQString(pa_stream_state_t state)
-{
- using namespace Qt::StringLiterals;
- switch (state)
- {
- case PA_STREAM_UNCONNECTED: return "Unconnected"_L1;
- case PA_STREAM_CREATING: return "Creating"_L1;
- case PA_STREAM_READY: return "Ready"_L1;
- case PA_STREAM_FAILED: return "Failed"_L1;
- case PA_STREAM_TERMINATED: return "Terminated"_L1;
- }
-
- return u"Unknown state: %0"_s.arg(int(state));
-}
-
-static inline QString sampleFormatToQString(pa_sample_format format)
-{
- using namespace Qt::StringLiterals;
- switch (format)
- {
- case PA_SAMPLE_U8: return "Unsigned 8 Bit PCM."_L1;
- case PA_SAMPLE_ALAW: return "8 Bit a-Law "_L1;
- case PA_SAMPLE_ULAW: return "8 Bit mu-Law"_L1;
- case PA_SAMPLE_S16LE: return "Signed 16 Bit PCM, little endian (PC)."_L1;
- case PA_SAMPLE_S16BE: return "Signed 16 Bit PCM, big endian."_L1;
- case PA_SAMPLE_FLOAT32LE: return "32 Bit IEEE floating point, little endian (PC), range -1.0 to 1.0"_L1;
- case PA_SAMPLE_FLOAT32BE: return "32 Bit IEEE floating point, big endian, range -1.0 to 1.0"_L1;
- case PA_SAMPLE_S32LE: return "Signed 32 Bit PCM, little endian (PC)."_L1;
- case PA_SAMPLE_S32BE: return "Signed 32 Bit PCM, big endian."_L1;
- case PA_SAMPLE_S24LE: return "Signed 24 Bit PCM packed, little endian (PC)."_L1;
- case PA_SAMPLE_S24BE: return "Signed 24 Bit PCM packed, big endian."_L1;
- case PA_SAMPLE_S24_32LE: return "Signed 24 Bit PCM in LSB of 32 Bit words, little endian (PC)."_L1;
- case PA_SAMPLE_S24_32BE: return "Signed 24 Bit PCM in LSB of 32 Bit words, big endian."_L1;
- case PA_SAMPLE_MAX: return "Upper limit of valid sample types."_L1;
- case PA_SAMPLE_INVALID: return "Invalid sample format"_L1;
- }
-
- return u"Invalid value: %0"_s.arg(int(format));
-}
-
-static inline QString stateToQString(pa_context_state_t state)
-{
- using namespace Qt::StringLiterals;
- switch (state)
- {
- case PA_CONTEXT_UNCONNECTED: return "Unconnected"_L1;
- case PA_CONTEXT_CONNECTING: return "Connecting"_L1;
- case PA_CONTEXT_AUTHORIZING: return "Authorizing"_L1;
- case PA_CONTEXT_SETTING_NAME: return "Setting Name"_L1;
- case PA_CONTEXT_READY: return "Ready"_L1;
- case PA_CONTEXT_FAILED: return "Failed"_L1;
- case PA_CONTEXT_TERMINATED: return "Terminated"_L1;
- }
-
- return u"Unknown state: %0"_s.arg(int(state));
-}
-
QUtf8StringView currentError(const pa_context *);
QUtf8StringView currentError(const pa_stream *);
} // namespace QPulseAudioInternal
+QDebug operator<<(QDebug, pa_stream_state_t);
+QDebug operator<<(QDebug, pa_sample_format);
+QDebug operator<<(QDebug, pa_context_state_t);
+
QT_END_NAMESPACE
#endif