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

时间:2020-03-06 13:24:19

标签: javascript ios react-native mpeg-dash react-native-video

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

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

Google Shaka Player-https://github.com/google/shaka-player

dash.js仅支持web,而shaka-player仅在IOS上有一些嵌入式解决方案,我必须将其桥接后才能使用。

我正在寻找关于react-native的快速解决方法,请问有没有可用的播放器可以在两个平台上玩dash或任何其他对我有用的解决方法。

1 个答案:

答案 0 :(得分:1)

您可能不会像预期的那样在iOS上看到DASH播放器的注意的一个关键原因是,如果您的应用在移动网络上可用,则当前的Apple 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