如何在Roku频道中传输Youtube视频?

时间:2014-06-19 00:19:10

标签: youtube youtube-api video-encoding youtube-data-api roku

我正在尝试创建一个可以从Youtube频道流式传输视频内容的Roku频道。

我知道有一个Linux命令行程序(youtube-dl)可以让我以编程方式下载我可以通过Youtube API结果获得的Youtube视频ID下载的视频。我对youtube-dl的问题是,我不确定将它与Youtube API结合使用是否符合YouTube的服务条款。 (https://developers.google.com/youtube/terms)。 如果上述法律可以合法完成,那么我的问题就解决了。

我不知道有任何其他方法可以使用Youtube API获取原始mp4文件或任何其他支持的格式(在Roku播放器中),我可以轻松地在我正在构建的Roku频道中流式传输。

此外,Roku不支持Flash或HTML5,所以我无法在网页中真正嵌入Youtube视频网址,但是Youtube有自己的Roku频道,所以我确信有办法做到这一点(也许不是可供开发人员使用)。

我也知道一个名为Plex的应用程序可以让用户将Youtube视频导入他们的Roku。 (这要求用户在其浏览器中安装插件) https://www.youtube.com/watch?v=k9OaezB3zas。 (我不确定Youtube视频的内容是否正由Plex复制,或者是否直接从Youtube流式播放)。

Roku支持的媒体类型是:

视频 - MKV(H.264),MP4(H.264),MOV(H.264),WMV(仅限VC-1,固件3.1) 音乐 - AAC,MP3,WMA,FLAC(固件5.3及更高版本),WAV(固件5.3及更高版本) 照片 - JPG,PNG,GIF(非动画)

感谢。

1 个答案:

答案 0 :(得分:3)

你的假设是正确的;从YouTube下载视频,然后通过Roku频道自行重新流式传输视频将违反YouTube ToS(并且可能也会受到版权侵犯,具体取决于内容,内容所有者,您的位置等)。有许多Roku频道已经做到这一点,他们都因违反ToS而被凿沉。

你也是正确的,YouTube API不提供对mp4文件的直接访问,允许你直接从Roku客户端向媒体资产代理流(YouTube的Roku频道没有这个限制,因为工程师不会通过API,因为他们是YouTube ......)。

由于Roku不支持Flash或HTML5,因此也无法嵌入YouTube视频。 Plex的YouTube频道不会下载或导入YouTube视频;相反,它会创建基于元数据的播放列表,然后在需要时嵌入视频(plex媒体服务器支持基于HTML5的视频应用,包括iframe嵌入)。

虽然这不是您问题的真正解决方案,但希望确认至少会让您考虑创建媒体应用的新方法。有些人可能会认为这是对抗Roku以及更开放(相对而言)平台(如Chromecast)的有力论据......基本上,Roku要求您使用BrightScript仅从您的服务器流式传输媒体,而Chromecast允许您使用任何应用程序构建任何应用程序开放媒体API,以便在标准HTML5 / JS / CSS应用程序中流式传输或嵌入任何内容。