summaryrefslogtreecommitdiffstats
path: root/plugins
diff options
context:
space:
mode:
authorDaniel Schürmann <daschuer@mixxx.org>2015-10-13 22:36:12 +0200
committerDaniel Schürmann <daschuer@mixxx.org>2015-10-13 22:36:12 +0200
commitf1ce9112e15e7c73f720d74b8b6cb58ef3e11079 (patch)
tree1f10a009aa99c5fee28a9cda7d117fc0f872356a /plugins
parent664978bf7fcf1297371f464380f995746b905c53 (diff)
Introduce TAGLIB_FILENAME_FROM_QSTRING, and try to bypass all wchat_t calls to make windows build working again.
Diffstat (limited to 'plugins')
-rw-r--r--plugins/soundsourcem4a/soundsourcem4a.cpp12
-rw-r--r--plugins/soundsourcemediafoundation/soundsourcemediafoundation.cpp17
-rw-r--r--plugins/soundsourcemediafoundation/soundsourcemediafoundation.h1
-rw-r--r--plugins/soundsourcewv/soundsourcewv.cpp16
4 files changed, 14 insertions, 32 deletions
diff --git a/plugins/soundsourcem4a/soundsourcem4a.cpp b/plugins/soundsourcem4a/soundsourcem4a.cpp
index 10d9a9958b..8a0a2ca45f 100644
--- a/plugins/soundsourcem4a/soundsourcem4a.cpp
+++ b/plugins/soundsourcem4a/soundsourcem4a.cpp
@@ -181,11 +181,7 @@ inline long unsigned SoundSourceM4A::length(){
}
Result SoundSourceM4A::parseHeader(){
-#ifdef _WIN32
- TagLib::MP4::File f(getFilename().toStdWString().c_str());
-#else
- TagLib::MP4::File f(getFilename().toLocal8Bit().constData());
-#endif
+ TagLib::MP4::File f(TAGLIB_FILENAME_FROM_QSTRING(getFilename()));
if (!readFileHeader(this, f)) {
return ERR;
}
@@ -207,11 +203,7 @@ Result SoundSourceM4A::parseHeader(){
}
QImage SoundSourceM4A::parseCoverArt() {
-#ifdef _WIN32
- TagLib::MP4::File f(getFilename().toStdWString().c_str());
-#else
- TagLib::MP4::File f(getFilename().toLocal8Bit().constData());
-#endif
+ TagLib::MP4::File f(TAGLIB_FILENAME_FROM_QSTRING(getFilename()));
TagLib::MP4::Tag *mp4(f.tag());
if (mp4) {
return getCoverInMP4Tag(*mp4);
diff --git a/plugins/soundsourcemediafoundation/soundsourcemediafoundation.cpp b/plugins/soundsourcemediafoundation/soundsourcemediafoundation.cpp
index da95876f84..303cd1f9e1 100644
--- a/plugins/soundsourcemediafoundation/soundsourcemediafoundation.cpp
+++ b/plugins/soundsourcemediafoundation/soundsourcemediafoundation.cpp
@@ -86,16 +86,11 @@ SoundSourceMediaFoundation::~SoundSourceMediaFoundation()
CoUninitialize();
}
-Result SoundSourceMediaFoundation::open()
-{
+Result SoundSourceMediaFoundation::open() {
if (sDebug) {
qDebug() << "open()" << getFilename();
}
- int wcFilenameLength(getFilename().toWCharArray(m_wcFilename));
- // toWCharArray does not append a null terminator to the string!
- m_wcFilename[wcFilenameLength] = '\0';
-
HRESULT hr(S_OK);
// Initialize the COM library.
hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE);
@@ -112,7 +107,13 @@ Result SoundSourceMediaFoundation::open()
}
// Create the source reader to read the input file.
- hr = MFCreateSourceReaderFromURL(m_wcFilename, NULL, &m_pReader);
+ hr = MFCreateSourceReaderFromURL(
+ ((sizeof(wchar_t) == sizeof(QChar)) ?
+ (const wchar_t*)getFilename().utf16() :
+ getFilename().toStdWString().c_str()),
+ NULL,
+ &m_pReader);
+
if (FAILED(hr)) {
qWarning() << "SSMF: Error opening input file:" << getFilename();
return ERR;
@@ -375,7 +376,7 @@ inline unsigned long SoundSourceMediaFoundation::length()
Result SoundSourceMediaFoundation::parseHeader()
{
- TagLib::MP4::File f(getFilename().toStdWString().c_str());
+ TagLib::MP4::File f(TAGLIB_FILENAME_FROM_QSTRING(getFilename()));
if (!readFileHeader(this, f)) {
return ERR;
}
diff --git a/plugins/soundsourcemediafoundation/soundsourcemediafoundation.h b/plugins/soundsourcemediafoundation/soundsourcemediafoundation.h
index 96794568f7..6a1c4474d8 100644
--- a/plugins/soundsourcemediafoundation/soundsourcemediafoundation.h
+++ b/plugins/soundsourcemediafoundation/soundsourcemediafoundation.h
@@ -60,7 +60,6 @@ class SoundSourceMediaFoundation : public Mixxx::SoundSource {
static inline qint64 mfFromFrame(qint64 frame);
IMFSourceReader *m_pReader;
IMFMediaType *m_pAudioType;
- wchar_t *m_wcFilename;
int m_nextFrame;
qint16 *m_leftoverBuffer;
size_t m_leftoverBufferSize;
diff --git a/plugins/soundsourcewv/soundsourcewv.cpp b/plugins/soundsourcewv/soundsourcewv.cpp
index 3d0107356f..424d5465cd 100644
--- a/plugins/soundsourcewv/soundsourcewv.cpp
+++ b/plugins/soundsourcewv/soundsourcewv.cpp
@@ -60,9 +60,7 @@ QList<QString> SoundSourceWV::supportedFileExtensions()
}
-Result SoundSourceWV::open()
-{
- QByteArray qBAFilename(getFilename().toLocal8Bit());
+Result SoundSourceWV::open() {
char msg[80]; // hold possible error message
// We use WavpackOpenFileInputEx to support Unicode paths on windows
@@ -160,11 +158,7 @@ inline long unsigned SoundSourceWV::length(){
Result SoundSourceWV::parseHeader() {
-#ifdef _WIN32
- TagLib::WavPack::File f(getFilename().toStdWString().c_str());
-#else
- TagLib::WavPack::File f(getFilename().toLocal8Bit().constData());
-#endif
+ TagLib::WavPack::File f(TAGLIB_FILENAME_FROM_QSTRING(getFilename()));
if (!readFileHeader(this, f)) {
return ERR;
}
@@ -186,11 +180,7 @@ Result SoundSourceWV::parseHeader() {
}
QImage SoundSourceWV::parseCoverArt() {
-#ifdef _WIN32
- TagLib::WavPack::File f(getFilename().toStdWString().c_str());
-#else
- TagLib::WavPack::File f(getFilename().toLocal8Bit().constData());
-#endif
+ TagLib::WavPack::File f(TAGLIB_FILENAME_FROM_QSTRING(getFilename()));
TagLib::APE::Tag *ape = f.APETag();
if (ape) {
return Mixxx::getCoverInAPETag(*ape);