Get IOS HLS manifest through async means#732
Get IOS HLS manifest through async means#732FireMasterK wants to merge 1 commit intoTeamNewPipe:devfrom
Conversation
|
This PR aims at adding another method to get the manifest, so that if the other two break, this might still work? |
|
Yes, except normally, the manifest is only added on live streams, however with this, all videos will have an HLS manifest. |
Stypox
left a comment
There was a problem hiding this comment.
I see. I think this increases data usage, though, without apparent improvents on the client side. I don't fully understand when this would become useful, sorry ;-)
| } | ||
| if (mobileStreamingData != null && hlsManifestUrl.isEmpty()) { |
There was a problem hiding this comment.
These could as well be else ifs, can't they?
| .done()) | ||
| .getBytes(UTF_8); | ||
|
|
||
| CompletableFuture iosTask = CompletableFuture.supplyAsync(() -> { |
There was a problem hiding this comment.
I am not sure this is a good solution: what if the task hasn't finished when getHlsUrl() is called? If the extractor was all built with async means it would integrate good, but in this case there is nothing waiting for the async task to complete. Also, futures are not used anywhere else in the extractor, by doing a fast search.
|
Superseded by #780. |
Although this makes an additional request that's unnecessary for NewPipe, it's done asynchronously so that there's no performance impact.