首页 > 解决方案 > 播放 Dash 或 .mpd 视频 react-native(IOS)

问题描述

我正在开发一个具有媒体服务器的应用程序,该媒体服务器为我提供不同视频文件的 URL,这些视频采用dash格式或.mpd格式。我浏览了 react-native-video 并且它已经支持exo-player,我已经测试过并且它可以工作,但另一方面,它使用它不支持 dash 。我花了一些时间在 IOS 端寻找一些解决方案,它也可以支持 React-Native ,但没有找到合适的方法,找到了两个解决方案,但对两者都不起作用。androiddashexo-playerandriodAVPlayerIOSandroidIOS

dash.js - https://github.com/Dash-Industry-Forum/dash.js/wiki

谷歌沙卡播放器 - https://github.com/google/shaka-player

dash.js仅支持webshaka-player具有一些可用的嵌入式解决方案IOS,我必须对其进行桥接,然后才能使用。

我正在寻找一些关于 react-native 的快速解决方法,是否有任何可用的播放器可以dash在两个平台上播放或任何其他适合我的解决方法。

标签: javascriptiosreact-nativempeg-dashreact-native-video

解决方案


您可能没有看到 iOS 中的 DASH 播放器受到您预期的那么多关注的一个关键原因是,当前的苹果 iOS 规则要求您在 iOS 设备上使用 HLS 播放超过 10 分钟的任何视频,前提是您的应用在移动网络上可用,几乎总是这样:

2.5.7 蜂窝网络上超过 10 分钟的视频流内容必须使用 HTTP Live Streaming 并包括基线 192 kbps HTTP Live 流。

https://developer.apple.com/app-store/review/guidelines/

这是目前大多数视频流在 HLS 和 DASH 流中都可用的关键原因。

请注意,CMAF 格式承诺最终允许您通过有效地使分段视频流与不同的 HLS 和 DASH“索引”或“清单”文件相同来引用它们,从而仅存储和服务器内容的单个副本。由于过去加密方式的一些差异,以及所有设备和播放器支持新格式和新同意的加密支持所需的时间,实际上几乎所有加密流都将是 HLS 和 DASH一段时间。

https://developer.apple.com/documentation/http_live_streaming/about_the_common_media_application_format_with_http_live_streaming


推荐阅读