+//
+// This program is free software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation; either version 2 of the License, or
+// (at your option) any later version.
+//
+// This program 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 General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License along
+// with this program; if not, write to the Free Software Foundation, Inc.,
+// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+//
+// http://www.gnu.org/licenses/gpl-2.0.txt
+///////////////////////////////////////////////////////////////////////////////
+
+#pragma once
+
+#include "Decoder_Abstract.h"
+
+class MusepackDecoder : public AbstractDecoder
+{
+public:
+ MusepackDecoder(void);
+ ~MusepackDecoder(void);
+
+ virtual bool decode(const QString &sourceFile, const QString &outputFile, volatile bool *abortFlag);
+ static bool isFormatSupported(const QString &containerType, const QString &containerProfile, const QString &formatType, const QString &formatProfile, const QString &formatVersion);
+ static QStringList supportedTypes(void);
+
+private:
+ const QString m_binary;
+};
diff --git a/src/Dialog_About.cpp b/src/Dialog_About.cpp
index b86908ff..4e093ce9 100644
--- a/src/Dialog_About.cpp
+++ b/src/Dialog_About.cpp
@@ -300,10 +300,6 @@ void AboutDialog::showMoreAbout(void)
tr("Released under the terms of the GNU Lesser General Public License."),
"http://www.ac3filter.net/projects/tools"
);
- moreAboutText += QString
- (
- ""
- );
moreAboutText += makeToolText
(
tr("WavPack − Hybrid Lossless Compression"),
@@ -311,6 +307,17 @@ void AboutDialog::showMoreAbout(void)
tr("Completely open audio compression format."),
"http://www.wavpack.com/"
);
+ moreAboutText += QString
+ (
+ " | "
+ );
+ moreAboutText += makeToolText
+ (
+ tr("Musepack − Living Audio Compression"),
+ "mpcdec.exe", "r???",
+ tr("Released under the terms of the GNU Lesser General Public License."),
+ "http://www.musepack.net/"
+ );
moreAboutText += makeToolText
(
tr("Monkey's Audio − Lossless Audio Compressor"),
diff --git a/src/Registry_Decoder.cpp b/src/Registry_Decoder.cpp
index cdf0af00..249b252f 100644
--- a/src/Registry_Decoder.cpp
+++ b/src/Registry_Decoder.cpp
@@ -28,6 +28,7 @@
#include "Decoder_FLAC.h"
#include "Decoder_MAC.h"
#include "Decoder_MP3.h"
+#include "Decoder_Musepack.h"
#include "Decoder_TTA.h"
#include "Decoder_Vorbis.h"
#include "Decoder_Wave.h"
@@ -49,6 +50,7 @@ AbstractDecoder *DecoderRegistry::lookup(const QString &containerType, const QSt
PROBE_DECODER(AC3Decoder);
PROBE_DECODER(FLACDecoder);
PROBE_DECODER(WavPackDecoder);
+ PROBE_DECODER(MusepackDecoder);
PROBE_DECODER(MACDecoder);
PROBE_DECODER(TTADecoder);
PROBE_DECODER(ALACDecoder);
@@ -70,6 +72,7 @@ QStringList DecoderRegistry::getSupportedTypes(void)
types << GET_FILETYPES(AC3Decoder);
types << GET_FILETYPES(FLACDecoder);
types << GET_FILETYPES(WavPackDecoder);
+ types << GET_FILETYPES(MusepackDecoder);
types << GET_FILETYPES(MACDecoder);
types << GET_FILETYPES(TTADecoder);
types << GET_FILETYPES(ALACDecoder);
diff --git a/src/Thread_Initialization.cpp b/src/Thread_Initialization.cpp
index 8f03d72a..bdf8344d 100644
--- a/src/Thread_Initialization.cpp
+++ b/src/Thread_Initialization.cpp
@@ -57,7 +57,7 @@ g_lamexp_tools[] =
{"a4e929cfaa42fa2e61a3d0c6434c77a06d45aef3", "mac.exe", 406},
{"ec235c6404caa31e7975e9bbf9ba59599258ae1d", "mediainfo_i386.exe", 741},
{"72d7efdcafc2dee3b534f27ab6e01916d02ba470", "mediainfo_x64.exe", 741},
- {"55c293a80475f7aeccf449ac9487a4626e5139cb", "mpcdec.exe", UINT_MAX},
+ {"aa89763a5ba4d1a5986549b9ee53e005c51940c1", "mpcdec.exe", 435},
{"6b6913a54cac08b22d5b468aaed83550fc9ae5b4", "mpg123.exe", 1131},
{"8dd7138714c3bcb39f5a3213413addba13d06f1e", "oggdec.exe", UINT_MAX},
{"ecd15abe103184aca96e406f5f1c82c6fb2e665d", "oggenc2_i386.exe", 287},
|