2012-03-30 121 views
4

我试图使用YouTube视频作为webgl纹理,此刻因为几个问题无法使其工作。有没有人有这样做的经验,并可以指出我在正确的方向/告诉我它不可能?使用YouTube视频获取webgl纹理?

我下面此处介绍的方法:https://developer.mozilla.org/en/webgl/animating_textures_in_webgl那里基本上你只能从一HTML5视频元素的质感,并保持阅读框到您的场景中使用的材质。这对于普通视频非常有效,但YouTube只会通过iframe提供(AFAIK)html5视频,这显然是在他们的域名上,而不是我的域名。这意味着很难查询视频元素的iframe作为纹理使用(我的代理快速尝试不起作用,因为iframe src使用相对URL,尽管我没有彻底尝试)。我也尝试使用mediaElement.js将元素封装为html5视频(如:http://mediaelementjs.com/examples/?name=youtube),但我很快意识到这仅仅是一个门面,所以并不真正用作纹理的输入(至少我认为这是问题!) 。

我不想做任何事情,包括下载和重新编码YT视频或任何沿着这些线,因为我需要的东西可以编程方式完成,虽然客户端或服务器端都很好。

我很确定问题只是掌握了一个包含YouTube视频的视频元素,但我对webgl非常陌生,对webgl中的视频完全陌生,因此对任何想法都开放!感谢所有的帮助 - 谢谢!

回答

1

OK我最终模拟了YT嵌入iframe的功能,从iframe检索的URL中创建一个视频元素,然后通过画布引起视频元素来解决NPOT纹理问题。它有效,但不是很快/理想,所以如果有其他人应该有更好的想法,我很乐意听到他们。

+0

我很想了解您所做的工作。你可以给我发电子邮件在我的个人资料的电子邮件地址? – RobotCaleb 2012-07-23 05:24:43

+3

嗨@RobotCaleb - 我想与更多的人分享这个如果可能的话,所以写了一篇文章。你可以在这里阅读:http://dontglobalmebro.ruhoh.com/webgl/displaying-youtube-video-in-webgl/。如果您有任何问题或反馈,请告诉我,我的twitter处理也在那里。对于延迟抱歉,我到现在还没有博客! – user82116 2012-08-03 02:49:22

+0

哦,太好了。谢谢!我会检查出来的。 – RobotCaleb 2012-08-08 03:11:47