Chromecast iOS 发件人应用程序,如何循环播放视频?
Posted
技术标签:
【中文标题】Chromecast iOS 发件人应用程序,如何循环播放视频?【英文标题】:Chromecast iOS sender app, how to play video in loop? 【发布时间】:2014-02-13 19:13:50 【问题描述】:我已下载 CastVideos-ios(Google Cast GitHub 下提供的 Chromecast 发件人应用程序)。非常感谢这个应用程序运行良好。 几个问题:
-
如何在 CastVideos-iOS 中“循环”播放视频
在 media.h 下
它使用 MIME 作为 _mimeType =@"video/mp4";
问题:media.h 是否可以处理任何其他 MIME 类型,对 Chromecast html 页面说“text/html”?
【问题讨论】:
【参考方案1】:如果您总是希望视频循环播放,最简单的方法是将loop
添加到接收器上的视频 html 标记中。如果您希望从您的发件人那里控制它,您需要做更多的事情; “循环”功能不会通过 Cast 媒体 api 公开,您需要捕捉视频播放的结束(状态 == IDLE,原因 == 已完成)并再次从位置 0 开始播放。请注意,如果您使用 loop
属性,则 chrome hat 不会“连续”播放媒体存在一个错误;有轻微的延迟(2 秒左右),如果绝对需要解决这个问题,您需要做大量的工作;不过,这可能对音乐更需要(一种解决方法是使用分段音频和 MSE 扩展来一个接一个地播放片段,以确保您获得连续的流,但这不是单行代码更改,并且您的源需要分片等)
对于其他 MIME 类型,您可以在其中放置任何合适的内容,但请记住,如果您使用媒体通道,则需要提供媒体 MIME 类型,如果您有不同的东西,很可能需要编写您的拥有自己的接收器并使用您自己的命名空间将您的消息传达给您的接收器,并且您的接收器应该有能力处理您扔给它的项目。例如,将 HTML 页面的 url 传递给 Styled Receiver 不会产生您想要的结果。
【讨论】:
谢谢阿里,您说“例如,将 HTML 页面的 URL 传递给样式化接收器不会产生您想要的结果。”您的意思是“自定义接收器”是更好的选择?【参考方案2】:可能最简单的方法是编写自己的接收器,或modify ours,并将循环元素添加到标签中。
<video id='vid' loop autoplay />
【讨论】:
太好了,谢谢。我们如何在 Chromecast 设备中部署 Receiver? 我认为现在是您在developers.google.com/cast 阅读有关 Chromecast 开发过程的最佳时机,您的许多问题都会在此得到解答。【参考方案3】:VidCast 现在允许使用 Chrome + 扩展。播放一段视频,您会在右下角看到“Looper”。
【讨论】:
【参考方案4】:Under localplayerviewcontrol.h
else
NSURL *url = self.mediaToPlay.URL;
NSLog(@"Playing movie %@", url);
self.moviePlayer.contentURL = url;
self.moviePlayer.allowsAirPlay = YES;
// self.moviePlayer.controlStyle = MPMovieControlStyleEmbedded;
self.moviePlayer.controlStyle = MPMovieControlStyleNone;
**self.moviePlayer.repeatMode = MPMovieRepeatModeOne;**
self.moviePlayer.scalingMode = MPMovieScalingModeAspectFit;
self.moviePlayer.shouldAutoplay = YES;
当我们改变 self.moviePlayer.repeatMode = MPMovieRepeatModeNone; to self.moviePlayer.repeatMode = MPMovieRepeatModeOne;它在预览中循环播放,当您投射到 Crimecast 时,它不会循环播放。任何解释将不胜感激。
【讨论】:
以上是关于Chromecast iOS 发件人应用程序,如何循环播放视频?的主要内容,如果未能解决你的问题,请参考以下文章
从 Android 发件人应用程序进行 Chromecast 时更新电视上的搜索栏
ios Chromecast 发件人:[NSMutableDictionary gck_loadFromCacheWithName:]:无法识别的选择器发送到类 0x1133f1678
检测我是不是是唯一连接到 Chromecast 设备的 Chromecast 发件人应用