如何使用AVPlayer在Swift中播放YouTube视频?

4

如何使用AVPlayer在Swift中播放YouTube视频?

我正在使用以下代码播放YouTube视频,但是AVPlayer没有任何反应。它保持空白。

var urlstring = "https://www.youtube.com/watch?v=hMba_c-VSkI"
var url = NSURL(string: urlstring)
var av:AVPlayerViewController = segue.destinationViewController as AVPlayerViewController
av.player = AVPlayer(URL: url)
3个回答

3

AVPlayer只能播放电影文件,而YouTube视频在其URL上并未直接公开为电影文件。您可以在自己的WebView中处理YouTube视频。

您可以使用IFrame Player API。


2
您使用的 URL 并非视频 URL,而是嵌入视频的网页的 URL。有一些工具可以帮助您获取实际的视频文件 URL。

谢谢您的回复。 - Sukhdeep Singh Kalra
嵌入的URL也是指向页面/播放器的URL。Youtube并不会轻易地提供实际媒体文件的URL,更不用说它存在于许多格式和大小中。如果你想要使用AVPlayer流式传输视频,你需要有一个实际的媒体文件位置,而不是一个网页。如果你想展示Youtube视频,可能需要查看它们的iOS SDK / API。 - Jeremy Pope

0

您需要使用类似YoutubeParser的工具才能使其正常工作。但请注意,这将违反YouTube的条款和条件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接