33 #include "mpxvideoplaybackcontroller.h" |
33 #include "mpxvideoplaybackcontroller.h" |
34 #include "mpxvideoplaybackmode.h" |
34 #include "mpxvideoplaybackmode.h" |
35 #include "mpxvideofiledetails.h" |
35 #include "mpxvideofiledetails.h" |
36 #include <mpxvideoplaybackdefs.h> |
36 #include <mpxvideoplaybackdefs.h> |
37 #include "mpxvideodrmhelper.h" |
37 #include "mpxvideodrmhelper.h" |
|
38 #include "mpxvideoposterframesetter.h" |
38 |
39 |
39 // Constants |
40 // Constants |
40 const TUid KUidInterfaceMMFHelixController = {0x101F855D}; |
41 const TUid KUidInterfaceMMFHelixController = {0x101F855D}; |
41 |
42 |
42 _LIT8(KMMFAccessPoint,"AccessPoint:Integer = \"%d\";"); |
43 _LIT8(KMMFAccessPoint,"AccessPoint:Integer = \"%d\";"); |
67 // ------------------------------------------------------------------------------------------------ |
68 // ------------------------------------------------------------------------------------------------ |
68 // |
69 // |
69 CMPXVideoPlaybackMode::~CMPXVideoPlaybackMode() |
70 CMPXVideoPlaybackMode::~CMPXVideoPlaybackMode() |
70 { |
71 { |
71 MPX_DEBUG(_L("CMPXVideoPlaybackMode::~CMPXVideoPlaybackMode()")); |
72 MPX_DEBUG(_L("CMPXVideoPlaybackMode::~CMPXVideoPlaybackMode()")); |
|
73 |
|
74 if ( iPosterFrameSetter ) |
|
75 { |
|
76 delete iPosterFrameSetter; |
|
77 iPosterFrameSetter = NULL; |
|
78 } |
72 } |
79 } |
73 |
80 |
74 // ---------------------------------------------------------------------------- |
81 // ---------------------------------------------------------------------------- |
75 // CMPXVideoPlaybackMode::OpenFileL() |
82 // CMPXVideoPlaybackMode::OpenFileL() |
76 // ---------------------------------------------------------------------------- |
83 // ---------------------------------------------------------------------------- |
175 // ------------------------------------------------------------------------------------------------ |
182 // ------------------------------------------------------------------------------------------------ |
176 void CMPXVideoPlaybackMode::HandleBackground() |
183 void CMPXVideoPlaybackMode::HandleBackground() |
177 { |
184 { |
178 MPX_DEBUG(_L("CMPXVideoPlaybackMode::HandleBackground()")); |
185 MPX_DEBUG(_L("CMPXVideoPlaybackMode::HandleBackground()")); |
179 |
186 |
180 // |
|
181 // Pause in all cases to remove the different behavior based on the decoder |
|
182 // |
|
183 iVideoPlaybackCtlr->iState->HandlePause(); |
|
184 |
|
185 if ( iVideoPlaybackCtlr->iAppInForeground ) |
187 if ( iVideoPlaybackCtlr->iAppInForeground ) |
186 { |
188 { |
187 if ( iVideoPlaybackCtlr->IsAlarm() ) |
189 if ( iVideoPlaybackCtlr->IsAlarm() ) |
188 { |
190 { |
189 iVideoPlaybackCtlr->iForegroundPause = ETrue; |
191 iVideoPlaybackCtlr->iState->HandlePause(); |
190 } |
192 } |
191 else if ( iVideoPlaybackCtlr->IsKeyLocked() && |
193 else if ( iVideoPlaybackCtlr->IsKeyLocked() && |
192 iVideoPlaybackCtlr->iFileDetails->iVideoEnabled ) |
194 iVideoPlaybackCtlr->iFileDetails->iVideoEnabled ) |
193 { |
195 { |
194 iVideoPlaybackCtlr->iForegroundPause = ETrue; |
196 iVideoPlaybackCtlr->iState->HandlePause(); |
195 iVideoPlaybackCtlr->SendHideControlsEventL(); |
197 TRAP_IGNORE( iVideoPlaybackCtlr->SendHideControlsEventL() ); |
196 } |
198 } |
197 else if ( iVideoPlaybackCtlr->IsPhoneCall() || iVideoPlaybackCtlr->IsVideoCall() ) |
199 else if ( iVideoPlaybackCtlr->IsPhoneCall() || iVideoPlaybackCtlr->IsVideoCall() ) |
198 { |
200 { |
199 iVideoPlaybackCtlr->iForegroundPause = EFalse; |
201 iVideoPlaybackCtlr->iState->HandlePause(); |
200 } |
202 } |
201 } |
203 } |
202 else |
204 else |
203 { |
205 { |
204 iVideoPlaybackCtlr->iForegroundPause = EFalse; |
206 iVideoPlaybackCtlr->iState->HandlePause(); |
205 } |
207 } |
206 } |
208 } |
207 |
209 |
208 // ------------------------------------------------------------------------------------------------ |
210 // ------------------------------------------------------------------------------------------------ |
209 // CMPXVideoPlaybackMode::CanPlayNow() |
211 // CMPXVideoPlaybackMode::CanPlayNow() |
274 MPX_DEBUG(_L("CMPXVideoPlaybackMode::IsNetworkMode2GL(%d)"), networkMode2g); |
271 MPX_DEBUG(_L("CMPXVideoPlaybackMode::IsNetworkMode2GL(%d)"), networkMode2g); |
275 |
272 |
276 return networkMode2g; |
273 return networkMode2g; |
277 } |
274 } |
278 |
275 |
|
276 |
|
277 // ------------------------------------------------------------------------------------------------ |
|
278 // CMPXVideoPlaybackMode::HandleSetPosterFrame() |
|
279 // ------------------------------------------------------------------------------------------------ |
|
280 void CMPXVideoPlaybackMode::HandleSetPosterFrame() |
|
281 { |
|
282 MPX_DEBUG(_L("CMPXVideoPlaybackMode::HandleSetPosterFrame()")); |
|
283 } |
|
284 |
|
285 // ------------------------------------------------------------------------------------------------ |
|
286 // CMPXVideoPlaybackMode::HandleSetPosterFrame() |
|
287 // ------------------------------------------------------------------------------------------------ |
|
288 void CMPXVideoPlaybackMode::HandleFrameReady(TInt /*aError*/) |
|
289 { |
|
290 MPX_DEBUG(_L("CMPXLocalPlaybackMode::HandleFrameReady()")); |
|
291 } |
279 //************************************************************************************************// |
292 //************************************************************************************************// |
280 // CMPXLocalPlaybackMode |
293 // CMPXLocalPlaybackMode |
281 //************************************************************************************************// |
294 //************************************************************************************************// |
282 CMPXVideoPlaybackMode* |
295 CMPXVideoPlaybackMode* |
283 CMPXLocalPlaybackMode::NewL( CMPXVideoPlaybackController* aVideoPlaybackCtlr ) |
296 CMPXLocalPlaybackMode::NewL( CMPXVideoPlaybackController* aVideoPlaybackCtlr ) |
292 |
305 |
293 CMPXLocalPlaybackMode::~CMPXLocalPlaybackMode() |
306 CMPXLocalPlaybackMode::~CMPXLocalPlaybackMode() |
294 { |
307 { |
295 MPX_DEBUG(_L("CMPXLocalPlaybackMode::~CMPXLocalPlaybackMode()")); |
308 MPX_DEBUG(_L("CMPXLocalPlaybackMode::~CMPXLocalPlaybackMode()")); |
296 } |
309 } |
|
310 |
|
311 void CMPXLocalPlaybackMode::HandleSetPosterFrame() |
|
312 { |
|
313 MPX_DEBUG(_L("CMPXLocalPlaybackMode::HandleSetPosterFrame()")); |
|
314 |
|
315 // create poster frame setter if it does not already exist |
|
316 if ( ! iPosterFrameSetter ) |
|
317 { |
|
318 TRAP_IGNORE(iPosterFrameSetter = CMPXVideoPosterFrameSetter::NewL( iVideoPlaybackCtlr )); |
|
319 } |
|
320 |
|
321 if ( iPosterFrameSetter ) |
|
322 { |
|
323 iPosterFrameSetter->RequestPosterFrame(); |
|
324 } |
|
325 } |
|
326 |
|
327 void CMPXLocalPlaybackMode::HandleFrameReady(TInt aError) |
|
328 { |
|
329 MPX_DEBUG(_L("CMPXLocalPlaybackMode::HandleFrameReady()")); |
|
330 |
|
331 iPosterFrameSetter->HandlePosterFrameReady(aError); |
|
332 } |
|
333 |
297 |
334 |
298 //************************************************************************************************// |
335 //************************************************************************************************// |
299 // CMPXStreamingPlaybackMode |
336 // CMPXStreamingPlaybackMode |
300 //************************************************************************************************// |
337 //************************************************************************************************// |
301 CMPXVideoPlaybackMode* |
338 CMPXVideoPlaybackMode* |
487 // ------------------------------------------------------------------------------------------------ |
520 // ------------------------------------------------------------------------------------------------ |
488 void CMPXLiveStreamingPlaybackMode::HandleBackground() |
521 void CMPXLiveStreamingPlaybackMode::HandleBackground() |
489 { |
522 { |
490 MPX_DEBUG(_L("CMPXLiveStreamingPlaybackMode::HandleBackground()")); |
523 MPX_DEBUG(_L("CMPXLiveStreamingPlaybackMode::HandleBackground()")); |
491 |
524 |
492 // |
525 if ( iVideoPlaybackCtlr->iAppInForeground ) |
493 // Pause in all cases to remove the different behavior based on the decoder |
526 { |
494 // |
527 if ( iVideoPlaybackCtlr->IsPhoneCall() || |
495 iVideoPlaybackCtlr->iState->HandlePause(); |
528 iVideoPlaybackCtlr->IsVideoCall() || |
|
529 ( iVideoPlaybackCtlr->IsKeyLocked() && |
|
530 iVideoPlaybackCtlr->iFileDetails->iVideoEnabled ) ) |
|
531 { |
|
532 iVideoPlaybackCtlr->iState->HandlePause(); |
|
533 } |
|
534 } |
|
535 else |
|
536 { |
|
537 iVideoPlaybackCtlr->iState->HandlePause(); |
|
538 } |
496 } |
539 } |
497 |
540 |
498 //************************************************************************************************// |
541 //************************************************************************************************// |
499 // CMPXProgressiveDLPlaybackMode |
542 // CMPXProgressiveDLPlaybackMode |
500 //************************************************************************************************// |
543 //************************************************************************************************// |