1 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 // |
7 // |
8 // Initial Contributors: |
8 // Initial Contributors: |
9 // Nokia Corporation - initial contribution. |
9 // Nokia Corporation - initial contribution. |
10 // |
10 // |
11 // Contributors: |
11 // Contributors: |
106 */ |
106 */ |
107 virtual void MvpuoFrameReady(CFbsBitmap& aFrame,TInt aError) = 0; |
107 virtual void MvpuoFrameReady(CFbsBitmap& aFrame,TInt aError) = 0; |
108 |
108 |
109 /** |
109 /** |
110 Notification that video playback has completed. This is not called if |
110 Notification that video playback has completed. This is not called if |
111 playback is explicitly stopped by calling Stop. |
111 playback is explicitly stopped (such as through the use of the Stop or |
|
112 Close commands). |
112 |
113 |
113 @param aError |
114 @param aError |
114 The status of playback. |
115 The status of playback. |
115 This is either KErrNone if the playback was completed successfully, |
116 This is either KErrNone if the playback was completed successfully, |
116 or one of the system wide error codes. |
117 or one of the system wide error codes. |
180 @since 7.0s |
183 @since 7.0s |
181 */ |
184 */ |
182 class CVideoPlayerUtility : public CBase, |
185 class CVideoPlayerUtility : public CBase, |
183 public MMMFClientUtility |
186 public MMMFClientUtility |
184 { |
187 { |
185 class CBody; |
|
186 public: |
188 public: |
187 |
189 |
188 ~CVideoPlayerUtility(); |
190 ~CVideoPlayerUtility(); |
189 |
191 |
190 IMPORT_C static CVideoPlayerUtility* NewL(MVideoPlayerUtilityObserver& aObserver, |
192 IMPORT_C static CVideoPlayerUtility* NewL(MVideoPlayerUtilityObserver& aObserver, |
191 TInt aPriority, |
193 TInt aPriority, |
192 TMdaPriorityPreference aPref, |
194 TInt aPref, |
193 RWsSession& aWs, |
195 RWsSession& aWs, |
194 CWsScreenDevice& aScreenDevice, |
196 CWsScreenDevice& aScreenDevice, |
195 RWindowBase& aWindow, |
197 RWindowBase& aWindow, |
196 const TRect& aScreenRect, |
198 const TRect& aScreenRect, |
197 const TRect& aClipRect); |
199 const TRect& aClipRect); |
215 |
217 |
216 IMPORT_C TInt Stop(); |
218 IMPORT_C TInt Stop(); |
217 |
219 |
218 IMPORT_C void PauseL(); |
220 IMPORT_C void PauseL(); |
219 |
221 |
220 IMPORT_C void SetPriorityL(TInt aPriority, TMdaPriorityPreference aPref); |
222 IMPORT_C void SetPriorityL(TInt aPriority, TInt aPref); |
221 |
223 |
222 IMPORT_C void PriorityL(TInt& aPriority, TMdaPriorityPreference& aPref) const; |
224 IMPORT_C void PriorityL(TInt& aPriority, TMdaPriorityPreference& aPref) const; |
223 |
225 |
224 IMPORT_C void SetDisplayWindowL(RWsSession& aWs,CWsScreenDevice& aScreenDevice,RWindowBase& aWindow,const TRect& aWindowRect,const TRect& aClipRect); |
226 IMPORT_C void SetDisplayWindowL(RWsSession& aWs,CWsScreenDevice& aScreenDevice,RWindowBase& aWindow,const TRect& aWindowRect,const TRect& aClipRect); |
225 |
227 |
303 |
305 |
304 IMPORT_C TInt WillResumePlay(); |
306 IMPORT_C TInt WillResumePlay(); |
305 |
307 |
306 IMPORT_C TInt SetInitScreenNumber(TInt aScreenNumber); |
308 IMPORT_C TInt SetInitScreenNumber(TInt aScreenNumber); |
307 |
309 |
308 // SetPlayVelocityL() is publishedPartner and prototype as it is not yet used by licensees, |
|
309 // and there is a possibility that it may change on licensee request for a short period. |
|
310 // It will eventually be moved to publishedAll and released. |
|
311 IMPORT_C void SetPlayVelocityL(TInt aVelocity); |
310 IMPORT_C void SetPlayVelocityL(TInt aVelocity); |
312 |
311 |
313 // PlayVelocityL() is publishedPartner and prototype as it is not yet used by licensees, |
|
314 // and there is a possibility that it may change on licensee request for a short period. |
|
315 // It will eventually be moved to publishedAll and released. |
|
316 IMPORT_C TInt PlayVelocityL() const; |
312 IMPORT_C TInt PlayVelocityL() const; |
317 |
313 |
318 // StepFrameL() is publishedPartner and prototype as it is not yet used by licensees, |
|
319 // and there is a possibility that it may change on licensee request for a short period. |
|
320 // It will eventually be moved to publishedAll and released. |
|
321 IMPORT_C void StepFrameL(TInt aStep); |
314 IMPORT_C void StepFrameL(TInt aStep); |
322 |
315 |
323 // GetPlayRateCapabilitiesL() is publishedPartner and prototype as it is not yet used by licensees, |
|
324 // and there is a possibility that it may change on licensee request for a short period. |
|
325 // It will eventually be moved to publishedAll and released. |
|
326 IMPORT_C void GetPlayRateCapabilitiesL(TVideoPlayRateCapabilities& aCapabilities) const; |
316 IMPORT_C void GetPlayRateCapabilitiesL(TVideoPlayRateCapabilities& aCapabilities) const; |
327 |
317 |
328 // SetVideoEnabledL() is publishedPartner and prototype as it is not yet used by licensees, |
|
329 // and there is a possibility that it may change on licensee request for a short period. |
|
330 // It will eventually be moved to publishedAll and released. |
|
331 IMPORT_C void SetVideoEnabledL(TBool aVideoEnabled); |
318 IMPORT_C void SetVideoEnabledL(TBool aVideoEnabled); |
332 |
319 |
333 // VideoEnabledL() is publishedPartner and prototype as it is not yet used by licensees, |
|
334 // and there is a possibility that it may change on licensee request for a short period. |
|
335 // It will eventually be moved to publishedAll and released. |
|
336 IMPORT_C TBool VideoEnabledL() const; |
320 IMPORT_C TBool VideoEnabledL() const; |
337 |
321 |
338 // SetAudioEnabledL() is publishedPartner and prototype as it is not yet used by licensees, |
|
339 // and there is a possibility that it may change on licensee request for a short period. |
|
340 // It will eventually be moved to publishedAll and released. |
|
341 IMPORT_C void SetAudioEnabledL(TBool aAudioEnabled); |
322 IMPORT_C void SetAudioEnabledL(TBool aAudioEnabled); |
342 |
323 |
343 // SetAutoScaleL() is publishedPartner and prototype as it is not yet used by licensees, |
|
344 // and there is a possibility that it may change on licensee request for a short period. |
|
345 // It will eventually be moved to publishedAll and released. |
|
346 IMPORT_C void SetAutoScaleL(TAutoScaleType aScaleType); |
324 IMPORT_C void SetAutoScaleL(TAutoScaleType aScaleType); |
347 |
325 |
348 // SetAutoScaleL() is publishedPartner and prototype as it is not yet used by licensees, |
326 IMPORT_C void SetAutoScaleL(TAutoScaleType aScaleType, TInt aHorizPos, TInt aVertPos); |
349 // and there is a possibility that it may change on licensee request for a short period. |
327 |
350 // It will eventually be moved to publishedAll and released. |
328 IMPORT_C void SetExternalDisplaySwitchingL(TInt aDisplay, TBool aControl); |
351 IMPORT_C void SetAutoScaleL(TAutoScaleType aScaleType, TInt aHorizPos, TInt aVertPos); |
329 |
|
330 private: |
|
331 class CBody; |
|
332 |
|
333 CBody* iBody; |
|
334 |
|
335 friend class CBody; |
|
336 friend class CVideoPlayerUtility2; |
352 private: |
337 private: |
353 enum TMMFVideoPlayerState |
338 enum TMMFVideoPlayerState |
354 { |
339 { |
355 EStopped, |
340 EStopped, |
356 EOpening, |
341 EOpening, |
357 EPaused, |
342 EPaused, |
358 EPlaying |
343 EPlaying |
359 }; |
344 }; |
360 |
345 private: |
361 private: |
|
362 CBody* iBody; |
|
363 |
|
364 friend class CBody; |
|
365 friend class CTestStepUnitMMFVidClient; |
346 friend class CTestStepUnitMMFVidClient; |
|
347 #ifdef SYMBIAN_BUILD_GCE |
|
348 friend class CMediaClientVideoDisplayBody; |
|
349 #endif // SYMBIAN_BUILD_GCE |
366 public: |
350 public: |
367 class CTestView; |
351 class CTestView; |
368 friend class CTestView; |
352 friend class CTestView; |
369 }; |
353 }; |
370 |
354 |
|
355 |
371 #endif |
356 #endif |