mp4内容无法在提供给三星互联网浏览器的网页中播放

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mp4内容无法在提供给三星互联网浏览器的网页中播放相关的知识,希望对你有一定的参考价值。

我有一个网站能够在除三星互联网浏览器之外的每个浏览器中播放mp4媒体(通过<video>标签和通过DASH),三星互联网浏览器默认出现在三星Galaxy手机上,可能还有很多其他三星设备。

在台式机,iPad,甚至是古老的HP TouchPad平板电脑上,它都能正常工作。使用同一个三星设备(例如Chrome)上的其他浏览器,mp4媒体播放正常,因此它不是android或设备硬件的限制。

我可以使用javascript检测三星浏览器并禁用这些设备上的视频内容,但我真的不想这样做。肯定有一个解决方法。

如果您想在设备上试用,这是一个快速测试。它试图在一个页面上播放3种略有不同类型的mp4媒体:

http://2pic.me/dashtest.html

在我的三星Galaxy S6上,它们都没有在三星互联网浏览器中播放。

我尝试使用video.js,但这并未改变行为。

更新:

自我发布这一年以来,三星终于更新了他们的浏览器,现在mp4内容正常播放,包括自动播放。

答案

我在Samsung Galaxy 7设备上遇到过三星浏览器(当前最新版本:v6.2.01.12)的相同问题。在我的情况下,我使用video.js,并播放HLS。我发现的问题是自动播放不起作用。我的解决方案是尝试以编程方式播放视频,如果检测到故障(承诺拒绝),则显示播放按钮,然后在用户点击中播放视频。这对我有用。它会是这样的:

const video = document.getElementById('my-video');
video.play()
  .catch((err) => {
    if (err.name === 'NotAllowedError') {
      // Display PLAY button with a click event listener and play the video there.
    }
  });

这是一个简化的代码,我做了具体的检查,以查看my-video是否是一个真正的<video>元素,以及video.play()是否返回一个promise和所有基本安全检查(因为这在许多其他浏览器中都受支持)。但是,它显示了处理此自动播放不工作场景的想法。

我希望它有所帮助!

另一答案

三星的移动浏览器当时似乎不支持html5媒体源扩展(MSE) - 这些是DASH播放所必需的。

您可以使用多个在线链接在浏览器上测试MSE支持,例如:

另一答案

它对我很有用,如果需要播放多个视频,你可以使用静音检查:

<pre>
  <video class="video" webkit-playsinline="" playsinline="" muted="" autoplay="" loop="" preload="auto" width="100%" height="auto" controles=""> 
    <source src="wp-content/uploads/talkforweb.com.au.mp4" type="video/mp4">
  </video>
</pre>

以上是关于mp4内容无法在提供给三星互联网浏览器的网页中播放的主要内容,如果未能解决你的问题,请参考以下文章

iOS h5点播播放mp4视频遇到的坑,ios的h5不能播放视频等

Mp4 视频无法在 iPad 中播放

alook浏览器如何支持mp4

HTML5 视频:ffmpeg 编码的 MP4 不在任何浏览器中播放(虽然在 VLC 中播放)

Spring boot视频播放(解决MP4大文件无法播放),整合ffmpeg,用m3u8切片播放。

HTML5 视频无法在三星 S8、三星浏览器上播放