谷歌电视播放VideoView RTSP的YouTube视频 [英] Google TV VideoView playing YouTube rtsp videos

查看:518
本文介绍了谷歌电视播放VideoView RTSP的YouTube视频的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我通过YouTube API访问视频链接正是如此:

 的JSONObject(videoString).getJSONObject(进入)
                .getJSONObject(传媒集团$)。getJSONArray(媒体内容$)
                .getJSONObject(0).getString(URL);

这给了我一个链接到一个视频,如:

<$p$p><$c$c>rtsp://v7.cache5.c.youtube.com/CiILENy73wIaGQlXg0iXvlQ9SBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp

然后我尝试播放视频:

  mVideoView.setVideoURI(结果);
        最终的MediaController的MediaController =新的MediaController(mActivity);
        mVideoView.setMediaController(的MediaController);
        mVideoView.requestFocus();
        mVideoView.start();

这适用于我的绘图板运行ICS不错,但似乎并没有对GoogleTV的工作,是不是我需要专门为GTV做这种情况?

logcat的输出:

  14 04-30:03:41.212:D / MediaPlayer的(1132):可以在客户端无法打开文件,试图服务器端
04-30 14:03:41.308:D / dalvikvm(1132):GC_CONCURRENT释放862K,13%免费8303K / 9479K,暂停0毫秒+ 2ms的
04-30 14:03:51.920:E / MediaPlayer的(1132):错误(1,-2147483648)
04-30 14:03:51.920:E / MediaPlayer的(1132):错误(1,-2147483648)
04-30 14:03:51.920:D / VideoView(1132):错误:1,-2147483648


解决方案

我验证了VideoView播放YouTube的视频RTSP作品谷歌电视上:

 字符串vURL = \"rtsp://v5.cache1.c.youtube.com/CjYLENy73wIaLQnhycnrJQ8qmRMYESARFEIJbXYtZ29vZ2xlSARSBXdhdGNoYPj_hYjnq6uUTQw=/0/0/0/video.3gp\";    mVideoView =(VideoView)this.findViewById(R.id.myvideoview);
    mVideoView.setVideoURI(Uri.parse(vURL));
    最终的MediaController的MediaController =新的MediaController(本);
    mVideoView.setMediaController(的MediaController);
    mVideoView.requestFocus();
    mVideoView.start();

我唯一改变的事情是分析不同的URL。尝试在code,那么这方面的工作URL。

I am accessing a video link via the YouTube API thusly:

JSONObject(videoString).getJSONObject("entry")
                .getJSONObject("media$group").getJSONArray("media$content")
                .getJSONObject(0).getString("url");

Which gives me a link to a video such as:

rtsp://v7.cache5.c.youtube.com/CiILENy73wIaGQlXg0iXvlQ9SBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp

I then try to play the video with:

        mVideoView.setVideoURI(result);
        final MediaController mediaController = new MediaController(mActivity);
        mVideoView.setMediaController(mediaController);
        mVideoView.requestFocus();
        mVideoView.start();

This works fine on my tablet running ICS but doesn't seem to work on GoogleTV, is there something I need to do specifically for GTV in this instance?

Logcat output:

04-30 14:03:41.212: D/MediaPlayer(1132): Couldn't open file on client side, trying server side
04-30 14:03:41.308: D/dalvikvm(1132): GC_CONCURRENT freed 862K, 13% free 8303K/9479K, paused 0ms+2ms
04-30 14:03:51.920: E/MediaPlayer(1132): error (1, -2147483648)
04-30 14:03:51.920: E/MediaPlayer(1132): Error (1,-2147483648)
04-30 14:03:51.920: D/VideoView(1132): Error: 1,-2147483648

解决方案

I verified that VideoView playing YouTube RTSP video works on Google TV:

    String vURL = "rtsp://v5.cache1.c.youtube.com/CjYLENy73wIaLQnhycnrJQ8qmRMYESARFEIJbXYtZ29vZ2xlSARSBXdhdGNoYPj_hYjnq6uUTQw=/0/0/0/video.3gp";

    mVideoView = (VideoView)this.findViewById(R.id.myvideoview);
    mVideoView.setVideoURI(Uri.parse(vURL));
    final MediaController mediaController = new MediaController(this);
    mVideoView.setMediaController(mediaController);
    mVideoView.requestFocus();
    mVideoView.start();

Only thing I changed was parsing a different URL. Try this working URL in your code then.

这篇关于谷歌电视播放VideoView RTSP的YouTube视频的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆