Just had to create a category for UITabBarController with these methods:
-(BOOL)shouldAutorotate{
return YES;
}
- (NSInteger)supportedInterfaceOrientations
{
return UIInterfaceOrientationMaskPortrait | UIInterfaceOrientationMaskPortraitUpsideDown;
}
Then in my subclassed MPMoviePlayerViewController:
-(BOOL)canBecomeFirstResponder{
return YES;
}
-(BOOL)canResignFirstResponder{
return YES;
}
-(BOOL)shouldAutorotate{
return true;
}
-(NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskAll;
}
Now all the tab views are locked to portrait / upside down portrait while the movie player is free to rotate in any orientation.