有关于如何从YouTube here提取MP4 URL和here
在如何做到在Roku上点播型视频播放方面,你可以使用External Control Protocol用的网址推出一个频道讨论您希望播放的视频,或者您的频道启动后,我们将ECP与roInput组件一起发送到您的频道。然后,您的频道会将这些网址发送到一个视频播放组件,该组件会从Youtube或您发送的任何源发起播放。如果您想从设备上播放网址(android/IOS),您需要在设备上运行网络服务器以向设备提供视频。
here is an Open Source YouTube project在第二个线程中引用。
如果YouTube决定您的项目与他们的目标不符,则任何从YouTube播放视频的非官方项目均受YouTube的数字千年版权法删除限制。
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上播放视频的例子,最简单的例子就是simplevideoplayer exmaple。
至于重新UPNP问题的最后一部分,您可以通过端口8060蛮力的telnet到每个IP或者使用SSDP,还记载上述
链接的ECP指南中找到你的局域网Roku公司