aboutsummaryrefslogtreecommitdiffstats
path: root/taglib/dsf/dsfproperties.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'taglib/dsf/dsfproperties.cpp')
-rw-r--r--taglib/dsf/dsfproperties.cpp161
1 files changed, 0 insertions, 161 deletions
diff --git a/taglib/dsf/dsfproperties.cpp b/taglib/dsf/dsfproperties.cpp
deleted file mode 100644
index 18511fa7..00000000
--- a/taglib/dsf/dsfproperties.cpp
+++ /dev/null
@@ -1,161 +0,0 @@
-/***************************************************************************
- copyright : (C) 2013 by Stephen F. Booth
- email : me@sbooth.org
- ***************************************************************************/
-
-/***************************************************************************
- * This library is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU Lesser General Public License version *
- * 2.1 as published by the Free Software Foundation. *
- * *
- * This library is distributed in the hope that it will be useful, but *
- * WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
- * Lesser General Public License for more details. *
- * *
- * You should have received a copy of the GNU Lesser General Public *
- * License along with this library; if not, write to the Free Software *
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA *
- * 02110-1301 USA *
- * *
- * Alternatively, this file is available under the Mozilla Public *
- * License Version 1.1. You may obtain a copy of the License at *
- * http://www.mozilla.org/MPL/ *
- ***************************************************************************/
-
-#include <tstring.h>
-#include <tdebug.h>
-
-#include "dsfproperties.h"
-
-using namespace TagLib;
-
-class DSF::Properties::PropertiesPrivate
-{
-public:
- PropertiesPrivate() :
- formatVersion(0),
- formatID(0),
- channelType(0),
- channelNum(0),
- samplingFrequency(0),
- bitsPerSample(0),
- sampleCount(0),
- blockSizePerChannel(0),
- bitrate(0),
- length(0)
- {
- }
-
- // Nomenclature is from DSF file format specification
- unsigned int formatVersion;
- unsigned int formatID;
- unsigned int channelType;
- unsigned int channelNum;
- unsigned int samplingFrequency;
- unsigned int bitsPerSample;
- long long sampleCount;
- unsigned int blockSizePerChannel;
-
- // Computed
- unsigned int bitrate;
- unsigned int length;
-};
-
-////////////////////////////////////////////////////////////////////////////////
-// public members
-////////////////////////////////////////////////////////////////////////////////
-
-DSF::Properties::Properties(const ByteVector &data, ReadStyle style) : TagLib::AudioProperties(style)
-{
- d = new PropertiesPrivate;
- read(data);
-}
-
-DSF::Properties::~Properties()
-{
- delete d;
-}
-
-int DSF::Properties::length() const
-{
- return lengthInSeconds();
-}
-
-int DSF::Properties::lengthInSeconds() const
-{
- return d->length / 1000;
-}
-
-int DSF::Properties::lengthInMilliseconds() const
-{
- return d->length;
-}
-
-int DSF::Properties::bitrate() const
-{
- return d->bitrate;
-}
-
-int DSF::Properties::sampleRate() const
-{
- return d->samplingFrequency;
-}
-
-int DSF::Properties::channels() const
-{
- return d->channelNum;
-}
-
-// DSF specific
-int DSF::Properties::formatVersion() const
-{
- return d->formatVersion;
-}
-
-int DSF::Properties::formatID() const
-{
- return d->formatID;
-}
-
-int DSF::Properties::channelType() const
-{
- return d->channelType;
-}
-
-int DSF::Properties::bitsPerSample() const
-{
- return d->bitsPerSample;
-}
-
-long long DSF::Properties::sampleCount() const
-{
- return d->sampleCount;
-}
-
-int DSF::Properties::blockSizePerChannel() const
-{
- return d->blockSizePerChannel;
-}
-
-////////////////////////////////////////////////////////////////////////////////
-// private members
-////////////////////////////////////////////////////////////////////////////////
-
-void DSF::Properties::read(const ByteVector &data)
-{
- d->formatVersion = data.toUInt(0U,false);
- d->formatID = data.toUInt(4U,false);
- d->channelType = data.toUInt(8U,false);
- d->channelNum = data.toUInt(12U,false);
- d->samplingFrequency = data.toUInt(16U,false);
- d->bitsPerSample = data.toUInt(20U,false);
- d->sampleCount = data.toLongLong(24U,false);
- d->blockSizePerChannel = data.toUInt(32U,false);
-
- d->bitrate
- = static_cast<unsigned int>((d->samplingFrequency * d->bitsPerSample * d->channelNum) / 1000.0 + 0.5);
- d->length
- = d->samplingFrequency > 0 ? static_cast<unsigned int>(d->sampleCount * 1000.0 / d->samplingFrequency + 0.5) : 0;
-}
-