在iphone中管理hls本地行为?

问题描述:

我已经创建了一个视频服务服务,在我的应用程序中使用hls格式的视频和播放使用流式播放器的视频。在iphone中管理hls本地行为?

我面临的问题是,在我的m3u8文件中,我有这个网址为ts文件的第一部分。

http://****/videos/2017/9/39594b34-e06e-415b-a176-c6971fe28190/b7f1d54e-4543-4852-9fbe-75693c2bfe58-3600.ts 

这里是的Flowplayer我的HTML配置

<div id="hlsjsvod"> 

这里是我的Flowplayer

flowplayer("#hlsjsvod", { 
        splash: true, 
        aspectRatio: "16:9", 
        clip: { 
         // enable hlsjs in desktop Safari for manual quality selection 
         // CAVEAT: may cause decoding problems with some streams! 
         hlsjs: { 
          safari: true, 
          xhrSetup: function (xhr, url) { 
           url.replace("http","https") 
          } 
         }, 
         sources: [ 
          { 
           type: "application/x-mpegurl", 
           src: "http://****/videos/2017/8/a9b68f36-c229-47c9-850d-0af298692693/348b790b-0cc1-4817-b846-acef88f1067b-master.m3u8" 
          } 
         ] 
        } 
       }); 

Javascript配置什么是希望能够做的是改变HTTP的TS文件到http;

正如你可以在上面的代码中看到的,我可以通过xhrsetup进行更改。

每件事情都很好,直到我想要访问ios,iphones中的xhrsetup。因为iphone使用本机hls,它不会通过我在ios中的xhrsetup代码,我希望能够在ios中做到这一点。

确实有任何解决方法吗?

这根本不可能。

的Safari在Mac OS提供了MediaSource Extension (MSE)哪些球员像hls.jsBitmovin可以使用使用Javascript玩HLS,而不是Safari浏览器的原生HLS播放。

iOS上的Safari does not provide the MSE。因此,有史以来HLS播放器必须使用Safari的本地HLS播放功能,而这种播放功能根本无法提供干扰请求的方式。