Re: [Development] qtphonon's status.
Hi, after talking with Phonon developers quite some time back, it was agreed that Phonon would be using the qt-project infrastructure (the idea was to have them use either KDE or qt-project). All seemed happy, until it became clear that we would require the CLA for new contributions for Phonon if it's hosted with qt-project.org. Since then it has come to a stand-still I belive. I have the feeling that development will continue on KDE infrastructure, but I'd like to hear from the Phonon people themselves, also regarding their plans for Qt 5. Greetings Frederik On 18. mai 2012, at 13.27, ext Stephen Kelly wrote: On Friday, May 18, 2012 10:43:18 you wrote: Right, no attention from us and no attention from the phonon developers, at least with respect for Qt 5 end-users. So, by it receiving 'attention' from us now by simply removing the old fork from the repo, it would only hurt the end-user, making it harder for them to migrate over to Qt 5. Already some won't be able to migrate to 5.0. Some will need to wait anyway for various reasons (eg X11 stuff). Waiting for phonon too isn't a big deal. No, two phonons is a terrible idea :) However, it's the better of two evils, were we currently have no migration path from Qt 4 phonon users to the current upstream. Thus, keeping 'compatibility' by keeping the old phonon around is better for the end-user IMO. Expert users can still nuke the qt5.git one, and compile the upstream. Expert users can get the qtphonon.git themselves and use that. For everyone else, there's upstream, and that's the future anyway, whether they ever migrate to qt-project or not. Thanks, -- Stephen Kelly stephen.ke...@kdab.com | Software Engineer KDAB (Deutschland) GmbH Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
Stephen Kelly said: On Thursday, May 17, 2012 18:31:43 lars.kn...@nokia.com wrote: I don't want to maintain a fork of phonon on qt-project if the developers decided they want to continue within the KDE infrastructure. phonon should have one upstream place where it is being developed. I'd say let's deprecate the module and remove it from qt5.git. We can keep the code around for some time if someone sees some value in it. I don't understand this part. What's the difference between webkit and phonon in this regard? One difference is that qtwebkit in Qt5 is sometimes updated by the QtWebKit developers to point to a snapshot expected to work with the rest of qt5.git (so that e.g. the qtwebkit SHA1 pointed to by the qt-v5.0.0-alpha1 tag in qt5.git is accurate). ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On sexta-feira, 18 de maio de 2012 05.54.10, marius.storm-ol...@nokia.com wrote: This probably means we should keep the old repo there for backwards compatibility, and with documentation stating that the module is old and out-of-date, and where and how they can get a more recent version. I disagree. At this point, we don't know what the Phonon developers want to do with their API in Qt5, whether they want to keep API compatibility or not. The decision to do that for Qt was our own and does not necessarily imply the same for Phonon. I'd love them to, but if they have different plans and little manpower, we can't force them to keep the API. Until the Phonon maintainers speak up and let us know what their plans for Qt 5 are, we should consider our qtphonon.git module a disservice to everyone. If none of them speak up, I recommend removing the module from the build process. We shouldn't mix build systems in qt5.git itself. If other add-ons decide to use cmake as their build system, that's fine; but any module aiming to be part of qt5.git will need to use the same build system as the rest of the modules of qt5.git. (This will also be true for whatever build system we move to at some later point.) Distros of course should bundle Qt with the latest version from upstream. -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Software Architect - Intel Open Source Technology Center PGP/GPG: 0x6EF45358; fingerprint: E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358 signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On 5/18/12 10:14 AM, ext Thiago Macieira thi...@kde.org wrote: On sexta-feira, 18 de maio de 2012 05.54.10, marius.storm-ol...@nokia.com wrote: This probably means we should keep the old repo there for backwards compatibility, and with documentation stating that the module is old and out-of-date, and where and how they can get a more recent version. I disagree. At this point, we don't know what the Phonon developers want to do with their API in Qt5, whether they want to keep API compatibility or not. The decision to do that for Qt was our own and does not necessarily imply the same for Phonon. I'd love them to, but if they have different plans and little manpower, we can't force them to keep the API. Until the Phonon maintainers speak up and let us know what their plans for Qt 5 are, we should consider our qtphonon.git module a disservice to everyone. If none of them speak up, I recommend removing the module from the build process. We did promise a minimal migration path from Qt 4 to Qt 5, and removing the phonon module from qt5.git, with no easy way of compiling up the current upstream phonon with Qt 5 goes against this promise. That's why I think we should keep it, until upstream has given a clear message of how to proceed for Qt 5 users of phonon. (1. What their direction is, 2. Migration path for Qt 4 users, 3. Build instructions for Qt 5 users on all T1 platforms, etc) Until then, at least Qt users can use phonon as is, just like they do in Qt 4. -- .marius ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On Friday, May 18, 2012 08:41:13 marius.storm-ol...@nokia.com wrote: Until the Phonon maintainers speak up and let us know what their plans for Qt 5 are, we should consider our qtphonon.git module a disservice to everyone. If none of them speak up, I recommend removing the module from the build process. We did promise a minimal migration path from Qt 4 to Qt 5, and removing the phonon module from qt5.git, with no easy way of compiling up the current upstream phonon with Qt 5 goes against this promise. It hasn't received any attention so far though, has it? Maybe phonon can be part of that promise in Qt 5.1. That's why I think we should keep it, until upstream has given a clear message of how to proceed for Qt 5 users of phonon. (1. What their direction is, 2. Migration path for Qt 4 users, 3. Build instructions for Qt 5 users on all T1 platforms, etc) The only problematic part in your list is (1). In the absence of any other plans, I'm sure we'll just end up with a simple port to Qt 5 with no API change. Until then, at least Qt users can use phonon as is, just like they do in Qt 4. I don't think having two phonons (the old and obsolete copy in Qt and the upstream) is a good idea. Thanks, -- Stephen Kelly stephen.ke...@kdab.com | Software Engineer KDAB (Deutschland) GmbH Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On 5/18/12 12:02 PM, ext Stephen Kelly stephen.ke...@kdab.commailto:stephen.ke...@kdab.com wrote: On Friday, May 18, 2012 08:41:13 marius.storm-ol...@nokia.commailto:marius.storm-ol...@nokia.com wrote: We did promise a minimal migration path from Qt 4 to Qt 5, and removing the phonon module from qt5.git, with no easy way of compiling up the current upstream phonon with Qt 5 goes against this promise. It hasn't received any attention so far though, has it? Maybe phonon can be part of that promise in Qt 5.1. Right, no attention from us and no attention from the phonon developers, at least with respect for Qt 5 end-users. So, by it receiving 'attention' from us now by simply removing the old fork from the repo, it would only hurt the end-user, making it harder for them to migrate over to Qt 5. That's why I think we should keep it, until upstream has given a clear message of how to proceed for Qt 5 users of phonon. (1. What their direction is, 2. Migration path for Qt 4 users, 3. Build instructions for Qt 5 users on all T1 platforms, etc) The only problematic part in your list is (1). In the absence of any other plans, I'm sure we'll just end up with a simple port to Qt 5 with no API change. Which is fine really. What I care about is the end-user, and that they can continue as before, with minimal migration needed. Until then, at least Qt users can use phonon as is, just like they do in Qt 4. I don't think having two phonons (the old and obsolete copy in Qt and the upstream) is a good idea. No, two phonons is a terrible idea :) However, it's the better of two evils, were we currently have no migration path from Qt 4 phonon users to the current upstream. Thus, keeping 'compatibility' by keeping the old phonon around is better for the end-user IMO. Expert users can still nuke the qt5.git one, and compile the upstream. -- On a different matter, Stephen, can you please adjust your MUA to not force a font-family:'Monospace'; font-size:11pt; font-weight:400; font-style:normal; style in the body of your emails? Since most MUAs render the HTML part of emails (my N9 included), the emails look quite terrible, with large fonts, and whitespace on smaller devices. Let my MUA decide on the best fonts to display your emails unless you are sending me a colorful email invite :) Thanks! -- .marius ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On Friday, May 18, 2012 10:43:18 you wrote: Right, no attention from us and no attention from the phonon developers, at least with respect for Qt 5 end-users. So, by it receiving 'attention' from us now by simply removing the old fork from the repo, it would only hurt the end-user, making it harder for them to migrate over to Qt 5. Already some won't be able to migrate to 5.0. Some will need to wait anyway for various reasons (eg X11 stuff). Waiting for phonon too isn't a big deal. No, two phonons is a terrible idea :) However, it's the better of two evils, were we currently have no migration path from Qt 4 phonon users to the current upstream. Thus, keeping 'compatibility' by keeping the old phonon around is better for the end-user IMO. Expert users can still nuke the qt5.git one, and compile the upstream. Expert users can get the qtphonon.git themselves and use that. For everyone else, there's upstream, and that's the future anyway, whether they ever migrate to qt-project or not. Thanks, -- Stephen Kelly stephen.ke...@kdab.com | Software Engineer KDAB (Deutschland) GmbH Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
2012/5/16 Thiago Macieira thiago.macie...@intel.com: [cross-posting to kde-multimedia] On quarta-feira, 16 de maio de 2012 18.55.52, Olivier Goffart wrote: Hi, Why do we mantain an outdated fork of phonon in qt5.git I am talking about the qtphonon repository. The Phonon team maintains phonon under the KDE umbrela, and the qtphonon repository is years behind. It was created because of the modularisation. It was expected that the Phonon developers would pick it up. At one point, they indicated they'd like to use the Qt infrastructure, instead of the KDE infrastructure. Clearly, they've changed their minds. Hijacking the thread to ask this because I'm not yet familiar with neither Phonon nor QtMultimeda: is QtMultimedia (http://doc-snapshot.qt-project.org/5.0/qtmultimedia-module.html) a suitable candidate to replace Phonon at least for new and Qt-only projects? -- Don't let the noise of other's opinions drown out your own inner voice. (Steve Jobs) ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
Yes, that's the idea. Practice has disagreed so far. Best Regards, Laszlo Papp ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
I don't want to maintain a fork of phonon on qt-project if the developers decided they want to continue within the KDE infrastructure. phonon should have one upstream place where it is being developed. I'd say let's deprecate the module and remove it from qt5.git. We can keep the code around for some time if someone sees some value in it. Cheers, Lars On 5/17/12 5:45 PM, ext Olivier Goffart oliv...@woboq.com wrote: On Thursday 17 May 2012 14:46:27 Pier Luigi wrote: 2012/5/16 Thiago Macieira thiago.macie...@intel.com: [cross-posting to kde-multimedia] On quarta-feira, 16 de maio de 2012 18.55.52, Olivier Goffart wrote: Hi, Why do we mantain an outdated fork of phonon in qt5.git I am talking about the qtphonon repository. The Phonon team maintains phonon under the KDE umbrela, and the qtphonon repository is years behind. It was created because of the modularisation. It was created because, at the time the modularisation was done, Qt5 was not yet planed. At the time, the plan was that the modularised should be able to build Qt 4.8 as it, with everything on it. It was decidd only very late that Qt 4.X would not be modularized. This is the reason why we kept phonon there. (I know it, I was in the modularisation team) It was expected that the Phonon developers would pick it up. At one point, they indicated they'd like to use the Qt infrastructure, instead of the KDE infrastructure. I was not aware of this. Clearly, they've changed their minds. Hijacking the thread to ask this because I'm not yet familiar with neither Phonon nor QtMultimeda: is QtMultimedia (http://doc-snapshot.qt-project.org/5.0/qtmultimedia-module.html) a suitable candidate to replace Phonon at least for new and Qt-only projects? It depends what you want to do.. If you want a playback API to play multimedia files, or if you want low level access to the hardware (recording, or playing generated sounds) -- Olivier Woboq - Qt services and support - http://woboq.com ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On Thursday, May 17, 2012 18:31:43 lars.kn...@nokia.com wrote: I don't want to maintain a fork of phonon on qt-project if the developers decided they want to continue within the KDE infrastructure. phonon should have one upstream place where it is being developed. I'd say let's deprecate the module and remove it from qt5.git. We can keep the code around for some time if someone sees some value in it. I don't understand this part. What's the difference between webkit and phonon in this regard? Thanks, -- Stephen Kelly stephen.ke...@kdab.com | Software Engineer KDAB (Deutschland) GmbH Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutions signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On 5/17/12 8:36 PM, ext Stephen Kelly stephen.ke...@kdab.com wrote: On Thursday, May 17, 2012 18:31:43 lars.kn...@nokia.com wrote: I don't want to maintain a fork of phonon on qt-project if the developers decided they want to continue within the KDE infrastructure. phonon should have one upstream place where it is being developed. I'd say let's deprecate the module and remove it from qt5.git. We can keep the code around for some time if someone sees some value in it. I don't understand this part. What's the difference between webkit and phonon in this regard? Webkit isn't hosted on qt-project neither, so removing it from qt-project is the right choice if it's being developed somewhere else. I proposed removing it from qt5.git mainly because Olivier said that the upstream repo hasn't been ported to Qt 5 yet. Cheers, Lars ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On quinta-feira, 17 de maio de 2012 19.03.30, lars.kn...@nokia.com wrote: What's the difference between webkit and phonon in this regard? Webkit isn't hosted on qt-project neither, so removing it from qt-project is the right choice if it's being developed somewhere else. The qt5-module.git repository of Qt WebKit is a branch of the webkit SVN that contains the latest version supposed to work with Qt. It's not exactly the same thing. If the Phonon devs do the same for qtphonon.git, I don't see a problem in keeping the repository around. That's not the current situation. -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Software Architect - Intel Open Source Technology Center PGP/GPG: 0x6EF45358; fingerprint: E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358 signature.asc Description: This is a digitally signed message part. ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On Thursday 17 May 2012 21:42:03 Thiago Macieira wrote: On quinta-feira, 17 de maio de 2012 19.03.30, lars.kn...@nokia.com wrote: What's the difference between webkit and phonon in this regard? Webkit isn't hosted on qt-project neither, so removing it from qt-project is the right choice if it's being developed somewhere else. The qt5-module.git repository of Qt WebKit is a branch of the webkit SVN that contains the latest version supposed to work with Qt. It's not exactly the same thing. If the Phonon devs do the same for qtphonon.git, I don't see a problem in keeping the repository around. That's not the current situation. The phonon upstream repository is itself modularized into several sub- repositories (core + one per backend) Also, as I pointed out, the upstream phonon requires cmake for building. It could theoretically be possible to create the qmake .pro files, but then someone will need to maintain them. (I personaly think it is fine to have add-ons requiring cmake. But I don't know about qt5.git) -- Olivier Woboq - Qt services and support - http://woboq.com ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
This probably means we should keep the old repo there for backwards compatibility, and with documentation stating that the module is old and out-of-date, and where and how they can get a more recent version. We shouldn't mix build systems in qt5.git itself. If other add-ons decide to use cmake as their build system, that's fine; but any module aiming to be part of qt5.git will need to use the same build system as the rest of the modules of qt5.git. (This will also be true for whatever build system we move to at some later point.) Distros of course should bundle Qt with the latest version from upstream. -- .marius On 5/17/12 11:50 PM, ext Olivier Goffart oliv...@woboq.com wrote: On Thursday 17 May 2012 21:42:03 Thiago Macieira wrote: On quinta-feira, 17 de maio de 2012 19.03.30, lars.kn...@nokia.com wrote: What's the difference between webkit and phonon in this regard? Webkit isn't hosted on qt-project neither, so removing it from qt-project is the right choice if it's being developed somewhere else. The qt5-module.git repository of Qt WebKit is a branch of the webkit SVN that contains the latest version supposed to work with Qt. It's not exactly the same thing. If the Phonon devs do the same for qtphonon.git, I don't see a problem in keeping the repository around. That's not the current situation. The phonon upstream repository is itself modularized into several sub- repositories (core + one per backend) Also, as I pointed out, the upstream phonon requires cmake for building. It could theoretically be possible to create the qmake .pro files, but then someone will need to maintain them. (I personaly think it is fine to have add-ons requiring cmake. But I don't know about qt5.git) -- Olivier Woboq - Qt services and support - http://woboq.com ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
[Development] qtphonon's status.
Hi, Why do we mantain an outdated fork of phonon in qt5.git I am talking about the qtphonon repository. The Phonon team maintains phonon under the KDE umbrela, and the qtphonon repository is years behind. Is there a point taking time to still update this repository to make it work with Qt5? Should we not drop it and redirect to the KDE one instead? The phonon from KDE requires cmake, and is AFAIK not ported yet to Qt5. But I don't think it makes sens for qt-project to release that outdated version of phonon with Qt5. -- Olivier Woboq - Qt services and support - http://woboq.com ___ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development
Re: [Development] qtphonon's status.
On Wednesday, May 16, 2012 19:50:19 Thiago Macieira wrote: [cross-posting to kde-multimedia] On quarta-feira, 16 de maio de 2012 18.55.52, Olivier Goffart wrote: Hi, Why do we mantain an outdated fork of phonon in qt5.git I am talking about the qtphonon repository. The Phonon team maintains phonon under the KDE umbrela, and the qtphonon repository is years behind. It was created because of the modularisation. It was expected that the Phonon developers would pick it up. At one point, they indicated they'd like to use the Qt infrastructure, instead of the KDE infrastructure. Clearly, they've changed their minds. Is there a point taking time to still update this repository to make it work with Qt5? Should we not drop it and redirect to the KDE one instead? I believe so. I don't think we can afford to have competing efforts in developing Phonon. The maintainership for it was turned over to the current developers inside KDE and they get to decide which infrastructure they want to use. As they have opted for the KDE infrastructure, I'd say we should remove the submodule link from qt5.git. The phonon from KDE requires cmake, and is AFAIK not ported yet to Qt5. Note that it's at least trivial to build with Qt5 I haven't tried to run anything with it though. But I don't think it makes sens for qt-project to release that outdated version of phonon with Qt5. Well, the qtphonon.git repository does compile with Qt 5, and our Qt 5 compatibility promise would require us to release at least the API that was available in Qt 4. I agree with Olivier that we should consider the qtphonon.git repo obsolete and remove it. That said, it's really up to the Phonon maintainers to decide what to do. If they have different plans, there's little we can do. Thanks, -- Stephen Kelly stephen.ke...@kdab.com | Software Engineer KDAB (Deutschland) GmbH Co.KG, a KDAB Group Company www.kdab.com || Germany +49-30-521325470 || Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-Independent Software Solutionsdiff --git a/cmake/FindPhononInternal.cmake b/cmake/FindPhononInternal.cmake index 2bad949..46727e8 100644 --- a/cmake/FindPhononInternal.cmake +++ b/cmake/FindPhononInternal.cmake @@ -65,7 +65,11 @@ endif (${QT_MIN_VERSION} VERSION_LESS 4.6.0) # # Qt libs and are flexible regarding the install location of Qt under Windows: # set(QT_USE_IMPORTED_TARGETS TRUE) -find_package(Qt4 ${_REQ_STRING_KDE4}) +find_package(ECM 0.0.4 REQUIRED) +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_MODULE_PATH}) + + +find_package(Qt5Transitional REQUIRED Core Gui DBus) # TODO: do we want this here? if (NOT QT_QTDBUS_FOUND) diff --git a/phonon/CMakeLists.txt b/phonon/CMakeLists.txt index 94398fc..2cafe9e 100644 --- a/phonon/CMakeLists.txt +++ b/phonon/CMakeLists.txt @@ -1,5 +1,5 @@ if (PHONON_BUILD_EXPERIMENTAL) -add_subdirectory(experimental) +# add_subdirectory(experimental) endif (PHONON_BUILD_EXPERIMENTAL) macro_optional_find_package(PulseAudio 0.9.15) diff --git a/phonon/globalstatic_p.h b/phonon/globalstatic_p.h index cf80512..ff25621 100644 --- a/phonon/globalstatic_p.h +++ b/phonon/globalstatic_p.h @@ -245,8 +245,19 @@ class CleanUpGlobalStatic * * @ingroup KDEMacros */ + +templatetypename T +struct PointerHack : QBasicAtomicPointerT +{ + PointerHack() : QBasicAtomicPointerT() {} + PointerHack(T value) : QBasicAtomicPointerT(value) {} + operator T*() { return this-load(); } + + PointerHack operator=(T* t) { this-store(t); return *this; } +}; + #define PHONON_GLOBAL_STATIC_WITH_ARGS(TYPE, NAME, ARGS)\ -static QBasicAtomicPointerTYPE _k_static_##NAME = Q_BASIC_ATOMIC_INITIALIZER(0); \ +static PointerHackTYPE _k_static_##NAME; \ static bool _k_static_##NAME##_destroyed; \ static struct PHONON_GLOBAL_STATIC_STRUCT_NAME(NAME)\ { \ diff --git a/phonon/mediasource.cpp b/phonon/mediasource.cpp index e551c26..7b775aa 100644 --- a/phonon/mediasource.cpp +++ b/phonon/mediasource.cpp @@ -28,7 +28,7 @@ #include QtCore/QFileInfo #include QtCore/QFile -#include QtCore/QFSFileEngine +// #include QtCore/QFSFileEngine QT_BEGIN_NAMESPACE @@ -48,30 +48,30 @@ MediaSource::MediaSource() MediaSource::MediaSource(const QString filename) : d(new MediaSourcePrivate(LocalFile)) { -const QFileInfo fileInfo(filename); -if (fileInfo.exists()) { -bool localFs = QAbstractFileEngine::LocalDiskFlag QFSFileEngine(filename).fileFlags(QAbstractFileEngine::LocalDiskFlag); -if (localFs !filename.startsWith(QLatin1String(:/)) !filename.startsWith(QLatin1String(qrc://))) { -d-url = QUrl::fromLocalFile(fileInfo.absoluteFilePath()); -} else { -#ifndef QT_NO_PHONON_ABSTRACTMEDIASTREAM -// it's a Qt resource - use QFile -