4

有谁知道如何从技术上将视频(即 Youtube 视频)发送到 Roku 播放器?有一个“Twonky Beam”应用程序允许流式传输,它似乎做的是将 .mp4 文件发送到 Roku 进行播放。在此处查看演示:http: //gigaom.com/video/youtube-on-roku-twonky-airplay/

这是在没有“Twonky Beam”Roku 应用程序的情况下完成的。看起来像 Roku 原生支持的东西,虽然我找不到任何文档。

我想知道他们是如何在没有 Roku 成为 UPNP 或 DLNA 设备的情况下做到这一点的。

这里的任何见解都会很棒!

4

1 回答 1

3

有关如何从 YouTube此处此处提取 mp4 URL 的讨论

关于如何在 Roku 上进行 airplay 风格的视频播放,您可以使用外部控制协议启动一个带有您希望播放的视频 URL 的频道,或者一旦您的频道启动,我们将 ECP 与roInput 组件将 URL 发送到您的频道。然后,您的频道会将 URL 发送到视频播放组件,该组件将从 Youtube 或您发送的任何来源开始播放。如果您想从您的设备 (android/IOS) 播放 URL,您需要在设备上运行 Web 服务器以向设备提供视频。

这是第二个线程中引用的开源 YouTube 项目。

如果他们认为您的项目不符合他们的目标,则任何播放 YouTube 视频的非官方项目都会被 YouTube 删除 DMCA。

roInput 并没有很好的记录,下面是一个演示 roInput 和启动参数的示例(启动参数是您在 http POST 中包含的关键字):

function main(params as object)

    if params.parameter <> invalid then 
        print "This channnel was launched with Launch Parameters!"
        print params
    else
        print "launched without input parameters"           
    end if

    port=CreateObject("roMessagePort")
    input=createobject("roInput")
    input.setmessageport(port)


    while true
        msg=wait(100,port)
        if type(msg)="roInputEvent" then
          params=msg.getinfo()
          print params
         end if
    end while
end function

因此,如果您想发送多个比特率视频,您的参数可能是“vidurl=http://myserver.com/video300k.mp4&vidurl=http://myserver.com/video600k.mp4”。

RokuSDK 中有很多关于如何在 Roku 上播放视频的示例,最简单的是 simplevideoplayer 示例。

关于 UPNP 问题的最后一部分,您可以通过端口 8060 上的蛮力 telnet 到每个 ip 或使用 SSDP 在您的局域网上找到一个 roku,也记录在上面链接的 ECP 指南中

于 2012-12-08T20:19:40.817 回答