将网络视频流式传输到Roku

时间:2012-12-08 04:26:14

标签: upnp dlna roku ssdp

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

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

我想知道他们如何在没有Roku作为UPNP或DLNA设备的情况下实现这一目标。

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

1 个答案:

答案 0 :(得分:3)

有关如何从YouTube herehere提取mp4网址的讨论

关于如何在Roku上播放播放风格的视频,您可以使用External Control Protocol启动一个频道,其中包含您要播放的视频的网址,或者在您的频道启动后,我们ECP与roInput组件结合使用,可将URL发送到您的频道。然后,您的频道会将URL发送到视频播放组件,该视频播放组件将从Youtube或您发送的任何来源启动播放。如果您想从设备(Android / IOS)播放URL,则需要在设备上运行Web服务器以向设备提供视频。

第二个帖子中引用了

here is an Open Source YouTube project

如果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上播放视频的例子,最简单的是简单的视频播放器。

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