播放 Dash 或 .mpd 视频 react-native(IOS)

Play Dash or .mpd videos react-native(IOS)

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

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

Google 沙卡球员 - https://github.com/google/shaka-player

dash.js 仅支持 web 并且 shaka-playerIOS 上有一些可用的嵌入式解决方案,我必须桥接然后才能使用。

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

您可能没有在 iOS 中看到对 DASH 播放器的关注的一个关键原因是当前的苹果 iOS 规则要求您在 iOS 设备上使用 HLS任何超过 10 分钟的视频,假设您的应用可在移动网络上使用(几乎总是如此):

2.5.7 Video streaming content over a cellular network longer than 10 minutes must use HTTP Live Streaming and include a baseline 192 kbps HTTP Live stream.

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

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

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

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