this question is only one part of my problem. I am implementing iOS6 rotation and orientation support for my existing application.

So I have a ViewController that contains a MPMoviePlayerController embedded in ViewController view ( my application requires it ). User can play the video and see it in the embedded view or click on full screen button using the default player controls and player goes to full screen mode.

Now I have restricted the view controller to only support portrait orientation using the new rotation APIs provided by iOS6.

this works pretty well. the ViewController only supports portrait and user play the movie in embedded view.

Now the problem comes, when User goes into full screen mode. In full screen mode, the movie is keep on rotating, when i rotate the simulator/device. When i rotate the device while movie being played in full screen mode with breakpoints in shouldAutorotate and supportedInterfaceOrientations , it still comes in these both methods which return NO and UIInterfaceOrientationMaskPortrait respectively, but still the movie is rotating ...

Why is this happening? .... this is one part of my question ... the 2nd part is I want the movie to enter in landscape mode when the user goes to full-screen mode. and I want the movie player to lock in landscape mode until user presses the DONE button.

Brilliant, thanks for this. Bit annoying you have to be constantly checking for a video to go full screen, but hey, only way I've found that works. Thanks again.
–
Baza207Sep 20 '13 at 21:15

1

thanks @ChrisBallinger your solution really helps! the only thing I wanted to ask you - how do you force the controller, containing MPMoviePlayerController to redraw itself in portrait, when player is closed in landscape?
–
Kostiantyn SokolinskyiOct 25 '13 at 8:22

this solution that you have mentioned is already implemented and it is not working in iOS6, that was actually the problem .. before iOS6, this solution was working fine. and now with iOS6 i have to implement the new functions to support iOS6 orientation .. i have done that with the help of @Woodenlabs answer. but the problem is that now iOS5 is not working ..
–
g.revolutionNov 28 '12 at 6:19

This consumed me for a while and I got so many different horrifying errors, but eventually I ended up not doing it through MPMoviePlayerController but MPMoviePlayerViewController. I just rotated the self.playerView which is a property, before presenting it. Also I added the NSNotification that will lead back to the main control and the main ViewController after the video finishes. Here's how I went about executing it: