iOS 将 MPMoviePlayerController 镜像到电视,全屏播放电视屏幕

iOS Mirroring MPMoviePlayerController to TV with TV screen playback in fullscreen

我有一个使用 MPMoviePlayerController 播放视频(本地存储)的应用程序

    NSString *deviceDir = [[NSUserDefaults standardUserDefaults] stringForKey:WZLDEVICEPATH];
NSString *videopath = [deviceDir stringByAppendingPathComponent:video]
NSURL *url = [NSURL fileURLWithPath:videopath];
player = [[MPMoviePlayerController alloc] initWithContentURL:url];
CGRect viewInsetRect = CGRectInset (playerframe,
                                            0.0,
                                            0.0 );
        /* Inset the movie frame in the parent view frame. */
[[player view] setFrame:viewInsetRect];
[player view].backgroundColor = [UIColor clearColor];
[player view].tag = TAG_VIDEO_PLAYER;
player.movieSourceType = MPMovieSourceTypeFile;
[player prepareToPlay];
[self.view addSubview: [player view]];

现在我需要将应用程序镜像到外部设备,镜像在第二个屏幕(电视)上工作正常,但电视播放的分辨率(宽 x 高)与 iPad,我必须全屏播放电视。有什么办法可以让两台不同分辨率的设备同步播放吗

我已尝试使用不同的 MPMoviePlayerController 实例进行多个 window,但同步播放受到影响。是否有解决这些问题的方法?

[secondScreen  setOverscanCompensation: UIScreenOverscanCompensationInsetApplicationFrame];

使用上述设置,16:9 分辨率的视频开始播放时会填满整个屏幕,4:3 视频的顶部和底部带有黑条,这没问题,因为我们知道要保持纵横比它需要在那里。

请注意,我还注意到,当我们使用 iPad Mini 时,旧的行为仍然会继续出现。