summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/phonon/mmf
Commit message (Collapse)AuthorAgeFilesLines
* Merge commit 's60/4.6' into mmfphononFrans Englich2009-11-161-1/+1
|\
| * Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt into 4.6Shane Kearns2009-11-101-1/+1
| |\
| | * Merge branch '4.6-api-review' into 4.6Marius Storm-Olsen2009-11-091-1/+1
| | |\
| | | * API review: Rename numRects() -> rectCount()Marius Storm-Olsen2009-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QRegion::numRects() is marked obsolete. Removed all usage of the old function inside Qt and test-cases. Reviewed-by: Andreas Aardal Hanssen
* | | | Merge branch '4.6' into mmfphononFrans Englich2009-11-163-5/+22
|\ \ \ \ | |/ / /
| * | | Fix qdoc errors in the MMF Phonon backend.Frans Englich2009-11-063-5/+22
| |/ / | | | | | | | | | | | | Task-number: QTBUG-5355 Reviewed-by: TrustMe
* | | Implemented aspect ratio and scale mode handling in Phonon MMF backendGareth Stockwell2009-11-1317-337/+380
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Replaced VolumeObserver and VideoOutputObserver interfaces with signals. - Added signals for propagating changes in aspect ratio and scale mode from VideoOutput to VideoPlayer. - Removed VideoPlayer::getNativeWindowSystemHandles. Interaction with window system is moved into VideoOutput, so that VideoPlayer is better focussed on its main task: interacting with CVideoPlayerUtility. - WId changes, resize and move events received by the VideoOutput widget cause it to emit a videoWindowChanged signal. This is received by the VideoPlayer, which triggers a call to updateVideoRect. The main task of this function is to calculate the scale factors which are provided to the MMF via CVideoPlayerUtility::SetScaleFactorL. Note that: i) This function must be called both before and after the call to SetDisplayWindowL. For changes in aspect ratio or scale mode, setting the scale mode after updating the display window is sufficient. However, testing showed that, when switching in or out of full-screen mode, two calls were necessary in order to preserve the correct aspect ratio. ii) The screen rectangle passed to the MMF is still the full window extent; it is not the region in which video will actually be rendered. The post-processor will fill in the remainder of the window with a background colour (typically black). If, on the other hand, we passed in the actual video display rectangle, we would need to do this background painting in the widget. This in turn would require a change to QtGui: at present, we can only disable blitting on a per-widget basis (by setting QWExtra::disableBlit). If we needed to paint the borders of the video window, disableBlit would need to contain the actual DSA region, rather than just a single boolean flag. Task-number: QTBUG-5585 Reviewed-by: Frans Englich
* | | Allowed execution of pause command when backend is in error stateGareth Stockwell2009-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | When qmediaplayer receives a stateChanged(ErrorState) signal, it first displays a dialog, and then calls pause() on the media object. This change allows that pause command to be executed on the underlying MMF client API. Reviewed-by: Frans Englich
* | | Removed infinite recursion from Phonon::MMF::MediaObject::errorTypeGareth Stockwell2009-11-091-1/+1
| | | | | | | | | | | | Reviewed-by: Frans Englich
* | | Merge branch 'mmfphonon' of scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Gareth Stockwell2009-11-098-42/+9
|\ \ \ | | | | | | | | | | | | mmfphonon
| * | | Replace mmfphonondebug.lib with #ifndef QT_NO_DEBUG.Frans Englich2009-11-098-42/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The debug{} directive in src/plugins/phonon/mmf/plugin/plugin.pro does not have any effect - this can be seen by looking at the generated MMP file, which has a STATICLIBRARY directive which is applied in both UDEB and UREL builds. This is the general problem that .pro files cannot tell distinction between the different targets that one makespec covers. Also remove objectdumpstub; objectdump was originally prepared for QtGui inclusion, but since that never happened, no other platforms than Symbian needs to be covered. Task-number: QTBUG-5466 Reviewed-by: Gareth Stockwell
* | | | Fixed compiler warning for RVCT 2.2Gareth Stockwell2009-11-091-23/+24
|/ / / | | | | | | | | | Reviewed-by: trustme
* | | Removed logging from Phonon MMF backendGareth Stockwell2009-11-051-8/+0
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This statement calls a function (RWindowBase::ClientHandle) which was introduced in S60 3.2. Although there is a runtime check, a build made against 3.2 or above will fail on a 3.1 device. This manifests itself by the plugin failing to load. The log statement is not really necessary anyway, because, for window-owning controls, the window handle is the same value as the CCoeControl* pointer. This means that logging RWindowBase::ClientHandle is redundant information. Task-number: QTBUG-5406 Reviewed-by: trustme
* | Merge commit 's60/4.6' into mmfphononFrans Englich2009-11-041-2/+2
|\ \ | |/
| * Doc/i18n: Fixed source strings for translation.David Boddie2009-11-031-2/+2
| | | | | | | | Reviewed-by: Oswald Buddenhagen
* | Implemented metadata handling in Phonon MMF backendGareth Stockwell2009-11-048-2/+71
| | | | | | | | | | Task-number: QTBUG-4662 Reviewed-by: Frans Englich
* | Removed some logging from MMF Phonon backendGareth Stockwell2009-11-041-2/+2
| | | | | | | | Reviewed-by: trustme
* | Fixed crash opening audio clip when video clip currently openGareth Stockwell2009-11-031-0/+3
| | | | | | | | | | Task-number: QTBUG-5302 Reviewed-by: trustme
* | Fixed volume calculation in Phonon MMF backendGareth Stockwell2009-11-031-1/+2
| | | | | | | | | | Task-number: QTBUG-4777 Reviewed-by: trustme
* | Fixed state bug in Phonon MMF backendGareth Stockwell2009-11-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | This fixes a bug introduced by 58efa8aa, which meant that, when a new clip was opened: 1. Playback did not start automatically 2. The current volume setting in the app UI was not applied to the MMF client API Task-number: QTBUG-4999 Reviewed-by: trustme
* | Improve error handling.Frans Englich2009-10-237-51/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | Errors reported via: * the DummyPlayer didn't work due to it not doing the usual state transitions/emission * MediaObject::setSource() due to errors being emitted before connections being set up. * A general state bug. Task-number: QTBUG-4752 Reviewed-by: Gareth Stockwell
* | Video screen region is updated in response to ancestors of video widgetGareth Stockwell2009-10-238-11/+326
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | being moved. Because QWidget::moveEvent is only called when a widget moves relative to its parent, a widget's absolute screen position may change without it receiving a moveEvent (for example, as a result of its parent being moved). The MMF video playback API on Symbian v9.4 requires, in addition to a window handle, an absolute screen rectangle. Changes in the video widget's absolute screen position therefore need to be propagated into the MMF. This change introduces a new object, AncestorMoveMonitor, which installs an event filter on the QCoreApplication instance. A VideoOutput object registers with the AncestorMoveMonitor, which listens on its behalf for MoveEvents and ParentChangeEvents directed at any of the ancestors of the VideoOutput. MoveEvents trigger a callback to the VideoOutput instance, which then notifies the MMF of the new screen rectangle. ParentChangeEvents cause the AncestorMoveMonitor to update the ancestor list associated with the target VideoOutput instance. The video position now tracks that of the associated widget, but there are two problems which require further investigation: 1. The video window lags behind. This may be an unavoidable consequence of the fact that setting a new screen rectangle causes the MMF to tear down its DSA session and start a new one; this is known to block the window server and take some time to complete. 2. Artifacts are visible around the edges of the moving video widget. Task-number: QTBUG-4787 Reviewed-by: Frans Englich
* Fix bug introduced by cleanup commit.Frans Englich2009-10-201-2/+0
| | | | Reviewed-by: Gareth Stockwell
* Does not disable full screen when end of video playlist is reached.Frans Englich2009-10-191-1/+1
| | | | | | | Tested on Symbian and Windows(DS9). Task-number: QTBUG-4869 Reviewed-by: Gareth Stockwell
* Kill warning, simplify code.Frans Englich2009-10-161-2/+4
| | | | Reviewed-by: TrustMe
* Replace tabs with whitespace.Frans Englich2009-10-155-65/+65
| | | | | sed -i -e 's/\t/ /g' `find -name "*.cpp" -or -name "*.h" -or -name "*.pro"`
* sed -i -e 's/for(/for (/g' `find -name "*.cpp" -or -name "*.h" -or -nameFrans Englich2009-10-154-5/+5
| | | | "*.pro"`
* sed -i -e 's/if(/if (/g' `find -name "*.cpp" -or -name "*.h" -or -nameFrans Englich2009-10-157-45/+45
| | | | "*.pro"`
* Use QT_NO_DEBUG, not _DEBUG.Frans Englich2009-10-154-9/+9
|
* Remove trailing whitespace.Frans Englich2009-10-157-108/+108
|
* Modified video widget to respond to WinIdChange eventsGareth Stockwell2009-10-092-0/+12
| | | | | Task-number: QTBUG-4664 Reviewed-by: Frans Englich
* Reformatting to comply with Qt code styleGareth Stockwell2009-10-092-9/+9
| | | | Reviewed-by: Frans Englich
* Refactored event-handling code in video widgetGareth Stockwell2009-10-092-13/+15
| | | | | | Moved common code into videoOutputRegionChanged() Reviewed-by: Frans Englich
* Modified ObjectDump annotator for Symbian window informationGareth Stockwell2009-10-091-35/+35
| | | | | | This prevents a crash when applied to controls which are non-window owning Reviewed-by: Frans Englich
* Added ObjectDump annotator which prints Symbian-specific internal widget flagsGareth Stockwell2009-10-092-0/+40
| | | | Reviewed-by: Frans Englich
* Modified getDsaRegion to be compiled only in debug buildsGareth Stockwell2009-10-091-4/+9
| | | | Reviewed-by: Frans Englich
* Preventing unnecessary calls to CVideoPlayerUtility::SetDisplayWindowLGareth Stockwell2009-10-092-18/+30
| | | | | | | | | | | | | | | | | getNativeWindowSystemHandles now checks the window handle and screen rectangle against the previous value; SetDisplayWindowL is only called if the window and/or screen rectangle have changed. This allows videoOutputRegionChanged to be called 'speculatively' - i.e. in response to Qt events which may or may not reflect a change in the underlying window system - with only actual window system events getting propagated into the MMF. The reason for this change is that SetDisplayWindowL results in the current DSA session (owned by CVideoPlayerUtility) being torn down and a new one set up. This in turn requires handshaking with the window server, and may be slow. Reviewed-by: Frans Englich
* Simplified handling of native window information in VideoPlayerGareth Stockwell2009-10-092-64/+55
| | | | | | | | | | | Now retrieve RWsSession and CScreenDevice from CCoeEnv::Static() once (at construction), instead of at every call to getNativeWindowSystemHandles(). Collapsed m_screenRect and m_clipRect into a single m_rect member, since the two rectangles are always identical anyway. Reviewed-by: Frans Englich
* Use QScopedPointer for AudioPlayer's CPlayerType.Frans Englich2009-10-072-7/+7
| | | | Reviewed-by: Gareth Stockwell
* mediaplayer: crash in settings dialog.Frans Englich2009-10-073-15/+42
| | | | | | | The MediaPlayer requires that an output device is available. Task-number: QTBUG-4755 Reviewed-by: Gareth Stockwell
* Fix crash related to audio equalizer.Frans Englich2009-10-062-17/+14
| | | | | | The constructor initializer relied on member variables. Task-number: QTBUG-4689
* Remove TODO.txt, we've moved to Jira.Frans Englich2009-10-021-29/+0
|
* Merge commit 'qt/4.6' into mmfphononFrans Englich2009-10-0216-0/+74
|\ | | | | | | | | Conflicts: src/gui/kernel/qwidget_s60.cpp
| * qdoc: Marked some undocumented Phonon classes internalMartin Smith2009-10-011-1/+1
| |
| * qdoc: Marked some undocumented Phonon classes internalMartin Smith2009-10-0116-0/+74
| |
* | Merge branch 'mmfphonon' of git@scm.dev.nokia.troll.no:qt/qt-s60-public into ↵Gareth Stockwell2009-10-012-9/+10
|\ \ | | | | | | | | | mmfphonon
| * | Use correct return value.Frans Englich2009-10-011-1/+1
| |/ | | | | | | Fixes tst_MediaObject::testReconnectBetweenTwoMediaObjects().
| * Merge commit 'origin/4.6' into mmfphononFrans Englich2009-09-301-8/+9
| |\
| | * Phonon/EffectFactory: Remove calls to QObject tr().Friedemann Kleint2009-09-301-8/+9
| | | | | | | | | | | | | | | | | | Replace them by calls to QCoreApplication::translate() to provide translators with context information. Reviewed-by: Frans Englich <frans.englich@nokia.com>
* | | Removed dummy VideoOutput instance.Gareth Stockwell2009-09-304-45/+79
|/ / | | | | | | This is part of an attempt to get the draggablevideo test app working on Symbian. Use of the dummy video output object causes a top-level window to be created, which was suspected of being the reason why video is not visible. This is not the case - for some reason, when the VideoOutput window is activated, it is still marked as 'hidden' by the window server (CWsClientWindow::ResetHiddenFlag, triggered from CCoeControl::ActivateL).