在Windows Mobile应用程序中播放YouTube视频

时间:2009-05-06 23:39:13

标签: c# c++ windows-mobile compact-framework youtube

我正在制作播放YouTube视频的Windows Mobile 6(或者可能是5)的应用程序。好吧,播放YouTube视频(并控制/查询播放器状态变化,当前帧/时间等)

在网上搜索了一段时间后(以及一些试验),我仍然找不到办法做到这一点。我所知道的选项是:

  • 使用嵌入HTML的YouTube播放器,可通过JavaScript控制。但是,我无法从IE Mobile观看YT视频 - 我收到一条错误消息,上面写着“你需要一个支持Flash Player 8和JavaScript的浏览器”。

  • 托管媒体播放器控件,但WMP拒绝播放YT视频,包括移动格式。

  • 使用DirectShow。我还在调查这个(我以前从未使用COM,更不用说DirectShow了),但我还没有找到支持YouTube's format(s)的解决方案

我宁愿用C#编写这个应用程序,但C ++也可以。

帮助我,StackOverflow的Wise Sages!

3 个答案:

答案 0 :(得分:5)

您还可以将YouTube视频作为MP4获取,希望这会扩展您的播放器选项。您可以查看DirectShow CF的播放功能,或者在您的应用中托管支持MP4或FLV的其他播放器。

尝试通过IE移动设备播放将无法正常工作,因为无法使用支持视频播放功能的Flash插件所需的版本(上次我检查过)。

要让MP4文件向此网址发出请求:

http://www.youtube.com/get_video?video_id=”+ videoID +“& t =”+ token +“& fmt = 18”

要使FLV使用此功能:

http://www.youtube.com/get_video?video_id=”+ videoID +“& t =”+ token

要让令牌调用此方法:

http://www.youtube.com/api2_rest?method=youtube.videos.get_video_token&video_id=”+ videoID

我写了一个应用程序,它可以抓取YouTube视频的播放列表并与我的PocketPC同步,我使用TCPMP和Flash插件来播放视频(从我的应用程序外部)。虽然MP4也在PPC上工作,但我坚持使用FLV,因为当时YouTube上的某些视频无法作为MP4使用。我现在不会关心这个。

可悲的是我的PPC坏了,现在我在iPhone上做了类似的事情,但我不得不完全切换到MP4格式。 VLC在iPhone上的FLV播放对我来说太生涩了。

答案 1 :(得分:1)

The CorePlayer包含一个允许播放Youtube视频的IE移动插件。另一个选项是TCPMP,其中包含一个在Windows Mobile上播放FLV视频的插件,这是openouce。

答案 2 :(得分:0)

您可以使用Google直接或间接创建的Windows Mobile新应用。

New YouTube App for Windows Mobile

Watching Video on Windows Mobile