2

我正在开发一个 iOS 应用程序,通过 AirPlay 在 Apple TV 上显示视频,例如足球比赛。我想在播放视频时在大屏幕上显示其他信息,例如播放器统计信息。

我知道 Redfin 方法,他们要求用户首先打开 AirPlay 镜像。不幸的是,这对我们来说是不可接受的。我们希望用户能够清楚地了解如何显示视频。

我们目前在显示视频之前展示了一个 AirPlay Route 按钮,以允许用户使用以下代码进行设置。

self.airPlayPicker = [[MPVolumeView alloc] initWithFrame:CGRectMake(0, 0, 50, 50)];
self.airPlayPicker.showsVolumeSlider = NO;
self.airPlayPicker.showsRouteButton = YES;
[self.view addSubview:self.airPlayPicker];

当周围有 Apple TV 时,Route 按钮将显示,允许用户打开它。然后我们使用 MPMoviePlayerController 呈现视频。

当打开 AirPlay 并播放视频时,在代码中,我只看到一个 UIScreen,但有两个 UIWindows。但两个 UIWindows 的尺寸都与 iPhone 相同。当我向任一 UIWindow 添加子视图时,子视图总是显示在 iPhone 上。

有没有人想出如何在 Apple TV 上的视频上显示叠加层?我什至如何找到托管视频的视图对象?

我知道 MPMoviePlayerController 是建立在 AVPlayer 之上的。使用 AVPlayer 会让我们更好地控制 UI 吗?

4

1 回答 1

1

据我所知,这应该是不可能的。使用不镜像的 AirPlay 时,只会将视频的 URL 发送到 Apple TV。然后由 Apple TV 来实际播放媒体。

镜像是实现它的方法。

于 2013-08-23T18:59:18.387 回答