简体   繁体   English

Android(不是Nexus)上的Brightcove HTML5视频

[英]Brightcove HTML5 video on Android (other than Nexus)

This is related to embedded videos, not the SDK. 这与嵌入式视频有关,而不与SDK有关。

The HTML5 videos work fine on desktop and iOS, but on Android they only play on the Nexus phones and tablets. HTML5视频可以在台式机和iOS上正常运行,但在Android上只能在Nexus手机和平板电脑上播放。 Unfortunately, when tested on other devices (I've tried Galaxy and Note) I'm getting the following error: 不幸的是,当在其他设备上进行测试(我尝试过Galaxy和Note)时,出现以下错误:

The video you are trying to watch is currently unavailable. Please check back soon.

I tried both mp4 and mov formats, retranscoded the videos in VBR and CB bitrate type. 我尝试了mp4和mov格式,然后将视频重新转换为VBR和CB比特率类型。 Nothing works. 没用。 I know that is should work because the test page ( http://support.brightcove.com/en/video-cloud/docs/video-test-html-5 ) plays fine on all devices. 我知道这应该可行,因为测试页( http://support.brightcove.com/en/video-cloud/docs/video-test-html-5 )在所有设备上均可正常运行。

The publishing code looks like this: 发布代码如下所示:

<object id="xxx" class="BrightcoveExperience">
  <param name="bgcolor" value="#FFFFFF" />
  <param name="width" value="480" />
  <param name="height" value="270" />
  <param name="playerID" value="xxx" />
  <param name="playerKey" value="xxx" />
  <param name="isVid" value="true" />
  <param name="isUI" value="true" />
  <param name="dynamicStreaming" value="true" />

  <param name="@videoPlayer" value="xxx" />

  <param name="includeAPI" value="true" />
  <param name="templateLoadHandler" value="BCLS.onTemplateLoad" />
  <param name="templateReadyHandler" value="BCLS.onTemplateReady" /> 
</object>

Any thoughts? 有什么想法吗?

I've summed up the content of the Android playback tickets I've raised with Brightcove, into something that might be considered an answer: 我已经总结了使用Brightcove提出的Android播放票证的内容,可以认为是答案:

Changing the rendition selection behavior for Android is going to be quite involved. 更改Android的演绎选择行为将非常繁琐。

If you wish, you could use a player plugin for the time being to force all 4.x versions of Android to play HLS. 如果愿意,您可以暂时使用播放器插件来强制所有4.x版本的Android播放HLS。 The code at the link below uses the API to update the loaded video to use its HLS URL if available. 下方链接中的代码使用API​​更新加载的视频,以使用其HLS URL(如果有)。 https://gist.github.com/anonymous/29e94d6992d9105c7600 If you choose to use this you will encounter problems with Android < 4.2 when playing HLS, which is why the player prefers MP4 to HLS. https://gist.github.com/anonymous/29e94d6992d9105c7600如果您选择使用此功能,则在播放HLS时会遇到Android <4.2的问题,这就是播放器偏爱MP4而不是HLS的原因。 The most problematic are that you can't seek, and playback stops and you'll get an error when trying to switch to fullscreen. 最有问题的是您无法搜索,并且播放会停止,并且在尝试切换到全屏模式时会收到错误消息。 There's nothing we can do in the browser to workaround these unfortunately -- these are problems with the device's HLS support. 不幸的是,我们无法在浏览器中解决这些问题-这些是设备的HLS支持问题。

There is no possibility of getting good playback on Android < 4.2 without Flash in the browser if you're using DRM. 如果您使用的是DRM,则无法在浏览器中在没有Flash的Android <4.2上获得良好的播放效果。 We can't improve Android's capability to play HLS in the browser, and there's no way to make an Android browser play DRM-encrypted MP4 renditions. 我们无法提高Android在浏览器中播放HLS的能力,也无法使Android浏览器播放DRM加密的MP4格式。

Android can play the unencrypted MP4 renditions, but if DRM is a must, you could consider the option of using a native app. Android可以播放未加密的MP4副本,但是如果必须使用DRM,则可以考虑使用本机应用程序的选项。 Our Android SDK can play Widevine-encrypted videos, and there will be a version available in the future that uses a custom library to play HLS to overcome the shortcomings of Android's native HLS playback (in the app). 我们的Android SDK可以播放Widevine加密的视频,并且将来会有可用的版本,该版本使用自定义库播放HLS,以克服Android原生HLS播放(在应用程序中)的缺点。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM