gpt4 book ai didi

ios - iOS/Safari 上的 HLS 视频流

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:54:33 24 4
gpt4 key购买 nike

我正在尝试使用 Aframe 在 safari iOS 上流式传输 hls,它的引擎盖下有 three.js。但是视频显示黑屏,只播放音频。视频 src 的类型为 .m3u8。我试图阅读很多相关的帖子,但似乎没有一个有合适的解决方案。让 HLS 和 WebGL 在 iOS 上运行是不是一厢情愿?如果没有,请有人帮我解决问题。

关于 github 上可用的问题的几个讨论:

最佳答案

针对您的问题:

Is it some kind of a wishful thinking getting HLS & WebGL to play on iOS?

是的,一厢情愿:-)问题/问题/错误出在苹果公司,而不是任何图书馆。不管什么JS库,A-Frame , Three等,这在 iOS 中的任何浏览器(iOS 上的所有浏览器基本上都是 Safari 的包装器)和 OSX Safari 上始终是一个问题。

问题是这样的(根据我的理解):

  1. 在 WebGL 历史上的某个时刻,对跨源内容(视频、图像等)存在限制。我找不到这方面的来源,但我记得在某个地方读过它,所以这可能不是 100% 准确。
  2. 最近(几年前?2015 年?)所有主要浏览器都得出结论,在 WebGL 中使用跨源媒体是安全的。除了 Apple/Safari。
  3. 对于大多数浏览器,crossorigin <video> 上的属性元素可以表示此内容来自另一个来源。在 Safari 中,无论出于何种原因,此属性都被忽略或未实现。事实上,它看起来像 Safari 基于的 WebKit,fixed this as far back as 2015 ,但 Apple 仍然没有实现它。连苹果refuses to comment on any progress .

可能的解决方法:

  1. Safari 上的 WebGL 使用渐进式(不是像 HLS/Dash 这样的流).mp4视频。在 iOS/Safari 中查看 Facebook(网站,而非应用程序)上的任何 360 度全景视频,您会注意到来源是 .mp4。 .
  2. 使用 HLS(或 Dash),但不使用 WebGL 播放视频。在 YouTube(网站,而非应用程序)上查看任何 360 度全景视频,我认为他们正在使用 HLS 或 Dash,但重点是他们视频,而 Facebook 不这样做。

这是真正问题的一个很好的起点:link .

这是另一个详细的线程:link .

关于ios - iOS/Safari 上的 HLS 视频流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43287226/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com