×
Namespaces

Variants
Actions

Video output lost when redrawing the application UI during playback on S60 5th Edition (Known Issue)

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata
Tested with
Devices(s): Nokia 5800 XpressMusic
Compatibility
Platform(s): S60 5th Edition (initial release)
S60 5th Edition
Article
Created: User:Kbwiki (02 Sep 2009)
Last edited: hamishwillee (14 Jun 2013)

Overview

SetDisplayWindowL() sets the display window. This is used to provide the video controller with an area of the display to render the current video frame. It can be used to set the size and reset the size before or while playing any video file. Calling DrawDeferred() after SetDisplayWindowL causes undesired effects as the DrawDeferred() function draws the control with low priority.

Description

This issue can be checked with any video playback application that uses CVideoPlayerUtility.

There is a problem when DrawDeferred() or DrawNow() is called after SetDisplayWindowL() during the playback of a video file. When DrawDeferred() is called, the application rectangle is drawn and it redraws the area in which the video is being played. Hence the video will disappear (audio still works). When the framework draws the screen again, the video reappears (for example, when Options is pressed, or when the screen is touched). DrawDeferred() cannot be called before and after SetDisplayWindowL() because it is up to WindowServer to decide when the drawing of the control has to be done, as it is of low priority.

Solution

DrawNow() is used for drawing the control with high priority, and if any controls need to be added it can be called before the SetDisplayWindowL() method.

This page was last modified on 14 June 2013, at 07:54.
60 page views in the last 30 days.
×