diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/qmmp/audioparameters.cpp | 42 | ||||
| -rw-r--r-- | src/qmmp/audioparameters.h | 2 | ||||
| -rw-r--r-- | src/qmmp/outputwriter.cpp | 9 |
3 files changed, 46 insertions, 7 deletions
diff --git a/src/qmmp/audioparameters.cpp b/src/qmmp/audioparameters.cpp index d634cb4f4..786dcfade 100644 --- a/src/qmmp/audioparameters.cpp +++ b/src/qmmp/audioparameters.cpp @@ -18,6 +18,7 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ +#include <QMap> #include "audioparameters.h" AudioParameters::AudioParameters() @@ -85,6 +86,47 @@ int AudioParameters::sampleSize() const return m_sz; } +const QString AudioParameters::toString() const +{ + static const struct + { + Qmmp::AudioFormat format; + QString name; + + } + format_names [] = + { + { Qmmp::PCM_S8, "s8" }, + { Qmmp::PCM_U8, "u8" }, + { Qmmp::PCM_S16LE, "s16le" }, + { Qmmp::PCM_S16BE, "s16be" }, + { Qmmp::PCM_U16LE, "u16le" }, + { Qmmp::PCM_U16BE, "u16be" }, + { Qmmp::PCM_S24LE, "s24le" }, + { Qmmp::PCM_S24BE, "s24be" }, + { Qmmp::PCM_U24LE, "u24le" }, + { Qmmp::PCM_U24BE, "u24be" }, + { Qmmp::PCM_S32LE, "s32le" }, + { Qmmp::PCM_S32BE, "s32be" }, + { Qmmp::PCM_U32LE, "u32le" }, + { Qmmp::PCM_U32BE, "u32be" }, + { Qmmp::PCM_FLOAT, "float" }, + { Qmmp::PCM_UNKNOWM, QString() } + }; + + QString name = "unknown"; + for(int i = 0; format_names[i].format != Qmmp::PCM_UNKNOWM; ++i) + { + if(m_format == format_names[i].format) + { + name = format_names[i].name; + break; + } + } + + return QString("%1 Hz, {%2}, %3").arg(m_srate).arg(m_chan_map.toString()).arg(name); +} + int AudioParameters::sampleSize(Qmmp::AudioFormat format) { switch(format) diff --git a/src/qmmp/audioparameters.h b/src/qmmp/audioparameters.h index b38d32994..c8e5c8d9d 100644 --- a/src/qmmp/audioparameters.h +++ b/src/qmmp/audioparameters.h @@ -78,6 +78,8 @@ public: * Returns sample size in bytes. */ int sampleSize() const; + + const QString toString() const; /*! * Returns sample size in bytes of the given pcm data \b format. */ diff --git a/src/qmmp/outputwriter.cpp b/src/qmmp/outputwriter.cpp index 00d76fe6c..cc66b4158 100644 --- a/src/qmmp/outputwriter.cpp +++ b/src/qmmp/outputwriter.cpp @@ -131,14 +131,9 @@ bool OutputWriter::initialize(quint32 freq, ChannelMap map) m_channels = m_chan_map.count(); m_format = m_output->format(); - qDebug("OutputWriter: [%s] %u Hz, {%s}, %s ==> %u Hz, {%s}, %s", + qDebug("OutputWriter: [%s] %s ==> %s", qPrintable(Output::currentFactory()->properties().shortName), - m_in_params.sampleRate(), - qPrintable(m_in_params.channelMap().toString()), - qPrintable(formatNames.value(m_in_params.format())), - m_frequency, - qPrintable(m_chan_map.toString()), - qPrintable(formatNames.value(m_format))); + qPrintable(m_in_params.toString()), qPrintable(m_output->audioParameters().toString())); if(!prepareConverters()) { |
