diff options
author | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-09-28 10:05:41 (GMT) |
---|---|---|
committer | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-10-01 10:33:25 (GMT) |
commit | 865a9214fbb858cd5089aa3073ad2cff305017ea (patch) | |
tree | 1894bb5b5266fb9ad863017bedf838b78c2c14b7 /src/3rdparty/phonon/mmf/abstractvideoplayer.h | |
parent | 1f14df23bf0e593c31efc846c13f11afb0fad6b8 (diff) | |
download | Qt-865a9214fbb858cd5089aa3073ad2cff305017ea.zip Qt-865a9214fbb858cd5089aa3073ad2cff305017ea.tar.gz Qt-865a9214fbb858cd5089aa3073ad2cff305017ea.tar.bz2 |
Progressive download in Phonon MMF backend: integrated with player
This commit integrates the Download class with the media playback
classes in the backend, to implement Progressive Download.
Note that this PDL implementation has one drawback: when video
playback is paused due to shortage of data (i.e. due to the download
being temporarily stalled), the display goes black. This is because,
when the end of the currently-downloaded data is reached, the
playback session is closed. When more data becomes available, the
clip is re-opened, a seek is done to reach the previous playback
position, and playback is re-started. Closing the playback session
closes the video stack's connection to the display, thereby causing
the video widget to go black while more data is buffered.
This is a consequence of the level in the native video stack at which
the Phonon integration is done: managing a network stall without
requiring the playback session to be closed would require integration
below the MMF client API, specifically at the MMF controller level.
Task-number: QTBUG-10769
Reviewed-by: Derick Hawcroft
Diffstat (limited to 'src/3rdparty/phonon/mmf/abstractvideoplayer.h')
-rw-r--r-- | src/3rdparty/phonon/mmf/abstractvideoplayer.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/3rdparty/phonon/mmf/abstractvideoplayer.h b/src/3rdparty/phonon/mmf/abstractvideoplayer.h index 3ff3c75..3bc5c7c 100644 --- a/src/3rdparty/phonon/mmf/abstractvideoplayer.h +++ b/src/3rdparty/phonon/mmf/abstractvideoplayer.h @@ -64,21 +64,22 @@ public: virtual void doStop(); virtual void doSeek(qint64 milliseconds); virtual int setDeviceVolume(int mmfVolume); + virtual int openFile(const QString &fileName); virtual int openFile(RFile &file); virtual int openUrl(const QString &url); virtual int openDescriptor(const TDesC8 &des); virtual int bufferStatus() const; - virtual void close(); + virtual void doClose(); // MediaObjectInterface virtual bool hasVideo() const; - virtual qint64 currentTime() const; virtual qint64 totalTime() const; // AbstractPlayer virtual void videoOutputChanged(); // AbstractMediaPlayer + virtual qint64 getCurrentTime() const; virtual int numberOfMetaDataEntries() const; virtual QPair<QString, QString> metaDataEntry(int index) const; |