如何从Android应用程序投射youtube视频网址

时间:2015-03-30 13:25:57

标签: android youtube chromecast google-cast

无法通过Chromecast从我的Android应用中投放YouTube视频网址,而我则成功地从我的服务器播放了其他视频内容。

以下是代码:

private void startVideo() {
        MediaMetadata mediaMetadata = new MediaMetadata( MediaMetadata.MEDIA_TYPE_MOVIE );
        mediaMetadata.putString( MediaMetadata.KEY_TITLE, getString( R.string.video_title ) );

        MediaInfo mediaInfo = new MediaInfo.Builder(
                "http://www.youtube.com/watch?v=Zy0cCn7F7mw")
                .setContentType( video/mp4 )
                .setStreamType( MediaInfo.STREAM_TYPE_BUFFERED )
                .setMetadata( mediaMetadata )
                .build();
        try {
            mRemoteMediaPlayer.load( mApiClient, mediaInfo, true )
                    .setResultCallback( new ResultCallback<RemoteMediaPlayer.MediaChannelResult>() {
                        @Override
                        public void onResult( RemoteMediaPlayer.MediaChannelResult mediaChannelResult ) {
                            if( mediaChannelResult.getStatus().isSuccess() ) {
                                mVideoIsLoaded = true;
                                mButton.setText( getString( R.string.pause_video ) );
                            }
                        }
                    } );
        } catch( Exception e ) {
        }
    }  

我尝试使用“video / webM”的MIME类型但没有用。请帮忙。

1 个答案:

答案 0 :(得分:2)

您正在尝试投放一个包含YouTube播放器的HTML网页,而不是实际的视频文件本身,这不会起作用...... MediaInfo的内容必须是直接的视频流的URL。

更重要的是,您无法获得YouTube视频;所有YouTube视频都必须通过YouTube播放器播放(在桌面设备或移动设备上播放)。