我正在编写一个应用程序来使用流媒体播放 youtube 视频。
第一种方法:
我正在使用 GData API 获取视频的 RTSP URL。这是播放 RTSP url 的代码。
VideoView mVideoView = new VideoView(this);
setContentView(mVideoView);
mVideoView.setVideoURI(Uri.parse("rtsp://rtsp2.youtube.com/CiILENy73wIaGQkDwpjrUxOWQBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp"));
mVideoView.start();
但它在 G1 设备和模拟器上都抛出错误(根据邮件列表,模拟器有一些防火墙问题)这是错误消息
错误/PlayerDriver(35):命令 PLAYER_INIT 完成,但出现错误或信息 PVMFFailure
第二种方法:
一种从http://www.youtube.com/get_video?v= &t=<>&<> 获取3gp 文件路径的 hack 方法 。获取文件路径后,我可以调用 setVideoURI 并且播放正常。但这是实现要求的一种黑客方式。我也检查了 Youtube 应用程序,它也用 hack 方式播放 youtube url。(用 logcat 检查)
我尝试从 VideoView 更改为 MediaPlayer,但错误没有变化。
有没有“干净”的方式来做到这一点?
请让我知道你的想法。