在WP7应用中播放Youtube视频是否可行?

13

是否可以在wp7应用程序中播放youtube视频?我猜想您可以通过从youtube api检索视频文件,并使用媒体元素来播放它? 如果有任何建议、技巧或资源,将不胜感激。

3个回答

15

这是一个非常好的问题,涉及到YouTube的商业模式、YouTube的API和WP7集成。

简短的回答是:在WP7中播放低质量视频可能有一定限制。

首先,你应该问自己一个问题:“Google是什么?”答案是“一个广告投放公司”。Google和YouTube绝大部分的收入都来自广告。如果你将YouTube的内容放在没有任何YouTube品牌或广告的网站/应用上展示,那么这会对他们的财务商业模式产生不利影响。

其次,你应该问自己一个问题:“iPhone如何显示YouTube视频? WP7呢?又或者说YouTube网站本身呢?”这涉及到YouTube的媒体传递系统的核心。YouTube公开展示其网站的多种格式。例如,格式#1是H263,格式#6是MPEG,格式#5是SWF/FLV内容。你可以在他们的官方文档中了解更多关于YouTube格式的信息。

现在,回答你的问题。YouTube API只针对未经授权的第三方公开展示缩略图大小的视频,并且这些视频可能会在WP7应用内显示。然而,如果将这些视频放大超过WP7屏幕分辨率的1/4,视频质量将非常差。

建议你阅读GData YouTube开发人员指南了解API的信息。我将快速介绍如何获取这些公共视频。就个人而言,我没有成功地让这些3GP视频在WP7上运行。

  1. 打开顶级视频的GData Feed:http://gdata.youtube.com/feeds/api/standardfeeds/top_rated

  2. 从 < entry /> 元素中找到 < id /> 元素,其中应该有一个链接到单个视频 GData Feed。我选择了这一个:http://gdata.youtube.com/feeds/api/videos/dMH0bHeiRNg

  3. 找到具有 yt:format 属性的 < media:content /> 元素。

    < media:content url='http://www.youtube.com/v/dMH0bHeiRNg?f=videos&app=youtube_gdata' type='application/x-shockwave-flash' medium='video' isDefault='true' expression='full' duration='360' yt:format='5'/>

    < media:content url='rtsp://v5.cache7.c.youtube.com/CiILENy73wIaGQnYRKJ3bPTBdBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp' type='video/3gpp' medium='video' expression='full' duration='360' yt:format='1'/>

    < media:content url='rtsp://v3.cache8.c.youtube.com/CiILENy73wIaGQnYRKJ3bPTBdBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp' type='video/3gpp' medium='video' expression='full' duration='360' yt:format='6'/>

  4. 打开“VLC播放器”,使用格式 #6 的URL,您应该能看到RTSP流播放器。

** 整篇文章应视为“据我所知”。这是我从官方YouTube文档和论坛中获得的所有知识。


很好地详细介绍了该主题。 - Mick N
1
毋庸置疑,根据 YouTube 的服务条款,“除了使用服务本身的视频播放页面、可嵌入播放器或者 YouTube 明确授权的其他方式外,您同意不通过任何技术或手段访问内容。” 虽然这并非不可能,但这样做可能会带来法律后果。 - Den
1
Dennis,这是官方的Google YouTube GData API,其在开发指南中有详细记录。毋庸置疑,你所说的是错误的事实。 - JustinAngel

5
Windows Phone 开发者常见问题解答中引用:

我该如何在我的应用程序中播放Youtube视频?

使用WebBrowserTask,在浏览器中打开目标URL;如果已安装Youtube应用,则会播放视频,如果未安装,则提示用户安装后再播放。


1

不可以通过标准API方法来播放。类似的问题已经在before中提出。WP7目前没有标准的媒体层用于YouTube视频,您需要YouTube应用程序才能播放这些视频。除非您想在低级别上使用YouTube使用的编码格式,但是再次提醒 - 您必须实现解码服务。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接