diff options
author | Uwe Klotz <uwe_klotz@web.de> | 2017-10-28 18:31:56 +0200 |
---|---|---|
committer | Uwe Klotz <uwe_klotz@web.de> | 2017-11-06 22:27:20 +0100 |
commit | e2586c9035e72ff008cc379e3875e5c73c6a61db (patch) | |
tree | 13234fa194b6de0c7066db8d9b3691b9c98952e8 /src/track | |
parent | 828c2f26ae695d0235eb8eb82bb9d9cd2284ba3a (diff) |
Reuse audio property types for track metadata
Diffstat (limited to 'src/track')
-rw-r--r-- | src/track/track.cpp | 6 | ||||
-rw-r--r-- | src/track/trackmetadata.cpp | 6 | ||||
-rw-r--r-- | src/track/trackmetadata.h | 27 | ||||
-rw-r--r-- | src/track/trackmetadatataglib.cpp | 6 |
4 files changed, 17 insertions, 28 deletions
diff --git a/src/track/track.cpp b/src/track/track.cpp index e91657a7a4..37dfc4b815 100644 --- a/src/track/track.cpp +++ b/src/track/track.cpp @@ -606,7 +606,7 @@ void Track::setType(const QString& sType) { void Track::setSampleRate(int iSampleRate) { QMutexLocker lock(&m_qMutex); if (m_metadata.getSampleRate() != iSampleRate) { - m_metadata.setSampleRate(iSampleRate); + m_metadata.setSampleRate(mixxx::AudioSignal::SampleRate(iSampleRate)); markDirtyAndUnlock(&lock); } } @@ -619,7 +619,7 @@ int Track::getSampleRate() const { void Track::setChannels(int iChannels) { QMutexLocker lock(&m_qMutex); if (m_metadata.getChannels() != iChannels) { - m_metadata.setChannels(iChannels); + m_metadata.setChannels(mixxx::AudioSignal::ChannelCount(iChannels)); markDirtyAndUnlock(&lock); } } @@ -641,7 +641,7 @@ QString Track::getBitrateText() const { void Track::setBitrate(int iBitrate) { QMutexLocker lock(&m_qMutex); if (m_metadata.getBitrate() != iBitrate) { - m_metadata.setBitrate(iBitrate); + m_metadata.setBitrate(mixxx::AudioSource::Bitrate(iBitrate)); markDirtyAndUnlock(&lock); } } diff --git a/src/track/trackmetadata.cpp b/src/track/trackmetadata.cpp index cdc00e2aeb..17292df85a 100644 --- a/src/track/trackmetadata.cpp +++ b/src/track/trackmetadata.cpp @@ -66,12 +66,6 @@ QString TrackMetadata::reformatYear(QString year) { return year.simplified(); } -TrackMetadata::TrackMetadata() - : m_bitrate(0), - m_channels(0), - m_sampleRate(0) { -} - bool operator==(const TrackMetadata& lhs, const TrackMetadata& rhs) { // Compare the integer and double fields 1st for maximum efficiency return (lhs.getBitrate() == rhs.getBitrate()) && diff --git a/src/track/trackmetadata.h b/src/track/trackmetadata.h index b1972c21f7..e5da6e2b9f 100644 --- a/src/track/trackmetadata.h +++ b/src/track/trackmetadata.h @@ -5,6 +5,7 @@ #include "track/bpm.h" #include "track/replaygain.h" +#include "sources/audiosource.h" #include "util/duration.h" namespace mixxx { @@ -12,8 +13,6 @@ namespace mixxx { // DTO for track metadata properties. Must not be subclassed (no virtual destructor)! class TrackMetadata final { public: - TrackMetadata(); - const QString& getArtist() const { return m_artist; } @@ -98,27 +97,24 @@ public: m_key = key; } - // #channels - int getChannels() const { + AudioSignal::ChannelCount getChannels() const { return m_channels; } - void setChannels(int channels) { + void setChannels(AudioSignal::ChannelCount channels) { m_channels = channels; } - // Hz - int getSampleRate() const { + AudioSignal::SampleRate getSampleRate() const { return m_sampleRate; } - void setSampleRate(int sampleRate) { + void setSampleRate(AudioSignal::SampleRate sampleRate) { m_sampleRate = sampleRate; } - // kbit / s - int getBitrate() const { + AudioSource::Bitrate getBitrate() const { return m_bitrate; } - void setBitrate(int bitrate) { + void setBitrate(AudioSource::Bitrate bitrate) { m_bitrate = bitrate; } @@ -130,7 +126,7 @@ public: } // beats / minute - const Bpm& getBpm() const { + Bpm getBpm() const { return m_bpm; } void setBpm(Bpm bpm) { @@ -190,10 +186,9 @@ private: Bpm m_bpm; ReplayGain m_replayGain; - // Integer fields (in alphabetical order) - int m_bitrate; // kbit/s - int m_channels; - int m_sampleRate; // Hz + AudioSignal::ChannelCount m_channels; + AudioSignal::SampleRate m_sampleRate; + AudioSource::Bitrate m_bitrate; }; bool operator==(const TrackMetadata& lhs, const TrackMetadata& rhs); diff --git a/src/track/trackmetadatataglib.cpp b/src/track/trackmetadatataglib.cpp index f28b6adce9..0bae816d3b 100644 --- a/src/track/trackmetadatataglib.cpp +++ b/src/track/trackmetadatataglib.cpp @@ -284,9 +284,9 @@ void readAudioProperties( // the audio data for this track. Often those properties // stored in tags don't match with the corresponding // audio data in the file. - pTrackMetadata->setChannels(audioProperties.channels()); - pTrackMetadata->setSampleRate(audioProperties.sampleRate()); - pTrackMetadata->setBitrate(audioProperties.bitrate()); + pTrackMetadata->setChannels(AudioSignal::ChannelCount(audioProperties.channels())); + pTrackMetadata->setSampleRate(AudioSignal::SampleRate(audioProperties.sampleRate())); + pTrackMetadata->setBitrate(AudioSource::Bitrate(audioProperties.bitrate())); #if (TAGLIB_HAS_LENGTH_IN_MILLISECONDS) const auto duration = Duration::fromMillis(audioProperties.lengthInMilliseconds()); #else |