YoutubeDirectLinkExtractor 0.3.1

YoutubeDirectLinkExtractor 0.3.1

Andrey Sevrikov维护。



  • Andrey Sevrikov

YoutubeDirectLinkExtractor

Build Status

YoutubeDirectLinkExtractor 允许您获取YouTube视频的直接链接,您可以轻松地与AVPlayer一起使用。它使用类型安全和可选功能来确保在提取链接时的稳定性。尽管存在一些流行的替代方案,不过它们采用的是更简单且风险更高的方法:[YoutubeSourceParserKit](https://github.com/mojilala/YoutubeSourceParserKit),[HCYoutubeParser](https://github.com/hellozimi/HCYoutubeParser)。

安装

CocoaPods

# Podfile
use_frameworks!

target 'YOUR_TARGET_NAME' do
    pod 'YoutubeDirectLinkExtractor'
end

替换YOUR_TARGET_NAME,然后在Podfile目录中输入:

$ pod install

Carthage

将此内容添加到Cartfile中:

github "devandsev/YoutubeDirectLinkExtractor"

Cartfile目录中输入:

$ carthage update

使用示例

这里使用的任何解包都是为了让示例变得更短,不要在实际项目中使用它。

基本使用

let y = YoutubeDirectLinkExtractor()
y.extractInfo(for: .urlString("https://www.youtube.com/watch?v=HsQvAnCGxzY"), success: { info in
    print(info.highestQualityPlayableLink)
}) { error in
    print(error)
}

从ID中提取最低质量的视频链接

let y = YoutubeDirectLinkExtractor()
y.extractInfo(for: .id("HsQvAnCGxzY"), success: { info in
    print(info.lowestQualityPlayableLink)
}) { error in
    print(error)
}

使用提取的视频链接与AVPlayer一起使用

let y = YoutubeDirectLinkExtractor()
y.extractInfo(for: .urlString("https://www.youtube.com/watch?v=HsQvAnCGxzY"), success: { info in
    let player = AVPlayer(url: URL(string: info.highestQualityPlayableLink!)!)
    let playerViewController = AVPlayerViewController()
    playerViewController.player = player

    self.present(playerViewController, animated: true) {
        playerViewController.player!.play()
    }
}) { error in
    print(error)
}

许可

本项目的许可协议为MIT许可 - 有关详细信息,请参阅LICENSE文件。