summaryrefslogtreecommitdiffstats
path: root/src/track
diff options
context:
space:
mode:
authorUwe Klotz <uwe_klotz@web.de>2017-10-28 18:31:56 +0200
committerUwe Klotz <uwe_klotz@web.de>2017-11-06 22:27:20 +0100
commite2586c9035e72ff008cc379e3875e5c73c6a61db (patch)
tree13234fa194b6de0c7066db8d9b3691b9c98952e8 /src/track
parent828c2f26ae695d0235eb8eb82bb9d9cd2284ba3a (diff)
Reuse audio property types for track metadata
Diffstat (limited to 'src/track')
-rw-r--r--src/track/track.cpp6
-rw-r--r--src/track/trackmetadata.cpp6
-rw-r--r--src/track/trackmetadata.h27
-rw-r--r--src/track/trackmetadatataglib.cpp6
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