在 iOS 中播放 m3u8 文件

Asm*_*ita 5 ios avplayer swift

我知道这个问题问了很多次但没有得到正确的解决方案,

我有一个 m3u8 文件无法在 AVPlayer 中工作,但是如果我使用互联网上已有的其他 m3u8 文件,并且可以与 AVPlayer 正常工作,这是我的代码

func playVideo() {
    let videoURL = URL(string: "https://architectsummit.s3.us-east-2.amazonaws.com/hls/playlist-with-vtt.m3u8")
    let player = AVPlayer(url: videoURL!)
    var playerViewController = AVPlayerViewController()
    playerViewController.player = player
    DispatchQueue.main.async {
        self.present(playerViewController, animated: true) {
            playerViewController.player!.play()
        }
    }
}      
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,我使用了我们的开发人员提供的 m3u8 文件,但是如果我在上面的代码中使用这个 url ' https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8 ' 视频正在播放什么任何人都可以帮助我的问题。

Vas*_* D. 4

我在浏览器中打开 .m3u8 链接,正在下载的清单是错误的。明显的响应是

#EXTM3U
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=YES,AUTOSELECT=YES,FORCED=NO,LANGUAGE="en",URI=vtt_en.m3u8 
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=864000,SUBTITLES="subs" 
                hls-medium.m3u8
Run Code Online (Sandbox Code Playgroud)

清单的格式必须是这样

服务器 .m3u8 文件不包含任何播放列表

另外,因为您使用亚马逊,所以您可以从亚马逊页面查看一些示例