从Android应用程序调用谷歌Chrome中的自定义媒体播放器



我们正试图在Chrome cast上调用一个示例自定义媒体播放器HTML 5应用程序,该应用程序支持来自Android(应用程序)设备的自适应比特率流协议,如MPEG-DASH、HLS等

接收器应用程序是在我们的服务器上运行的java脚本&将在铬铸设备上推出

它需要Chromecast媒体播放器Java脚本库&我们已经在接收器应用程序中使用了它。目前,我们的发件人应用程序是安卓应用程序&只能调用只能播放MP4文件的"远程媒体播放器"。

但我们想调用播放器,它可以播放自适应比特率流协议。有一个调用自定义媒体播放器的例子,但只有在支持Chrome cast扩展的情况下,才能从桌面Sender应用程序上的Chrome浏览器启动样品如下:

根据以下更新,目前安卓系统上的Chrome不支持扩展。

Chrome for Android支持应用程序和扩展吗?Android版Chrome目前不支持Chrome应用程序和扩展。我们目前没有宣布的计划

我们尝试在默认的RemoteMediaPlayer上播放MPEG-DASH,即使用加载APIhttps://developer.android.com/reference/com/google/android/gms/cast/RemoteMediaPlayer.html

但是,即使在正确指定Mimetype之后,我们也无法在默认的RemoteMediaPlayer中播放链接。例如:http://commondatastorage.googleapis.com/gtv-videos-bucket/dash/BigBuckBunny/bunny_10s/BigBuckBunny_10s_isoffmain_url_relative_DIS_23009_1_v_2_1c2_2011_08_30.mpd

因此,我们只是尝试使用示例"CastMediaPlayerStreamingDRM"中给出的自定义媒体播放器但是,如果没有Sender应用程序的会话,我们就无法调用以下函数。我们找不到可以调用以下自定义媒体播放器功能的Cast SDK API。

mediaManager.onLoad = function(event) {
  mediaHost = new cast.player.api.Host({
    'mediaElement': mediaElement,
    'url': url
  });
}

我们只能通过Java脚本中的会话API chrome.cast.session来实现这一点;为此,我们需要在浏览器上运行Chromecast扩展。

session.loadMedia(request,
    onMediaDiscovered.bind(this, 'loadMedia'),
    onMediaError);

由于Android上的Chrome不支持扩展,我们正在检查如何加载自定义媒体接收器。

因此,请建议从Android设备启动自定义媒体播放器的任何替代方法。

您可以使用本机Android或iOS SDK在chromecast上启动应用程序;做到这一点所需的所有api都在那里,以及从这两个平台向chromecast发送自适应或非自适应媒体所需的全部api也在那里;播放自适应媒体与不播放自适应媒体对接收者应用程序而不是发送者来说更是一个问题,因此chrome、Android和iOS在这方面都可以做同样的事情。

最新更新