Set ContentURL MPMoviePlayerController twice

I create an inline MPMoviePlayerController this way inside my loadView method:

self.moviePlayerController = [[[MPMoviePlayerController alloc] init] autorelease];

// add to view, setup moviePlayerController view frame, etc

And I can later download the movie that the user selects this way:

NSURL *fileUrl = ...
self.moviePlayerController.contentURL = fileUrl;

and everything works fine.

However, if I set contentURL again:

NSURL * fileUrl2 = ... self.moviePlayerController.contentURL = fileUrl2;

This does not work even if fileUrl2 == fileUrl1.

When I change the contentURL, I get the following playbackState and loadState:

After the first setContentURL:

loadState == playable | playthroughOK

playbackState == playback

After my second setContentURL:

playbackState == stopped

loadState == unknown

I can, of course, create a new MPMoviePlayerController for each movie, but I want this problem not to indicate a big problem.

Thank!

+3
2

. contentURL, :

self.moviePlayerController.contentURL = fileUrl;
[self.moviePlayerController play];

, . ,

-[MPMoviePlayerController play]

-[MPMoviePlayerController prepareToPlay]

. -, prepareToPlay . , setContentURL.

, setContentURL , .

self.moviePlayerController.contentURL = fileUrl;
[self.moviePlayerController prepareToPlay];
+9

contentURL :

, , . .

, , , . MPMoviePlayerController, errorLog.

+1

All Articles