2012-04-30 117 views
1

我通過YouTube API訪問視頻鏈接正是如此:谷歌電視VideoView播放的YouTube RTSP視頻

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

,給了我一個鏈接到一個視頻如:

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

然後我試着播放視頻:

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

這對我的平板電腦運行ICS,但似乎沒有工作在谷歌電視,在這種情況下,我需要專門爲GTV做些什麼?

logcat的輸出:

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 

回答

2

我驗證了VideoView播放YouTube的視頻RTSP作品谷歌電視上:

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(); 

我改變了唯一的事情就是解析不同的URL。然後在您的代碼中嘗試此工作網址。

+0

有趣的是,我試過這個URL,並且在Logitech Revue上出現同樣的錯誤(對不起,這段視頻無法播放)。 – powerj1984

+2

我們知道這個問題,希望能儘快解決。 –