我正在开发一个应用程序,我将在其中使用 ChromeCast 设备连接到电视,为此我在我的项目中使用了 GoogleCast FrameWork,
当我尝试使用以下语句访问视频的大概流位置时遇到问题,
GCKMediaControlChannel *mediaControlChannel = [[GCKMediaControlChannel 分配] 初始化]; NSLog(@"Approximate stream position is %f",mediaControlChannel.approximateStreamPosition);
但这导致了 20 秒的时间差。
我尝试了以下语句来获取确切的流位置,
GCKMediaStatus *deviceStatus = [[GCKMediaStatus alloc] initWithSessionID:sessionId mediaInformation:self.mediaInformation];
NSLog(@"Stream Position %f", self.deviceStatus.streamPosition);
由于上述方法有两个参数,我们需要将 session 作为整数发送,但我们将 session ID 作为字符串字母数字获取,并将其转换为整数后得到 0。
任何人都可以帮助我获取整数形式的 session ID,或者建议我使用任何不同的方法获取当前流位置。
最佳答案
我使用以下代码检索当前正在转换的视频的流位置,它非常准确!我们在项目中使用的 Google Cast SDK 版本是 3.5.3。
let position = Double(GCKCastContext.sharedInstance().sessionManager.currentSession!.remoteMediaClient!.mediaStatus!.streamPosition)
希望对您有所帮助!
关于ios - 如何在 iOS 中使用 GoogleCast frameWork 获取当前流位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27038375/