我正在Unity中构建一个可以通过AVPro视频播放器播放Twitch VOD的应用程序。使用Twitch的V5 API,我最多可以检索给定频道(source)的100个最新VOD。

我已经成功地做到了;但是,JSON对象包含的URL带有指向VOD的链接-如果您访问某个频道并单击已存档的广播,就会看到相同的URL-但没有指向视频文件本身的链接。我需要一个视频文件才能链接到AVPro才能播放VOD,并且已经在整个互联网上以及通过Twitch的API进行了搜索,但是找不到找到与VOD对应的视频文件的URL的方法。我不想使用第三方服务下载VOD,因为这将占用用户过多的内存。注意,我正在使用Unity的WWW类在C#中获取此数据。

我有什么想念的吗,还是根本不可能呢?非常感谢所有帮助!

最佳答案

通过遍历Twitch Leecher的源代码,我发现了以下两个API调用:

1. https://api.twitch.tv/api/vods/{0}/access_token
2. https://usher.ttvnw.net/vod/{0}?nauthsig={1}&nauth={2}&allow_source=true&player=twitchweb&allow_spectre=true&allow_audio_only=true


第一个API接受{0}的VOD的视频ID,并返回令牌和签名。对于第二个API,再次将视频ID用于{0},将签名用于{1},并将整个令牌用于{2}。

完成之后,我得到了一个字符串,其中包含对应于不同质量的VOD的各种源URL。然后,只需解析结果并获取我想要的链接就可以了!

08-07 17:12