--- a/mpx/playbackframework/playbackengine/src/mpxplaybackinitializer.cpp Fri Mar 12 15:44:36 2010 +0200
+++ b/mpx/playbackframework/playbackengine/src/mpxplaybackinitializer.cpp Mon Mar 15 12:42:31 2010 +0200
@@ -424,7 +424,8 @@
{
if ( iMedia )
{
- iEngine.RestorePlaybackPositionAndStateL( *iMedia );
+ iEngine.RestorePlaybackPositionL( *iMedia );
+ iEngine.RestorePlaybackStateL();
}
//
// Set plug-in handler
@@ -620,13 +621,8 @@
{
iHandler->SelectPlayersL(t);
}
- }
- TInt accessPoint = 0;
- if ( aMedia.IsSupported(KMPXMediaGeneralExtAccessPoint) )
- {
- accessPoint = aMedia.ValueTObjectL<TInt>( KMPXMediaGeneralExtAccessPoint );
- MPX_DEBUG2("CMPXPlaybackInitializer::InitL accessPoint %d", accessPoint );
- }
+ }
+
HBufC8* mimeType =
MPXUser::Alloc8L(aMedia.ValueText(KMPXMediaGeneralMimeType));
CleanupStack::PushL(mimeType);
@@ -635,7 +631,7 @@
// Plugin handler guarantee to choose a plugin
// In case there is file open in the audio controller
iHandler->Plugin()->CommandL(EPbCmdClose);
- InitL(uri, *mimeType, accessPoint);
+ InitL(uri, *mimeType);
CleanupStack::PopAndDestroy(mimeType);
}
else // No URI
@@ -840,7 +836,7 @@
// Initialize.
// ----------------------------------------------------------------------------
//
-void CMPXPlaybackInitializer::InitL(const TDesC& aUri, const TDesC8& aType, TInt aAccessPoint)
+void CMPXPlaybackInitializer::InitL(const TDesC& aUri, const TDesC8& aType )
{
MPX_FUNC("CMPXPlaybackInitializer::InitL");
CMPXPlaybackPlugin* p = iHandler->Plugin();
@@ -868,14 +864,29 @@
// if cast was successful, then init streaming with access point
if (plugin)
- {
- if ( aAccessPoint )
+ {
+ TInt accessPoint = 0;
+ if ( iMedia->IsSupported(KMPXMediaGeneralExtAccessPoint) )
{
- plugin->InitStreamingL( aUri, aType, aAccessPoint );
+ accessPoint = iMedia->ValueTObjectL<TInt>( KMPXMediaGeneralExtAccessPoint );
+ MPX_DEBUG2("CMPXPlaybackInitializer::InitL accessPoint %d", accessPoint );
+ }
+
+ TInt position = 0;
+ if (iMedia->IsSupported(KMPXMediaGeneralLastPlaybackPosition))
+ {
+ position = iMedia->ValueTObjectL<TInt>( KMPXMediaGeneralLastPlaybackPosition );
+ MPX_DEBUG2("CMPXPlaybackInitializer::InitL position %d", position );
+ }
+
+
+ if ( accessPoint )
+ {
+ plugin->InitStreamingL( aUri, aType, accessPoint, position );
}
else
{
- plugin->InitialiseL(aUri);
+ plugin->InitialiseWithPositionL(aUri, position);
}
}
else