[Helix-client-dev] Re: [Clientapps-dev] CR: EGRS-7VBVGU: Video frame is not updated with current position after seeking in pause state

Eric Hyche <[email protected]> Fri, 6 Nov 2009 10:06:58 -0500
Newsgroups gmane.comp.multimedia.helix.devel
Message-ID <[email protected]>
These changes look good to me.

On Nov 6, 2009, at 12:24 AM, [email protected] wrote:

> "Nokia submits this code under the terms of a commercial  
> contribution agreement with RealNetworks, and I am authorized to  
> contribute this code under said agreement."
>
> Modified by:  [email protected]
>
> Reviewed by:
>
> TSW Id: EGRS-7VBVGU
>
> Date: 11/6/2009
> 	
> Project: SymbianMmf_wm
>
> Synopsis: Video frame is not updated with current position after  
> seeking in pause state
>
> Overview:
> This error was introduced after CR 417-21674 and CPHU-7RJRN9, the  
> first fix introduces an interface to enable pausing and resuming  
> scheduler and the second one resumes the scheduler in audio and  
> video controllers as soon as HXPlayer gets the play command. The  
> problem occurs when we seek after pausing, the Video frame is not  
> updated with current position as scheduler has already been paused.
>
> Fix:
> Now we are resuming the scheduler for a brief time (till the video  
> frame is updated) and then pausing it again. ResumeScheduler() is  
> called after SetPositionL() just to update the Video frame after  
> seeking. Once the video frame has been updated, calling  
> m_pAdviseSink->OnPostSeek(,) from HXPlayer::SendPostSeekIfNecessary 
> () just to notify HXMMFStateCtrl of OnPostSeek event. An additional  
> interface had to be defined at hxmmfstatectrl observer for this  
> OnPostSeek event to notify the MMF only if we are in Paused state.  
> And at the implementation of OnPostSeek() checking if Scheduler is  
> not paused then pausing it.
>
> Files modified & changes:
> /clientapps/symbianMmf/common/hxmmfbasectrl.cpp
> /clientapps/symbianMmf/common/hxmmfbasectrl.h
> /clientapps/symbianMmf/hxmmfstatectrl.cpp
> /clientapps/symbianMmf/hxmmfstatectrlobs.h
> /clientapps/symbianMmf/videocontroller/hxmmfctrlimpl.cpp
> /clientapps/symbianMmf/videocontroller/hxmmfctrlimpl.h
> /clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.cpp
> /clientapps/symbianMmf/audiocontroller/hxmmfaudioctrl.h
> /client/core/hxplay.cpp
>
> Image Size and Heap Use impact: No major impact
>
> Module Release testing (STIF) : Passed
>
> Test case(s) Added  : No
>
> Memory leak check performed : Passed, No additional leaks introduced.
>
> Platforms and Profiles Build Verified: helix-client-s60-50-mmf-mdf-dsp
>
> Platforms and Profiles Functionality verified: armv5
>
> Branch: 223Cays, 221Cays, 210Cays, HEAD and 420Brizo
>
> CVS Diff on 223Cays: Attached
> < 
> hxmmbasectrl.cpp.diff 
> > 
> < 
> hxmmfstatectrl.cpp.diff 
> > 
> < 
> hxmmfstatectrlobs.h.diff 
> > 
> < 
> hxmmbasectrl.h.diff 
> > 
> < 
> hxmmfctrlimpl.cpp.diff 
> > 
> < 
> hxmmfctrlimpl.h.diff 
> > 
> < 
> hxmmfaudioctrl.cpp.diff 
> > 
> < 
> hxmmfaudioctrl.h.diff 
> ><hxplay.cpp.diff>_______________________________________________
> Clientapps-dev mailing list
> [email protected]
> http://lists.helixcommunity.org/mailman/listinfo/clientapps-dev

Eric Hyche ([email protected])
Principal Engineer
RealNetworks, Inc.