summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-10-03 18:43:29 (GMT)
committerGareth Stockwell <ext-gareth.stockwell@nokia.com>2010-10-03 18:43:29 (GMT)
commit51d007e0fa699339f072956bbd8bfe33db9b7f70 (patch)
tree04298298d856e2e938a70c11da9e28e947487728 /src
parentd1b2480f33641055f2d729212addf059577a4e01 (diff)
downloadQt-51d007e0fa699339f072956bbd8bfe33db9b7f70.zip
Qt-51d007e0fa699339f072956bbd8bfe33db9b7f70.tar.gz
Qt-51d007e0fa699339f072956bbd8bfe33db9b7f70.tar.bz2
Added qmake check for presence of RHttpDownloadMgr header
downloadmgrclient.h is not found on S^4 baselines, causing a build failure. This commit is a temporary workaround, which disables progressive download support if the header is not found. The correct solution is to determine whether the RHttpDownloadMgr definition has moved, and if so, to modify the .pro file to include the new path. Task-number: QTBUG-10769 Reviewed-by: TrustMe
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/phonon/mmf/abstractmediaplayer.cpp26
-rw-r--r--src/3rdparty/phonon/mmf/abstractmediaplayer.h9
-rw-r--r--src/3rdparty/phonon/mmf/download.h2
-rw-r--r--src/plugins/phonon/mmf/mmf.pro53
4 files changed, 61 insertions, 29 deletions
diff --git a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp
index a728423..dfc5840 100644
--- a/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp
+++ b/src/3rdparty/phonon/mmf/abstractmediaplayer.cpp
@@ -56,8 +56,10 @@ MMF::AbstractMediaPlayer::AbstractMediaPlayer
, m_mmfMaxVolume(NullMaxVolume)
, m_prefinishMarkSent(false)
, m_aboutToFinishSent(false)
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
, m_download(0)
, m_downloadStalled(false)
+#endif
{
connect(m_positionTimer.data(), SIGNAL(timeout()), this, SLOT(positionTick()));
connect(m_bufferStatusTimer.data(), SIGNAL(timeout()), this, SLOT(bufferStatusTick()));
@@ -256,7 +258,9 @@ void MMF::AbstractMediaPlayer::open()
symbianErr = openFile(*file);
if (KErrNone != symbianErr)
errorMessage = tr("Error opening file");
- } else if (url.scheme() == QLatin1String("http")) {
+ }
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
+ else if (url.scheme() == QLatin1String("http")) {
Q_ASSERT(!m_download);
m_download = new Download(url, this);
connect(m_download, SIGNAL(lengthChanged(qint64)),
@@ -264,7 +268,9 @@ void MMF::AbstractMediaPlayer::open()
connect(m_download, SIGNAL(stateChanged(Download::State)),
this, SLOT(downloadStateChanged(Download::State)));
m_download->start();
- } else {
+ }
+#endif
+ else {
symbianErr = openUrl(url.toString());
if (KErrNone != symbianErr)
errorMessage = tr("Error opening URL");
@@ -308,8 +314,10 @@ void MMF::AbstractMediaPlayer::open()
void MMF::AbstractMediaPlayer::close()
{
doClose();
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
delete m_download;
m_download = 0;
+#endif
m_position = 0;
}
@@ -419,7 +427,9 @@ void MMF::AbstractMediaPlayer::loadingComplete(int error)
bufferingComplete();
doSeek(m_position);
startPlayback();
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
m_downloadStalled = false;
+#endif
}
} else {
Q_ASSERT(Phonon::LoadingState == state());
@@ -472,12 +482,20 @@ qint64 MMF::AbstractMediaPlayer::toMilliSeconds(const TTimeIntervalMicroSeconds
bool MMF::AbstractMediaPlayer::isProgressiveDownload() const
{
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
return (0 != m_download);
+#else
+ return false;
+#endif
}
bool MMF::AbstractMediaPlayer::progressiveDownloadStalled() const
{
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
return m_downloadStalled;
+#else
+ return false;
+#endif
}
//-----------------------------------------------------------------------------
@@ -547,6 +565,7 @@ void MMF::AbstractMediaPlayer::startPlayback()
void MMF::AbstractMediaPlayer::setProgressiveDownloadStalled()
{
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
TRACE_CONTEXT(AbstractMediaPlayer::setProgressiveDownloadStalled, EAudioApi);
TRACE_ENTRY("state %d", state());
Q_ASSERT(isProgressiveDownload());
@@ -555,7 +574,6 @@ void MMF::AbstractMediaPlayer::setProgressiveDownloadStalled()
bufferingStarted();
// Video player loses window handle when closed - need to reapply it here
videoOutputChanged();
-#ifdef QT_PHONON_MMF_DOWNLOAD_DUMMY
m_download->resume();
#endif
}
@@ -569,6 +587,7 @@ void MMF::AbstractMediaPlayer::bufferStatusTick()
emit MMF::AbstractPlayer::bufferStatus(status);
}
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
void MMF::AbstractMediaPlayer::downloadLengthChanged(qint64 length)
{
TRACE_CONTEXT(AbstractMediaPlayer::downloadLengthChanged, EAudioApi);
@@ -611,6 +630,7 @@ void MMF::AbstractMediaPlayer::downloadStateChanged(Download::State state)
break;
}
}
+#endif // PHONON_MMF_PROGRESSIVE_DOWNLOAD
Phonon::State MMF::AbstractMediaPlayer::phononState(PrivateState state) const
{
diff --git a/src/3rdparty/phonon/mmf/abstractmediaplayer.h b/src/3rdparty/phonon/mmf/abstractmediaplayer.h
index 99fc101..c3b4528 100644
--- a/src/3rdparty/phonon/mmf/abstractmediaplayer.h
+++ b/src/3rdparty/phonon/mmf/abstractmediaplayer.h
@@ -23,7 +23,9 @@ along with this library. If not, see <http://www.gnu.org/licenses/>.
#include <QScopedPointer>
#include <e32std.h>
#include "abstractplayer.h"
-#include "download.h"
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
+# include "download.h"
+#endif
class RFile;
@@ -118,8 +120,10 @@ private:
private Q_SLOTS:
void positionTick();
void bufferStatusTick();
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
void downloadLengthChanged(qint64);
void downloadStateChanged(Download::State);
+#endif
private:
MediaObject *const m_parent;
@@ -140,9 +144,10 @@ private:
// Used for playback of resource files
TPtrC8 m_buffer;
- // Used for progressive download
+#ifdef PHONON_MMF_PROGRESSIVE_DOWNLOAD
Download *m_download;
bool m_downloadStalled;
+#endif
QMultiMap<QString, QString> m_metaData;
diff --git a/src/3rdparty/phonon/mmf/download.h b/src/3rdparty/phonon/mmf/download.h
index b57348b..bda7963 100644
--- a/src/3rdparty/phonon/mmf/download.h
+++ b/src/3rdparty/phonon/mmf/download.h
@@ -70,8 +70,6 @@ public:
const QUrl &sourceUrl() const;
const QString &targetFileName() const;
void start();
-
- // Only has effect when QT_PHONON_MMF_DOWNLOAD_DUMMY is defined
void resume();
enum State {
diff --git a/src/plugins/phonon/mmf/mmf.pro b/src/plugins/phonon/mmf/mmf.pro
index 902354f..ac11188 100644
--- a/src/plugins/phonon/mmf/mmf.pro
+++ b/src/plugins/phonon/mmf/mmf.pro
@@ -36,7 +36,6 @@ symbian {
$$PHONON_MMF_DIR/backend.h \
$$PHONON_MMF_DIR/bassboost.h \
$$PHONON_MMF_DIR/defs.h \
- $$PHONON_MMF_DIR/download.h \
$$PHONON_MMF_DIR/dummyplayer.h \
$$PHONON_MMF_DIR/effectfactory.h \
$$PHONON_MMF_DIR/effectparameter.h \
@@ -62,7 +61,6 @@ symbian {
$$PHONON_MMF_DIR/abstractvideoplayer.cpp \
$$PHONON_MMF_DIR/backend.cpp \
$$PHONON_MMF_DIR/bassboost.cpp \
- $$PHONON_MMF_DIR/download.cpp \
$$PHONON_MMF_DIR/dummyplayer.cpp \
$$PHONON_MMF_DIR/effectfactory.cpp \
$$PHONON_MMF_DIR/effectparameter.cpp \
@@ -77,25 +75,37 @@ symbian {
$$PHONON_MMF_DIR/utils.cpp \
$$PHONON_MMF_DIR/videowidget.cpp
- # Test for whether the build environment supports video rendering to graphics
- # surfaces.
- symbian:exists($${EPOCROOT}epoc32/include/platform/videoplayer2.h) {
- HEADERS += \
- $$PHONON_MMF_DIR/videooutput_surface.h \
- $$PHONON_MMF_DIR/videoplayer_surface.h
- SOURCES += \
- $$PHONON_MMF_DIR/videooutput_surface.cpp \
- $$PHONON_MMF_DIR/videoplayer_surface.cpp
- DEFINES += PHONON_MMF_VIDEO_SURFACES
- } else {
- HEADERS += \
- $$PHONON_MMF_DIR/ancestormovemonitor.h \
- $$PHONON_MMF_DIR/videooutput_dsa.h \
- $$PHONON_MMF_DIR/videoplayer_dsa.h
- SOURCES += \
- $$PHONON_MMF_DIR/ancestormovemonitor.cpp \
- $$PHONON_MMF_DIR/videooutput_dsa.cpp \
- $$PHONON_MMF_DIR/videoplayer_dsa.cpp \
+ symbian {
+ # Test for whether the build environment supports video rendering to graphics
+ # surfaces.
+ exists($${EPOCROOT}epoc32/include/platform/videoplayer2.h) {
+ HEADERS += \
+ $$PHONON_MMF_DIR/videooutput_surface.h \
+ $$PHONON_MMF_DIR/videoplayer_surface.h
+ SOURCES += \
+ $$PHONON_MMF_DIR/videooutput_surface.cpp \
+ $$PHONON_MMF_DIR/videoplayer_surface.cpp
+ DEFINES += PHONON_MMF_VIDEO_SURFACES
+ } else {
+ HEADERS += \
+ $$PHONON_MMF_DIR/ancestormovemonitor.h \
+ $$PHONON_MMF_DIR/videooutput_dsa.h \
+ $$PHONON_MMF_DIR/videoplayer_dsa.h
+ SOURCES += \
+ $$PHONON_MMF_DIR/ancestormovemonitor.cpp \
+ $$PHONON_MMF_DIR/videooutput_dsa.cpp \
+ $$PHONON_MMF_DIR/videoplayer_dsa.cpp \
+ }
+
+ # Test whether the build environment includes support for the Download Manager
+ # API, required for Progressive Download
+ exists($${EPOCROOT}epoc32/include/downloadmgrclient.h) | \
+ exists($${EPOCROOT}epoc32/include/mw/downloadmgrclient.h) {
+ HEADERS += $$PHONON_MMF_DIR/download.h
+ SOURCES += $$PHONON_MMF_DIR/download.cpp
+ LIBS += -ldownloadmgr
+ DEFINES += PHONON_MMF_PROGRESSIVE_DOWNLOAD
+ }
}
LIBS += -lcone
@@ -113,7 +123,6 @@ symbian {
LIBS += -lapgrfx -lapmime # For recognizer
LIBS += -lmmfcontrollerframework # For CMMFMetaDataEntry
LIBS += -lmediaclientaudiostream # For CMdaAudioOutputStream
- LIBS += -ldownloadmgr
# These are for effects.
LIBS += -lAudioEqualizerEffect -lBassBoostEffect -lDistanceAttenuationEffect -lDopplerBase -lEffectBase -lEnvironmentalReverbEffect -lListenerDopplerEffect -lListenerLocationEffect -lListenerOrientationEffect -lLocationBase -lLoudnessEffect -lOrientationBase -lSourceDopplerEffect -lSourceLocationEffect -lSourceOrientationEffect -lStereoWideningEffect