【发布时间】:2016-04-25 04:00:24
【问题描述】:
尝试使用远程显示 API 将视图镜像到 chromecast。在 Android 上,它有据可查且易于实现。 iOS 示例/文档不太完整。我知道它只支持 15 fps,但这对我的需求来说很好。
如果有人让它工作,我很想看到一个小的 swift 示例,它展示了如何镜像一个简单的视图。我正在尝试用它来测试它,它在电视上什么都没有显示,并且几秒钟后设备已断开连接。通过阅读文档,当您在获得会话的前 15 秒内没有发送任何内容时,就会发生这种情况。
var testSession: GCKRemoteDisplaySession!
func remoteDisplayChannel(channel: GCKRemoteDisplayChannel,
didBeginSession session: GCKRemoteDisplaySession) {
// Use the session.
testSession = session
frameInput = GCKViewVideoFrameInput(session: testSession)
// any view
frameInput.view = testView
}
【问题讨论】:
-
你能把剩下的代码贴出来吗?我也有同样的情况,但还不能让接收器显示任何内容
-
@kee23 您是否将视图容器(如 UIwindow)设置为可见?我必须将其设置为可见并将其放在电话屏幕之外(例如在-x,-y)。由于远程显示只有 720p 并按比例放大,您可以将其设置为 UIwindow 大小。
-
我只是在初始化一个视图并将其设置为框架输入的视图。事实证明,在显示之前,我必须将其设为当前视图的子视图。因为我正在尝试复制 AirPlay 的行为,所以我会弄乱窗口。谢谢!
-
当你把它设为子视图时,它在手机上是否可见?我很想有一种方法让它在电视上可见,而不必在手机上用 -x -y 坐标使视图脱离屏幕。谷歌对这些东西真的没有任何帮助。文档/示例很糟糕:(
-
不,我仍然需要做同样的“hack”,所以我将它移到屏幕外 UIScreen.mainScreen().bounds 宽度和大小。如果我找到更好的解决方案,我会在这里更新
标签: ios swift chromecast google-cast